"""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,
) for {0},) para {0},
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,
A {0} exists between {1} and {2} (,A {0} existe entre {1} y {2} (,
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,
Absent,Ausente,
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,
Accrual Journal Entry for salaries from {0} to {1},Entrada de Diario de Acumulación para Salarios de {0} a {1},
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 Row,Añadir Fila,
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 to Details,Añadir a Detalles,
Add/Remove Recipients,Agregar / Eliminar destinatarios,
Added,Agregado,
Added to details,Agregado a los Detalles,
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 Jobs,Todos los trabajos,
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,
Allocated Leaves,Vacaciones Asignadas,
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,
Analytics,Analítica,
Annual Billing: {0},Facturación anual: {0},
Annual Salary,Salario anual,
Anonymous,Anónimo,
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,
Applicant,Solicitante,
Applicant Type,Tipo de solicitante,
Application of Funds (Assets),UTILIZACIÓN DE FONDOS (ACTIVOS),
Application period cannot be across two allocation records,El período de solicitud no puede estar en dos registros de asignación,
Application period cannot be outside leave allocation period,Período de aplicación no puede ser período de asignación licencia fuera,
Applied,Aplicado,
Apply Now,Aplicar Ahora,
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,
Apprentice,Aprendiz,
Approval Status,Estado de Aprobación,
Approval Status must be 'Approved' or 'Rejected',"El estado de esta solicitud debe ser ""Aprobado"" o ""Rechazado""",
Approve,Aprobar,
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),
As per your assigned Salary Structure you cannot apply for benefits,De acuerdo con su estructura salarial asignada no puede solicitar beneficios,
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,Asignar,
Assign Salary Structure,Asignar estructura salarial,
Assign To,Asignar a,
Assign to Employees,Asignar a Empleados,
Assigning Structures...,Asignando Estructuras ...,
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,Asistencia,
Attendance From Date and Attendance To Date is mandatory,Asistencia 'Desde fecha' y 'Hasta fecha' son obligatorias,
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 for employee {0} is already marked for this day,La asistencia para el empleado {0} ya está marcada para el día de hoy,
Attendance has been marked successfully.,La asistencia ha sido marcada con éxito.,
Attendance not submitted for {0} as it is a Holiday.,Asistencia no enviada para {0} ya que es un feriado.,
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,
Author,Autor,
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 Leaves,Licencias Disponibles,
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 Entries,Asientos Bancarios,
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,Base,
Base URL,URL Base,
Based On,Basado en,
Based On Payment Terms,Basada en Término de Pago,
Basic,Base,
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,
Beginner,Principiante,
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,Facturación,
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,
Birthday Reminder,Recordatorio de cumpleaños,
Black,Negro,
Blanket Orders from Costumers.,Órdenes generales de los clientes.,
Block Invoice,Factura en Bloque,
Boms,Boms,
Bonus Payment Date cannot be a past date,La fecha de pago de la bonificación no puede ser una fecha pasada,
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,
Calls,Llamadas,
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 find active Leave Period,No se puede encontrar el Período de permiso activo,
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,
Casual Leave,Permiso ocacional,
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,
Claimed Amount,Cantidad reclamada,
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 Off,Compensatorio,
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 Details,Detalles de contacto,
Contact Number,Número de 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,Curso,
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 Disbursement Entry,Crear entrada de desembolso,
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 Salary Slip,Crear nómina salarial,
Create Salary Slips,Crear Recibos de Sueldo,
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 Payment Entries......,Creando Entradas de Pago ......,
Creating Salary Slips...,Creando Recibos de Sueldo ...,
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,Corriente,
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 Job Openings,Ofertas de empleo actuales,
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,
Daily Work Summary,Resumen diario de Trabajo,
Daily Work Summary Group,Grupo de resumen de trabajo diario,
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 is repeated,La fecha está repetida,
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,
Datetime,Fecha y Hora,
Day,Día,
Debit,Debe,
Debit ({0}),Débito ({0}),
Debit A/C Number,Número de débito A / C,
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,
Deduction,Deducción,
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 Status,Estado del 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,
Earning,Ingresos,
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 A/C Number,Número de A / C del empleado,
Employee Advances,Avances de Empleado,
Employee Benefits,Beneficios de empleados,
Employee Grade,Grado del 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 Referral,Recomendación de empleados,
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 relieved on {0} must be set as 'Left',"Empleado relevado en {0} debe definirse como ""izquierda""",
Employee {0} already submited an apllication {1} for the payroll period {2},El Empleado {0} ya envió una Aplicación {1} para el período de nómina {2},
Employee {0} has already applied for {1} between {2} and {3} : ,El empleado {0} ya ha solicitado {1} entre {2} y {3}:,
Employee {0} has no maximum benefit amount,El Empleado {0} no tiene una cantidad de beneficio máximo,
Employee {0} is not active or does not exist,El empleado {0} no está activo o no existe,
Employee {0} is on Leave on {1},El Empleado {0} está en de Licencia el {1},
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,
Employee {0} on Half day on {1},Empleado {0} del medio día del {1},
Enable,Habilitar,
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,
End time cannot be before start time,La hora de finalización no puede ser anterior a la hora de inicio,
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,
Evaluation,Evaluación,
"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:",
Event,Evento,
Event Location,Lugar del evento,
Event Name,Nombre del evento,
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 Claim for Vehicle Log {0},Reclamación de gastos para el registro de vehículos {0},
Expense Claim {0} already exists for the Vehicle Log,Relación de Gastos {0} ya existe para el registro de vehículos,
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,
Fill the form and save it,Llene el formulario y guárdelo,
Filter Employees By (Optional),Filtrar por empleados (Opcional),
"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,
Fiscal Year {0} not found,Año fiscal {0} no encontrado,
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,Comida,
"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 Employee,Por empleados,
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 Date {0} cannot be after employee's relieving Date {1},Desde la fecha {0} no puede ser posterior a la fecha de liberación del empleado {1},
From Date {0} cannot be before employee's joining Date {1},Desde la fecha {0} no puede ser anterior a la fecha de incorporación del empleado {1},
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 date can not be less than employee's joining date,Desde la fecha no puede ser menor a la fecha de incorporación del empleado,
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},
Fuel Price,Precio del combustible,
Fuel Qty,Cantidad de combustible,
Fulfillment,Cumplimiento,
Full,Completo,
Full Name,Nombre completo,
Full-time,Jornada completa,
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 ',
Future dates not allowed,No se permiten fechas futuras,
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 Details From Declaration,Obtener detalles de la declaración,
Get Employees,Obtener Empleados,
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 Pay,Pago Bruto,
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,
Guest,Invitado,
HR Manager,Gerente de recursos humanos (RRHH),
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Day,Medio Día,
Half Day Date is mandatory,La fecha de medio día es obligatoria,
Half Day Date should be between From Date and To Date,Fecha de medio día debe estar entre la fecha desde y fecha hasta,
Half Day Date should be in between Work From Date and Work End Date,La fecha de medio día debe estar entre la fecha de trabajo y la fecha de finalización del trabajo,
Half Yearly,Semestral,
Half day date should be in between from date and to date,La fecha del medio día debe estar entre la fecha y la fecha,
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,
Hello,Hola,
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,
House rent paid days overlapping with {0},Alquiler de casa pagado días superpuestos con {0},
House rented dates required for exemption calculation,Fechas de alquiler de la casa requeridas para el cálculo de la exención,
House rented dates should be atleast 15 days apart,Las fechas de alquiler de la casa deben ser al menos con 15 días de diferencia,
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,
IFSC Code,Código IFSC,
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 Book 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,
Insert,Insertar,
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,
Interest Amount,Cantidad de interés,
Interests,Intereses,
Intern,Interno,
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 Description,Descripción del trabajo,
Job Offer,Oferta de trabajo,
Job card {0} created,Tarjeta de trabajo {0} creada,
Jobs,Trabajos,
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,
Language Name,Nombre del lenguaje,
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 Approval Notification,Notificación de Autorización de Vacaciones,
Leave Blocked,Vacaciones Bloqueadas,
Leave Encashment,Dejar el Encargo,
Leave Management,Gestión de ausencias,
Leave Status Notification,Estado de Notificación de Vacaciones,
Leave Type,Tipo de Licencia,
Leave Type is madatory,Tipo de Licencia es obligatorio,
Leave Type {0} cannot be allocated since it is leave without pay,No se puede asignar el tipo de vacaciones {0} ya que se trata de vacaciones sin sueldo.,
Leave Type {0} cannot be carry-forwarded,No se puede arrastrar el tipo de vacaciones {0}.,
Leave Type {0} is not encashable,Tipo de Licencia {0} no es encasillable,
Leave Without Pay,Permiso / licencia sin goce de salario (LSS),
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},
"Leave cannot be allocated before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","La licencia no puede asignarse antes de {0}, ya que el saldo de vacaciones ya se ha arrastrado en el futuro registro de asignación de vacaciones {1}.",
"Leave cannot be applied/cancelled before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","La licencia no puede aplicarse o cancelarse antes de {0}, ya que el saldo de vacaciones ya se ha arrastrado en el futuro registro de asignación de vacaciones {1}.",
Leave of type {0} cannot be longer than {1},Ausencia del tipo {0} no puede tener más de {1},
Leaves,Hojas,
Leaves Allocated Successfully for {0},Vacaciones Distribuidas Satisfactoriamente para {0},
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,
Leaves per Year,Ausencias por año,
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,
License,Licencia,
Lifecycle,Ciclo de Vida,
Limit,Límite,
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 Amount cannot exceed Maximum Loan Amount of {0},Monto del préstamo no puede exceder cantidad máxima del préstamo de {0},
Loan Application,Solicitud de préstamo,
Loan Management,Gestion de prestamos,
Loan Repayment,Pago de prestamo,
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,
Log,Log,
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 Attendance,Marcar Asistencia,
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 Exemption Amount cannot be greater than maximum exemption amount {0} of Tax Exemption Category {1},El monto máximo de exención no puede ser mayor que el monto máximo de exención {0} de la categoría de exención fiscal {1},
Max benefits should be greater than zero to dispense benefits,Los beneficios máximos deberían ser mayores que cero para dispensar beneficios,
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 amount eligible for the component {0} exceeds {1},La cantidad máxima elegible para el componente {0} excede de {1},
Maximum benefit amount of component {0} exceeds {1},La cantidad máxima de beneficios del componente {0} excede de {1},
Maximum benefit amount of employee {0} exceeds {1},La cantidad máxima de beneficios del empleado {0} excede de {1},
Maximum discount for Item {0} is {1}%,El descuento máximo para el artículo {0} es {1}%,
Maximum leave allowed in the leave type {0} is {1},La licencia máxima permitida en el tipo de permiso {0} es {1},
Medical,Médico,
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,
Meeting,Reunión,
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,
Mode of payment is required to make a payment,Forma de pago se requiere para hacer un pago,
Model,Modelo,
Moderate Sensitivity,Sensibilidad moderada,
Monday,Lunes,
Monthly,Mensual,
Monthly Distribution,Distribución mensual,
Monthly Repayment Amount cannot be greater than Loan Amount,Cantidad mensual La devolución no puede ser mayor que monto del préstamo,
More,Más,
More Information,Mas información,
More than one selection for {0} not allowed,Más de una selección para {0} no permitida,
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,
My Account,Mi Cuenta,
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 Pay,Pago Neto,
Net Pay cannot be less than 0,Pago Neto no puede ser menor que 0,
Net Profit,Beneficio neto,
Net Salary Amount,Cantidad de salario neto,
Net Total,Total neto,
Net pay cannot be negative,El salario neto no puede ser negativo,
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,
Newsletters,Boletines,
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 Employee Found,Ningún empleado encontrado,
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 Salary Structure assigned for Employee {0} on given date {1},Sin estructura salarial asignada para el empleado {0} en una fecha dada {1},
No Staffing Plans found for this Designation,No se encontraron planes de personal para esta designación,
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 active or default Salary Structure found for employee {0} for the given dates,Sin estructura de salario activa o por defecto encontrada de empleado {0} para las fechas indicadas,
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 more updates,No hay más actualizaciones,
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 replies from,No hay respuestas de,
No salary slip found to submit for the above selected criteria OR salary slip already submitted,No se ha presentado ningún comprobante de sueldo para los criterios seleccionados anteriormente O recibo de sueldo ya enviado,
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.,
Nothing to change,Nada para Cambiar,
Notice Period,Período de Notificación,
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 Leave Applications with status 'Approved' and 'Rejected' can be submitted,"Sólo se pueden presentar solicitudes de permiso con el status ""Aprobado"" y ""Rechazado"".",
"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 Holiday List not set for leave period {0},Lista de vacaciones opcional no establecida para el período de licencia {0},
"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)",
Others,Otros,
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,
Part-time,Tiempo parcial,
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,
Password,Contraseña,
Password policy for Salary Slips is not set,La política de contraseñas para recibos salariales no está establecida,
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,
Payable Amount,Cantidad a 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 Date,Fecha de pago,
Payment Days,Días 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 of {0} from {1} to {2},Pago de {0} desde {1} hasta {2},
Payment request {0} created,Pedido de pago {0} creado,
Payments,Pagos.,
Payroll,Nómina de sueldos,
Payroll Number,Número de nómina,
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,
Piecework,Trabajo por obra,
Pincode,Código PIN,
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 add the remaining benefits {0} to any of the existing component,Agregue los beneficios restantes {0} a cualquiera de los componentes existentes,
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 confirm once you have completed your training,Por favor confirme una vez que haya completado su formación,
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 default incoming account before creating Daily Work Summary Group,Habilite la cuenta entrante predeterminada antes de crear el Grupo de resumen de trabajo diario,
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 Repayment Periods,"Por favor, introduzca plazos de amortización",
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 repayment Amount,"Por favor, ingrese el monto de amortización",
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 Designation,Seleccione Compañía y Designación,
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 Employee,Por favor selecciona Empleado,
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 csv file,"Por favor, seleccione un archivo csv",
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 prefix first,"Por favor, seleccione primero el prefijo",
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 Email Address,"Por favor, establece Dirección de correo electrónico",
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 template for Leave Approval Notification in HR Settings.,"Por favor, configure la plantilla predeterminada para la Notifiación de Aprobación de Vacaciones en Configuración de Recursos Humanos.",
Please set default template for Leave Status Notification in HR Settings.,Configure la plantilla predeterminada para la Notifiación de Estado de Vacaciones en configuración de Recursos Humanos.,
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 Company,Por favor establezca la empresa,
Please set the Customer Address,"Por favor, configure la dirección del cliente",
Please set the Date Of Joining for employee {0},"Por favor, establezca la Fecha de Ingreso para el empleado {0}",
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 the series to be used.,"Por favor, configure la serie que se utilizará.",
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 share your feedback to the training by clicking on 'Training Feedback' and then 'New',"Por favor, comparta sus comentarios con la formación haciendo clic en ""Feedback de Entrenamiento"" y luego en ""Nuevo""",
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 update your status for this training event,Actualice su estado para este evento de capacitación.,
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,
Portal Settings,Configuración del 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,
Present,Presente,
Prev,Anterior,
Preview,Vista Previa,
Preview Salary Slip,Previsualización de Nómina,
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,
Principal Amount,Cantidad 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,
Privilege Leave,Vacaciones,
Probation,Período de prueba,
Probationary Period,Período de prueba,
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,
Property,Propiedad,
Property already added,Propiedad ya agregada,
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 Owner,Propietario 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,
Region,Región,
Register,Registro,
Reject,Rechazar,
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,
Replies,Respuestas,
Report,Reporte,
Report Builder,Generador de reportes,
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.,
Responsibilities,Responsabilidades,
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,
Role,Rol,
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}# Allocated amount {1} cannot be greater than unclaimed amount {2},Fila {0} # Cantidad Asignada {1} no puede ser mayor que la Cantidad no Reclamada {2},
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}# Paid Amount cannot be greater than requested advance amount,Fila {0}# Cantidad pagada no puede ser mayor que la cantidad adelantada solicitada,
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}: Qty is mandatory,Línea {0}: La cantidad es obligatoria,
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 ID,ID de Nómina,
Salary Slip of employee {0} already created for this period,Nómina del empleado {0} ya creado para este periodo,
Salary Slip of employee {0} already created for time sheet {1},Nómina de sueldo del empleado {0} ya creado para la hoja de tiempo {1},
Salary Slip submitted for period from {0} to {1},Recibo de Salario enviado para el período de {0} a {1},
Salary Structure Assignment for Employee already exists,La asignación de estructura salarial para el empleado ya existe,
Salary Structure Missing,Falta estructura salarial,
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,
Salary Structure not found for employee {0} and date {1},Estructura salarial no encontrada para el empleado {0} y fecha {1},
Salary Structure should have flexible benefit component(s) to dispense benefit amount,La Estructura Salarial debe tener un componente (s) de beneficio flexible para dispensar el monto del beneficio,
"Salary already processed for period between {0} and {1}, Leave application period cannot be between this date range.","Salario ya procesado para el período entre {0} y {1}, Deja período de aplicación no puede estar entre este intervalo de fechas.",
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,Muestra.,
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,
Sanctioned Amount,Monto sancionado,
Sanctioned Amount cannot be greater than Claim Amount in Row {0}.,Importe sancionado no puede ser mayor que el importe del reclamo en la línea {0}.,
Sand,Arena,
Saturday,Sábado,
Saved,Guardado,
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,
Score must be less than or equal to 5,La puntuación debe ser menor o igual a 5,
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 Property,Seleccionar Propiedad,
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 an employee to get the employee advance.,Seleccione un empleado para obtener el adelanto del empleado.,
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,
Series {0} already used in {1},Secuencia {0} ya utilizada en {1},
Service,Servicios,
Service Expense,Gasto de Servicio,
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 Default,Establecer como Predeterminado,
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,Envío.,
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 Employee,Mostrar empleado,
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 Salary Slip,Mostrar Nomina Salarial,
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,
Sick Leave,Permiso por enfermedad,
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}",
"Skipping Salary Structure Assignment for the following employees, as Salary Structure Assignment records already exists against them. {0}","Omitir la asignación de estructura salarial para los siguientes empleados, ya que los registros de asignación de estructura salarial 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,
Staffing Plan {0} already exist for designation {1},El plan de dotación de personal {0} ya existe para la designación {1},
Standard,Estándar,
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 and end dates not in a valid Payroll Period, cannot calculate {0}","Las fechas de inicio y finalización no están en un período de nómina válido, no se puede calcular {0}",
"Start and end dates not in a valid Payroll Period, cannot calculate {0}.","Las fechas de inicio y final no están en un Período de cálculo de la nómina válido, no pueden calcular {0}.",
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 Options,Opciones de stock,
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,
Structures have been assigned successfully,Las Esturcturas fueron asignadas exitósamente,
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 Proof,Enviar prueba,
Submit Salary Slip,Validar nómina salarial,
Submit this Work Order for further processing.,Presente esta Órden de Trabajo para su posterior procesamiento.,
Submit this to create the Employee record,Envíe esto para crear el registro del empleado,
Submitting Salary Slips...,Validar Nóminas Salariales ...,
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,
Team Updates,Actualizaciones equipo,
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,
Test,Prueba,
Thank you,Gracias.,
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 day(s) on which you are applying for leave are holidays. You need not apply for leave.,El día (s) en el que está solicitando la licencia son los días festivos. Usted no necesita solicitar la excedencia.,
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 are more holidays than working days this month.,Existen más vacaciones que días de trabajo en este mes.,
There can be multiple tiered collection factor based on the total spent. But the conversion factor for redemption will always be same for all the tier.,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 no leave period in between {0} and {1},No hay período de licencia entre {0} y {1},
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 Employee,Esto se basa en la presencia de este empleado,
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 will submit Salary Slips and create accrual Journal Entry. Do you want to proceed?,Esto enviará hojas de salario y creará asientos acumulados. ¿Quieres proceder?,
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 date can not be equal or less than from date,Fecha Hasta no puede ser igual o menor que la fecha,
To date can not be less than from date,Fecha Hasta no puede ser menor que la Fecha Desde,
To date can not greater than employee's relieving date,Fecha Hasta no puede ser mayor que la fecha de alivio del empleado,
"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 Absent,Total ausente,
Total Achieved,Total Conseguido,
Total Actual,Total Actual,
Total Allocated Leaves,Total de Licencias Asignadas,
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 Deduction,Deducción total,
Total Invoiced Amount,Total Facturado,
Total Leaves,Hojas Totales,
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 Present,Total Presente,
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 advance amount cannot be greater than total sanctioned amount,El monto total anticipado no puede ser mayor que la cantidad total autorizada,
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 flexible benefit component amount {0} should not be less than max benefits {1},El monto total del componente de beneficio flexible {0} no debe ser inferior al beneficio máximo {1},
Total hours: {0},Horas totales: {0},
Total leaves allocated is mandatory for Leave Type {0},Las Licencias totales asignadas son obligatorias para el Tipo de Licencia {0},
Total working hours should not be greater than max working hours {0},Total de horas de trabajo no deben ser mayores que las horas de trabajo max {0},
Total {0} ({1}),Total {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Total 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,
Traceback,Rastrear,
Track Leads by Lead Source.,Seguimiento de Oportunidades por fuente de Opotunidades.,
Training,Formación,
Training Event,Evento de Capacitación,
Training Events,Eventos de entrenamiento,
Training Feedback,Comentarios del entrenamiento,
Training Result,Resultado del entrenamiento,
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,Viajes,
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 DocType {0},No se puede encontrar DocType {0},
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 Response,Actualizar Respuesta,
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,
Used Leaves,Licencias Usadas,
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 missing,Valor que Falta,
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",
Variable,Variable,
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,
Walk In,Entrar,
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: Leave application contains following block dates,Advertencia: La solicitud de ausencia contiene las siguientes fechas bloqueadas,
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 Listing,Listado de sitios web,
Website Manager,Administrar Página Web,
Website Settings,Configuración del Sitio Web,
Wednesday,Miércoles,
Week,Semana,
Weekdays,Días de la 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 Summary for {0},Resumen de trabajo para {0},
Work-in-Progress Warehouse is required before Submit,Se requiere un almacén de trabajos en proceso antes de validar,
Workflow,Flujos de Trabajo,
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 approve leaves on Block Dates,Usted no está autorizado para aprobar ausencias en fechas bloqueadas,
You are not authorized to set Frozen value,Usted no está autorizado para definir el 'valor congelado',
You are not present all day(s) between compensatory leave request days,Usted no está presente todos los días entre los días de solicitud de licencia compensatoria,
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 only submit Leave Encashment for a valid encashment amount,Solo puede enviar la Deuda por un monto de cobro válido,
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 enought 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 be logged in to access this page,Tiene que estar registrado para acceder a esta página,
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} already allocated for Employee {1} for period {2} to {3},{0} ya ha sido asignado para el empleado {1} para el periodo {2} hasta {3},
{0} applicable after {1} working days,{0} aplicable después de {1} días hábiles,
{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 not in Optional Holiday List,{0} no está en la Lista de Vacaciones opcional,
{0} is not in a valid Payroll Period,{0} no está en un Período de cálculo de Nómina válido,
{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} must be submitted,{0} debe enviarse,
{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}: Employee email not found, hence email not sent","{0}: No se encontró el correo electrónico de los empleados, por lo tanto, no correo electrónico enviado",
{0}: From {0} of type {1},{0}: Desde {0} del tipo {1},
{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,
Conditions,Condiciones,
County,País,
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,
Images,imágenes,
Import,Importar / Exportar,
Language,Idioma,
Likes,Me Gustas,
Merge with existing,Combinar con existente,
Office,Oficina,
Orientation,Orientación,
Parent,Principal,
Passive,Pasivo,
Payment Failed,Pago Fallido,
Percent,Por ciento,
Permanent,Permanente,
Personal,Personal,
Plant,Planta,
Post,Publicar,
Postal,Postal,
Postal Code,Codigo postal,
Previous,Anterior,
Provider,Proveedor,
Read Only,Sólo lectura,
Recipient,Beneficiario,
Reviews,Comentarios,
Sender,Remitente,
Shop,Tienda.,
Subsidiary,Subsidiaria,
There is some problem with the file url: {0},Hay un poco de problema con la url del archivo: {0},
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",
Error in some rows,Error en algunas filas,
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;,
Benefit,Beneficio,
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.,
Shift,Cambio,
Show {0},Mostrar {0},
"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caracteres especiales excepto &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; Y &quot;}}&quot; no están permitidos en las series de nombres {0}",
Target Details,Detalles del objetivo,
{0} already has a Parent Procedure {1}.,{0} ya tiene un Procedimiento principal {1}.,
API,API,
Annual,Anual,
Approved,Aprobado,
Change,Cambio,
Contact Email,Correo electrónico de contacto,
Export Type,Tipo de Exportación,
From Date,Desde la fecha,
Group By,Agrupar por,
Importing {0} of {1},Importando {0} de {1},
Invalid URL,URL invalida,
Landscape,Paisaje,
Last Sync On,Última Sincronización Activada,
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,
Webhook Secret,Webhook Secret,
% Of Grand Total,% Del total general,
'employee_field_value' and 'timestamp' are required.,&#39;employee_field_value&#39; y &#39;timestamp&#39; son obligatorios.,
<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 belong to company {1},Cuenta {0} no pertenece a la Compañía {1},
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 Loan Security,Agregar seguridad de préstamo,
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.,
Against Loan,Contra préstamo,
Against Loan:,Contra préstamo:,
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,
Allocation Expired!,Asignación expirada!,
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,
Amount paid cannot be zero,El monto pagado no puede ser cero,
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.,
Attendance Marked,Asistencia marcada,
Attendance has been marked as per employee check-ins,La asistencia ha sido marcada según los registros de empleados,
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 Home,De vuelta a casa,
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 create loan until application is approved,No se puede crear un préstamo hasta que se apruebe la solicitud.,
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,
Customize,Personalización,
Daily,Diario,
Date,Fecha,
Date Range,Rango de Fechas,
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,
Edit Profile,Editar perfil,
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,
Event Link,Enlace de evento,
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,
Expire Allocation,Caducar la asignació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,
File Manager,Administrador de archivos,
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,
Fuel Expense,Gasto de combustible,
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,
Intermediate,Intermedio,
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,
Invite as User,Invitar como usuario,
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 quantity can not be zero,La cantidad del artículo no puede ser cero,
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,
Leave application is linked with leave allocations {0}. Leave application cannot be set as leave without pay,La solicitud de licencia está vinculada con las asignaciones de licencia {0}. La solicitud de licencia no se puede configurar como licencia sin paga,
Leaves Taken,Hojas tomadas,
Less Than Amount,Menos de la cantidad,
Liabilities,Pasivo,
Loading...,Cargando ...,
Loan Amount exceeds maximum loan amount of {0} as per proposed securities,El monto del préstamo excede el monto máximo del préstamo de {0} según los valores propuestos,
Loan Applications from customers and employees.,Solicitudes de préstamos de clientes y empleados.,
Loan Disbursement,Desembolso del préstamo,
Loan Processes,Procesos de préstamo,
Loan Security,Préstamo de seguridad,
Loan Security Pledge,Compromiso de seguridad del préstamo,
Loan Security Pledge Created : {0},Compromiso de seguridad del préstamo creado: {0},
Loan Security Price,Precio de seguridad del préstamo,
Loan Security Price overlapping with {0},Precio de seguridad del préstamo superpuesto con {0},
Loan Security Unpledge,Préstamo Seguridad Desplegar,
Loan Security Value,Valor de seguridad del préstamo,
Loan Type for interest and penalty rates,Tipo de préstamo para tasas de interés y multas,
Loan amount cannot be greater than {0},El monto del préstamo no puede ser mayor que {0},
Loan is mandatory,El préstamo es obligatorio.,
Loans,Préstamos,
Loans provided to customers and employees.,Préstamos otorgados a clientes y empleados.,
Location,Ubicación,
Log Type is required for check-ins falling in the shift: {0}.,El tipo de registro es necesario para los registros que se realizan en el turno: {0}.,
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,
Newsletter,Boletín de noticias,
No Account matched these filters: {},Ninguna cuenta coincide con estos filtros: {},
No Employee found for the given employee field value. '{}': {},No se encontró ningún empleado para el valor de campo de empleado dado. &#39;{}&#39;: {},
No Leaves Allocated to Employee: {0} for Leave Type: {1},No hay hojas asignadas al empleado: {0} para el tipo de licencia: {1},
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,
Only expired allocation can be cancelled,Solo se puede cancelar la asignación vencida,
Only users with the {0} role can create backdated leave applications,Solo los usuarios con el rol {0} pueden crear aplicaciones de licencia retroactivas,
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,
Password policy cannot contain spaces or simultaneous hyphens. The format will be restructured automatically,La política de contraseña no puede contener espacios o guiones simultáneos. El formato se reestructurará automáticamente.,
Patient History,Historia del paciente,
Pause,Pausa,
Pay,Pagar,
Payment Document Type,Tipo de documento de pago,
Payment Name,Nombre de pago,
Penalty Amount,Importe de la pena,
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 enter the designation,"Por favor, introduzca la designación",
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 Applicant Type first,Seleccione primero el tipo de solicitante,
Please select Customer first,Por favor seleccione Cliente primero,
Please select Item Code first,Seleccione primero el código del artículo,
Please select Loan Type for company {0},Seleccione Tipo de préstamo para la empresa {0},
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
Pledge Status,Estado de compromiso,
Pledge Time,Tiempo de compromiso,
Printing,Impresión,
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,
Proposed Pledges are mandatory for secured Loans,Las promesas propuestas son obligatorias para los préstamos garantizados,
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,Publicar,
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,
Qty or Amount is mandatroy for loan security,Cantidad o monto es obligatorio para la seguridad del préstamo,
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,
Refreshing,Actualizando,
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,
Repayment Method is mandatory for term loans,El método de reembolso es obligatorio para préstamos a plazo,
Repayment Start Date is mandatory for term loans,La fecha de inicio de reembolso es obligatoria para préstamos a plazo,
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}: 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},
Sanctioned Amount limit crossed for {0} {1},Límite de cantidad sancionado cruzado por {0} {1},
Sanctioned Loan Amount already exists for {0} against company {1},El monto del préstamo sancionado ya existe para {0} contra la compañía {1},
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 All,Seleccionar todo,
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,Establecer,
Set Meta Tags,Establecer metaetiquetas,
Set {0} in company {1},Establecer {0} en la empresa {1},
Setup,Configuración,
Setup Wizard,Asistente de 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}).,
There are no vacancies under staffing plan {0},No hay vacantes en el plan de personal {0},
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 employee already has a log with the same timestamp.{0},Este empleado ya tiene un registro con la misma marca de tiempo. {0},
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,
Timing,Sincronización,
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.",
To date needs to be before from date,Hasta la fecha debe ser anterior a la fecha,
Total,Total,
Total Early Exits,Total de salidas tempranas,
Total Late Entries,Total de entradas tardías,
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,
Training Event:,Evento de entrenamiento:,
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 Salary Component {0},No se puede encontrar el componente de salario {0},
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,
Unmarked Attendance for days,Asistencia sin marcar por días,
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 Details,Detalles de actualización,
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,
Vacancies cannot be lower than the current openings,Las vacantes no pueden ser inferiores a las vacantes actuales,
Valid From Time must be lesser than Valid Upto Time.,Válido desde el tiempo debe ser menor que Válido hasta el tiempo.,
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,Usted,
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} Name,{0} Nombre,
{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 an invalid Attendance Status.,{} es un estado de asistencia no válido.,
{} 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,
Bold,Negrita,
Center,Centro,
Clear,Quitar,
Comment,Comentario,
Comments,Comentarios,
DocType,DocType,
Download,Descargar,
Left,Inactivo/Fuera,
Link,Enlace,
New,Nuevo,
Not Found,No encontrado,
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,
Loan Amount is mandatory,El monto del préstamo es obligatorio,
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,
Printed On,Impreso en,
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',
User Id,ID de usuario,
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,
Loan amount is mandatory,El monto del préstamo es obligatorio,
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 employee found,Empleado no encontrado,
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,
Please setup Employee Naming System in Human Resource > HR Settings,Configure el Sistema de nombres de empleados en Recursos humanos&gt; Configuración de recursos humanos,
Please setup numbering series for Attendance via Setup > Numbering Series,Configure la serie de numeración para la asistencia a través de Configuración&gt; Serie de numeración,
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}.",
Current Odometer Value should be greater than Last Odometer Value {0},El valor actual del odómetro debe ser mayor que el último valor del odómetro {0},
No additional expenses has been added,No se han agregado gastos adicionales,
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,
{0} already exists for employee {1} and period {2},{0} ya existe para el empleado {1} y el período {2},
Leaves Allocated,Hojas asignadas,
Leaves Expired,Hojas caducadas,
Leave Without Pay does not match with approved {} records,La licencia sin paga no coincide con los registros de {} aprobados,
Income Tax Slab not set in Salary Structure Assignment: {0},Losa de impuesto sobre la renta no se estableció en la asignación de estructura salarial: {0},
Income Tax Slab: {0} is disabled,Losa de impuestos sobre la renta: {0} está inhabilitado,
Income Tax Slab must be effective on or before Payroll Period Start Date: {0},Losa de impuesto sobre la renta debe entrar en vigencia a partir de la fecha de inicio del período de nómina: {0},
No leave record found for employee {0} on {1},No se encontró ningún registro de licencia para el empleado {0} el {1},
Row {0}: {1} is required in the expenses table to book an expense claim.,Fila {0}: {1} es obligatorio en la tabla de gastos para registrar una reclamación de gastos.,
Set the default account for the {0} {1},Configure la cuenta predeterminada para {0} {1},
(Half Day),(Medio día),
Income Tax Slab,Losa de impuesto sobre la renta,
Row #{0}: Cannot set amount or formula for Salary Component {1} with Variable Based On Taxable Salary,Fila n. ° {0}: no se puede establecer la cantidad o la fórmula para el componente de salario {1} con variable basada en el salario imponible,
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,
Repay From Salary can be selected only for term loans,Reembolsar desde el salario se puede seleccionar solo para préstamos a plazo,
No valid Loan Security Price found for {0},No se encontró ningún precio de garantía de préstamo válido para {0},
Loan Account and Payment Account cannot be same,La cuenta de préstamo y la cuenta de pago no pueden ser iguales,
Loan Security Pledge can only be created for secured loans,La promesa de garantía de préstamo solo se puede crear para préstamos garantizados,
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,
Position,Posición,
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.",
Salary Component Account,Cuenta Nómina Componente,
Default Bank / Cash account will be automatically updated in Salary Journal Entry when this mode is selected.,Banco Predeterminado / Cuenta de Efectivo se actualizará automáticamente en la Entrada de Diario Salario cuando se selecciona este modo.,
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,Cultivo,
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,
Result,Resultado,
Total Score,Puntaje Total,
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,Tema,
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,
Public Transport,Transporte Público,
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,
Joining Date,Dia de ingreso,
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,
Publish on website,Publicar en el sitio web,
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 Status,Estado de la Aplicación,
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,
IN,EN,
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,
Request Data,Datos de Solicitud,
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,Pasos,
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,
Remind Before,Recuerde Antes,
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,
Reminded,Recordado,
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,
Reference DocType,DocType de referencia,
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,
Additional Salary,Salario Adicional,
HR,HR,
HR-ADS-.YY.-.MM.-,HR-ADS-.YY .-. MM.-,
Salary Component,Componente Salarial,
Overwrite Salary Structure Amount,Sobrescribir el monto de la Estructura Salarial,
Deduct Full Tax on Selected Payroll Date,Deduzca el impuesto completo en la fecha de nómina seleccionada,
Payroll Date,Fecha de Nómina,
Date on which this component is applied,Fecha en que se aplica este componente,
Salary Slip,Nómina salarial,
Salary Component Type,Tipo de Componente Salarial,
HR User,Usuario de recursos humanos,
Appointment Letter,Carta de cita,
Job Applicant,Solicitante de empleo,
Applicant Name,Nombre del Solicitante,
Appointment Date,Día de la cita,
Appointment Letter Template,Plantilla de carta de cita,
Body,Cuerpo,
Closing Notes,Notas de cierre,
Appointment Letter content,Contenido de la carta de nombramiento,
Appraisal,Evaluación,
HR-APR-.YY.-.MM.,HR-APR-.YY.-.MM.,
Appraisal Template,Plantilla de evaluación,
For Employee Name,Por nombre de empleado,
Goals,Objetivos,
Total Score (Out of 5),Puntaje Total (de 5),
"Any other remarks, noteworthy effort that should go in the records.","Otras observaciones, que deben ir en los registros.",
Appraisal Goal,Meta de evaluación,
Key Responsibility Area,Área de Responsabilidad Clave,
Weightage (%),Porcentaje (%),
Score (0-5),Puntuación (0-5),
Score Earned,Puntuación Obtenida.,
Appraisal Template Title,Titulo de la plantilla de evaluación,
Appraisal Template Goal,Objetivo de la plantilla de evaluación,
KRA,KRA,
Key Performance Area,Área Clave de Rendimiento,
HR-ATT-.YYYY.-,HR-ATT-.YYYY.-,
On Leave,De licencia,
Work From Home,Trabajar Desde Casa,
Leave Application,Solicitud de Licencia,
Attendance Date,Fecha de Asistencia,
Attendance Request,Solicitud de Asistencia,
Late Entry,Entrada tardía,
Early Exit,Salida Temprana,
Half Day Date,Fecha de Medio Día,
On Duty,En Servicio,
Explanation,Explicación,
Compensatory Leave Request,Solicitud de licencia compensatoria,
Leave Allocation,Asignación de vacaciones,
Worked On Holiday,Trabajó en Vacaciones,
Work From Date,Trabajar Desde la Fecha,
Work End Date,Fecha de Finalización del Trabajo,
Email Sent To,Correo electrónico enviado a,
Select Users,Seleccionar Usuarios,
Send Emails At,Enviar Correos Electrónicos a,
Reminder,Recordatorio,
Daily Work Summary Group User,Resumen de Trabajo Diario de Grupo Usuario,
email,correo electrónico,
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,
Department Approver,Aprobador de Departamento,
Approver,Supervisor,
Required Skills,Habilidades requeridas,
Skills,Habilidades,
Designation Skill,Habilidad de designación,
Skill,Habilidad,
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,
Leave Policy,Política 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 Details,Detalles del Salario,
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,
HR-EAD-.YYYY.-,HR-EAD-.YYYY.-,
Returned Amount,Cantidad devuelta,
Claimed,Reclamado,
Advance Account,Cuenta anticipada,
Employee Attendance Tool,Herramienta de asistencia de los empleados,
Unmarked Attendance,La asistencia sin marcar,
Employees HTML,Empleados HTML,
Marked Attendance,Asistencia Marcada,
Marked Attendance HTML,Asistencia Marcada HTML,
Employee Benefit Application,Solicitud de Beneficios para Empleados,
Max Benefits (Yearly),Beneficios Máximos (Anuales),
Remaining Benefits (Yearly),Beneficios Restantes (Anuales),
Payroll Period,Período de Nómina,
Benefits Applied,Beneficios Aplicados,
Dispensed Amount (Pro-rated),Cantidad Dispensada (Prorrateada),
Employee Benefit Application Detail,Detalle de la Solicitud de Beneficios para Empleados,
Earning Component,Componente de Ganancia,
Pay Against Benefit Claim,Reclamo de pago contra el beneficio,
Max Benefit Amount,Monto de Beneficio Máximo,
Employee Benefit Claim,Reclamo de Beneficio del Empleado,
Claim Date,Fecha de Reclamación,
Benefit Type and Amount,Tipo de Beneficio y Cantidad,
Claim Benefit For,Beneficio de reclamo por,
Max Amount Eligible,Monto Máximo Elegible,
Expense Proof,Prueba de Gastos,
Employee Boarding Activity,Actividad de Embarque de Empleados,
Activity Name,Nombre de la Actividad,
Task Weight,Peso de la Tarea,
Required for Employee Creation,Requerido para la creación del Empleado,
Applicable in the case of Employee Onboarding,Aplicable en el caso de la incorporación de empleados,
Employee Checkin,Registro de empleados,
Log Type,Tipo de registro,
OUT,FUERA,
Location / Device ID,Ubicación / ID del dispositivo,
Skip Auto Attendance,Omitir asistencia automática,
Shift Start,Inicio de turno,
Shift End,Fin de turno,
Shift Actual Start,Shift Real Start,
Shift Actual End,Shift Real End,
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,
Default Salary Structure,Estructura de Salario Predeterminada,
Employee Group Table,Tabla de grupo de empleados,
ERPNext User ID,ERP ID de usuario siguiente,
Employee Health Insurance,Seguro de Salud para Empleados,
Health Insurance Name,Nombre del Seguro de Salud,
Employee Incentive,Incentivo para Empleados,
Incentive Amount,Monto de Incentivo,
Employee Internal Work History,Historial de trabajo del empleado,
Employee Onboarding,Empleado de Abordo,
Notify users by email,Notificar a los usuarios por correo electrónico,
Employee Onboarding Template,Plantilla de Incorporación del Empleado,
Activities,Actividades,
Employee Onboarding Activity,Actividad de Incorporación del Empleado,
Employee Other Income,Otros ingresos del empleado,
Employee Promotion,Promoción del Empleado,
Promotion Date,Fecha de Promoción,
Employee Promotion Details,Detalles de la Promoción del Empleado,
Employee Promotion Detail,Detalle de la Promoción del Empleado,
Employee Property History,Historial de Propiedad del Empleado,
Employee Separation,Separación de Empleados,
Employee Separation Template,Plantilla de Separación de Empleados,
Exit Interview Summary,Resumen de la entrevista de salida,
Employee Skill,Habilidad del empleado,
Proficiency,Competencia,
Evaluation Date,Fecha de evaluación,
Employee Skill Map,Mapa de habilidades del empleado,
Employee Skills,Habilidades de los empleados,
Trainings,Entrenamientos,
Employee Tax Exemption Category,Categoría de Exención Fiscal del Empleado,
Max Exemption Amount,Cantidad de exención máxima,
Employee Tax Exemption Declaration,Declaración de Exención Fiscal del Empleado,
Declarations,Declaraciones,
Total Declared Amount,Monto total declarado,
Total Exemption Amount,Importe Total de Exención,
Employee Tax Exemption Declaration Category,Categoría de Declaración de Exención Fiscal del Empleado,
Exemption Sub Category,Subcategoría de Exención,
Exemption Category,Categoría de Exención,
Maximum Exempted Amount,Monto máximo exento,
Declared Amount,Cantidad declarada,
Employee Tax Exemption Proof Submission,Presentación de Prueba de Exención Fiscal del Empleado,
Submission Date,Día de Entrega,
Tax Exemption Proofs,Pruebas de Exención de Impuestos,
Total Actual Amount,Monto real total,
Employee Tax Exemption Proof Submission Detail,Detalle de envío de prueba de exención fiscal del empleado,
Maximum Exemption Amount,Monto Máximo de Exención,
Type of Proof,Tipo de Prueba,
Actual Amount,Cantidad real,
Employee Tax Exemption Sub Category,Subcategoría de exención fiscal para empleados,
Tax Exemption Category,Categoría de Exención Fiscal,
Employee Training,Formación de los empleados,
Training Date,Fecha de entrenamiento,
Employee Transfer,Transferencia del Empleado,
Transfer Date,Fecha de Transferencia,
Employee Transfer Details,Detalles de Transferencia del Empleado,
Employee Transfer Detail,Detalle de Transferencia del Empleado,
Re-allocate Leaves,Reasignar Licencias,
Create New Employee Id,Crear Nuevo ID de Empleado,
New Employee ID,Nueva Identificación de Empleado,
Employee Transfer Property,Propiedad de Transferencia del Empleado,
HR-EXP-.YYYY.-,HR-EXP-.YYYY.-,
Expense Taxes and Charges,Gastos Impuestos y Cargos,
Total Sanctioned Amount,Total Sancionada,
Total Advance Amount,Monto Total Anticipado,
Total Claimed Amount,Total reembolso,
Total Amount Reimbursed,Monto total reembolsado,
Vehicle Log,Bitácora del Vehiculo,
Employees Email Id,ID de Email de empleados,
More Details,Más detalles,
Expense Claim Account,Cuenta de Gastos,
Expense Claim Advance,Anticipo de Adelanto de Gastos,
Unclaimed amount,Cantidad no Reclamada,
Expense Claim Detail,Detalle de reembolso de gastos,
Expense Date,Fecha de gasto,
Expense Claim Type,Tipo de gasto,
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,
HR Settings,Configuración de recursos humanos (RRHH),
Employee Settings,Configuración de Empleado,
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.,
Expense Approver Mandatory In Expense Claim,Aprobador de Gastos obligatorio en la Reclamación de Gastos,
Payroll Settings,Configuración de nómina,
Leave,Salir,
Max working hours against Timesheet,Máximo las horas de trabajo contra la parte de horas,
Include holidays in Total no. of Working Days,Incluir vacaciones con el numero total de días laborables,
"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Si se marca, el número total de días trabajados incluirá las vacaciones, y este reducirá el salario por día.",
"If checked, hides and disables Rounded Total field in Salary Slips","Si está marcado, oculta y deshabilita el campo Total redondeado en los recibos de salario",
The fraction of daily wages to be paid for half-day attendance,La fracción del salario diario a pagar por asistencia de medio día.,
Email Salary Slip to Employee,Enviar Nómina al Empleado por Correo Electrónico,
Emails salary slip to employee based on preferred email selected in Employee,Envíe por correo electrónico el recibo de salario al empleado basándose en el correo electrónico preferido seleccionado en Empleado,
Encrypt Salary Slips in Emails,Cifrar recibos de sueldo en correos electrónicos,
"The salary slip emailed to the employee will be password protected, the password will be generated based on the password policy.","El recibo de salario enviado por correo electrónico al empleado estará protegido por contraseña, la contraseña se generará en función de la política de contraseña.",
Password Policy,Política de contraseñas,
<b>Example:</b> SAL-{first_name}-{date_of_birth.year} <br>This will generate a password like SAL-Jane-1972,<b>Ejemplo:</b> SAL- {first_name} - {date_of_birth.year} <br> Esto generará una contraseña como SAL-Jane-1972,
Leave Settings,Configuración de Vacaciones,
Leave Approval Notification Template,Plantilla de Notificación de Autorización de Vacaciones,
Leave Status Notification Template,Plantilla de Estado de Notificación de Vacaciones,
Role Allowed to Create Backdated Leave Application,Rol permitido para crear una solicitud de licencia con fecha anterior,
Leave Approver Mandatory In Leave Application,Aprobador de Autorización de Vacaciones es obligatorio en la Solicitud de Licencia,
Show Leaves Of All Department Members In Calendar,Mostrar hojas de todos los miembros del departamento en el calendario,
Auto Leave Encashment,Auto dejar cobro,
Hiring Settings,Configuraciones de contratación,
Check Vacancies On Job Offer Creation,Comprobar vacantes en la creación de ofertas de trabajo,
Identification Document Type,Tipo de Documento de Identificación,
Effective from,Válido desde,
Allow Tax Exemption,Permitir exención de impuestos,
"If enabled, Tax Exemption Declaration will be considered for income tax calculation.","Si está habilitada, la Declaración de exención de impuestos se considerará para el cálculo del impuesto sobre la renta.",
Standard Tax Exemption Amount,Monto de exención de impuestos estándar,
Taxable Salary Slabs,Salarios Gravables,
Taxes and Charges on Income Tax,Impuestos y cargas sobre el impuesto sobre la renta,
Other Taxes and Charges,Otros impuestos y cargos,
Income Tax Slab Other Charges,Impuesto sobre la renta Otros cargos de losa,
Min Taxable Income,Renta mínima imponible,
Max Taxable Income,Ingreso imponible máximo,
Applicant for a Job,Solicitante de Empleo,
Accepted,Aceptado,
Job Opening,Oportunidad de empleo,
Cover Letter,Carta de presentación,
Resume Attachment,Adjunto curriculum vitae,
Job Applicant Source,Fuente del Solicitante de Empleo,
Applicant Email Address,Dirección de correo electrónico del solicitante,
Awaiting Response,Esperando Respuesta,
Job Offer Terms,Términos de Oferta de Trabajo,
Select Terms and Conditions,Seleccione términos y condiciones,
Printing Details,Detalles de impresión,
Job Offer Term,Término de Oferta de Trabajo,
Offer Term,Términos de la oferta,
Value / Description,Valor / Descripción,
Description of a Job Opening,Descripción de la oferta de trabajo,
Job Title,Título del trabajo,
Staffing Plan,Plan de Personal,
Planned number of Positions,Número planificado de Posiciones,
"Job profile, qualifications required etc.","Perfil laboral, las cualificaciones necesarias, etc",
HR-LAL-.YYYY.-,HR-LAL-.YYYY.-,
Allocation,Asignación,
New Leaves Allocated,Nuevas Ausencias Asignadas,
Add unused leaves from previous allocations,Añadir permisos no usados de asignaciones anteriores,
Unused leaves,Ausencias no utilizadas,
Total Leaves Allocated,Total de ausencias asigandas,
Total Leaves Encashed,Total de Licencias Cobradas,
Leave Period,Período de Licencia,
Carry Forwarded Leaves,Trasladar ausencias,
Apply / Approve Leaves,Aplicar/Aprobar Licencias,
HR-LAP-.YYYY.-,HR-LAP-.YYYY.-,
Leave Balance Before Application,Ausencias disponibles antes de la solicitud,
Total Leave Days,Días totales de ausencia,
Leave Approver Name,Nombre del supervisor de ausencias,
Follow via Email,Seguir a través de correo electronico,
Block Holidays on important days.,Bloquear vacaciones en días importantes.,
Leave Block List Name,Nombre de la Lista de Bloqueo de Vacaciones,
Applies to Company,Se aplica a la empresa,
"If not checked, the list will have to be added to each Department where it has to be applied.","Si no está marcada, la lista tendrá que ser añadida a cada departamento donde será aplicada.",
Block Days,Bloquear días,
Stop users from making Leave Applications on following days.,No permitir a los usuarios crear solicitudes de ausencia en los siguientes días.,
Leave Block List Dates,Fechas de Lista de Bloqueo de Vacaciones,
Allow Users,Permitir que los usuarios,
Allow the following users to approve Leave Applications for block days.,Permitir a los usuarios siguientes aprobar solicitudes de ausencia en días bloqueados.,
Leave Block List Allowed,Lista de 'bloqueo de vacaciones / permisos' permitida,
Leave Block List Allow,Permitir Lista de Bloqueo de Vacaciones,
Allow User,Permitir al usuario,
Leave Block List Date,Fecha de Lista de Bloqueo de Vacaciones,
Block Date,Bloquear fecha,
Leave Control Panel,Panel de control de ausencias,
Select Employees,Seleccione los empleados,
Employment Type (optional),Tipo de empleo (opcional),
Branch (optional),Rama (opcional),
Department (optional),Departamento (opcional),
Designation (optional),Designación (opcional),
Employee Grade (optional),Grado de empleado (opcional),
Employee (optional),Empleado (opcional),
Allocate Leaves,Asignar hojas,
Carry Forward,Trasladar,
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,Por favor seleccione 'trasladar' si usted desea incluir los saldos del año fiscal anterior a este año,
New Leaves Allocated (In Days),Nuevas ausencias asignadas (en días),
Allocate,Asignar,
Leave Balance,Balance de Licencia,
Encashable days,Días de Cobro,
Encashment Amount,Monto del Cobro,
Leave Ledger Entry,Dejar entrada de libro mayor,
Transaction Name,Nombre de transacción,
Is Carry Forward,Es un traslado,
Is Expired,Está expirado,
Is Leave Without Pay,Es una ausencia sin goce de salario,
Holiday List for Optional Leave,Lista de vacaciones para la licencia opcional,
Leave Allocations,Dejar asignaciones,
Leave Policy Details,Dejar detalles de la política,
Leave Policy Detail,Dejar detalles de la política,
Annual Allocation,Asignación Anual,
Leave Type Name,Nombre del tipo de ausencia,
Max Leaves Allowed,Max Licencias Permitidas,
Applicable After (Working Days),Aplicable Después (Días Laborables),
Maximum Continuous Days Applicable,Máximo de días continuos aplicables,
Is Optional Leave,Es una Licencia Opcional,
Allow Negative Balance,Permitir Saldo Negativo,
Include holidays within leaves as leaves,Incluir las vacaciones y ausencias únicamente como ausencias,
Is Compensatory,Es Compensatorio,
Maximum Carry Forwarded Leaves,Máximo transporte de hojas enviadas,
Expire Carry Forwarded Leaves (Days),Caducar Llevar hojas reenviadas (días),
Calculated in days,Calculado en días,
Encashment,Cobro,
Allow Encashment,Permitir el Cobro,
Encashment Threshold Days,Días de Umbral de Cobro,
Earned Leave,Ausencia Ganada,
Is Earned Leave,Es Licencia Ganada,
Earned Leave Frequency,Frecuencia de Licencia Ganada,
Rounding,Redondeo,
Payroll Employee Detail,Detalle de la Nómina del Empleado,
Payroll Frequency,Frecuencia de la Nómina,
Fortnightly,Quincenal,
Bimonthly,Bimensual,
Employees,Empleados,
Number Of Employees,Número de Empleados,
Employee Details,Detalles del Empleado,
Validate Attendance,Validar la Asistencia,
Salary Slip Based on Timesheet,Nomina basada horas,
Select Payroll Period,Seleccione el Período de Nómina,
Deduct Tax For Unclaimed Employee Benefits,Deducir Impuestos para beneficios de Empleados no Reclamados,
Deduct Tax For Unsubmitted Tax Exemption Proof,Deducir impuestos por soporte de exención de impuestos sin enviar,
Select Payment Account to make Bank Entry,Seleccionar la cuenta de pago para hacer la entrada del Banco,
Salary Slips Created,Salario Slips creado,
Salary Slips Submitted,Nómina Salarial Validada,
Payroll Periods,Períodos de Nómina,
Payroll Period Date,Fecha del Período de la Nómina,
Purpose of Travel,Propósito de Viaje,
Retention Bonus,Bonificación de Retención,
Bonus Payment Date,Fecha de Pago de Bonificación,
Bonus Amount,Monto de la Bonificación,
Abbr,Abreviatura,
Depends on Payment Days,Depende de los días de pago,
Is Tax Applicable,Es Impuesto Aplicable,
Variable Based On Taxable Salary,Variable basada en el Salario Imponible,
Exempted from Income Tax,Exento del impuesto sobre la renta,
Round to the Nearest Integer,Redondear al entero más cercano,
Statistical Component,Componente estadístico,
"If selected, the value specified or calculated in this component will not contribute to the earnings or deductions. However, it's value can be referenced by other components that can be added or deducted. ","Si se selecciona, el valor especificado o calculado en este componente no contribuirá a las ganancias o deducciones. Sin embargo, su valor puede ser referenciado por otros componentes que se pueden agregar o deducir.",
Do Not Include in Total,No incluir en total,
Flexible Benefits,Beneficios Flexibles,
Is Flexible Benefit,Es un Beneficio Flexible,
Max Benefit Amount (Yearly),Monto de Beneficio Máximo (Anual),
Only Tax Impact (Cannot Claim But Part of Taxable Income),"Solo impacto impositivo (no se puede reclamar, pero parte de los ingresos imponibles)",
Create Separate Payment Entry Against Benefit Claim,Crear una Entrada de Pago separada contra la Reclamación de Beneficios,
Condition and Formula,Condición y Fórmula,
Amount based on formula,Cantidad basada en fórmula,
Formula,Fórmula,
Salary Detail,Detalle de Sueldos,
Component,Componente,
Do not include in total,No incluir en total,
Default Amount,Importe por defecto,
Additional Amount,Monto adicional,
Tax on flexible benefit,Impuesto sobre el Beneficio Flexible,
Tax on additional salary,Impuesto sobre el Salario Adicional,
Salary Structure,Estructura salarial,
Working Days,Días de Trabajo,
Salary Slip Timesheet,Registro de Horas de Nómina,
Total Working Hours,Horas de trabajo total,
Hour Rate,Salario por hora,
Bank Account No.,Cta. bancaria núm.,
Earning & Deduction,Ingresos y Deducciones,
Earnings,Ganancias,
Deductions,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,
Total in words,Total en palabras,
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.,
Salary Component for timesheet based payroll.,Componente de salario para la nómina basada en hoja de salario.,
Leave Encashment Amount Per Day,Deje la cantidad de dinero en efectivo por día,
Max Benefits (Amount),Beneficios Máximos (Cantidad),
Salary breakup based on Earning and Deduction.,Calculo de salario basado en los ingresos y deducciones,
Total Earning,Ganancia Total,
Salary Structure Assignment,Asignación de Estructura Salarial,
Shift Assignment,Asignación de Turno,
Shift Type,Tipo de Cambio,
Shift Request,Solicitud de Turno,
Enable Auto Attendance,Habilitar asistencia automática,
Mark attendance based on 'Employee Checkin' for Employees assigned to this shift.,Marque la asistencia basada en &#39;Registro de empleados&#39; para los empleados asignados a este turno.,
Auto Attendance Settings,Configuraciones de asistencia automática,
Determine Check-in and Check-out,Determinar el check-in y el check-out,
Alternating entries as IN and OUT during the same shift,Alternar entradas como IN y OUT durante el mismo turno,
Strictly based on Log Type in Employee Checkin,Estrictamente basado en el tipo de registro en el registro de empleados,
Working Hours Calculation Based On,Cálculo de horas de trabajo basado en,
First Check-in and Last Check-out,Primer check-in y último check-out,
Every Valid Check-in and Check-out,Cada entrada y salida válidas,
Begin check-in before shift start time (in minutes),Comience el check-in antes de la hora de inicio del turno (en minutos),
The time before the shift start time during which Employee Check-in is considered for attendance.,El tiempo antes de la hora de inicio del turno durante el cual se considera la asistencia del Empleado Check-in.,
Allow check-out after shift end time (in minutes),Permitir la salida después de la hora de finalización del turno (en minutos),
Time after the end of shift during which check-out is considered for attendance.,Tiempo después del final del turno durante el cual se considera la salida para la asistencia.,
Working Hours Threshold for Half Day,Umbral de horas de trabajo para medio día,
Working hours below which Half Day is marked. (Zero to disable),Horas de trabajo por debajo de las cuales se marca Medio día. (Cero para deshabilitar),
Working Hours Threshold for Absent,Umbral de horas de trabajo para ausentes,
Working hours below which Absent is marked. (Zero to disable),Horas de trabajo por debajo de las cuales se marca Ausente. (Cero para deshabilitar),
Process Attendance After,Asistencia al proceso después,
Attendance will be marked automatically only after this date.,La asistencia se marcará automáticamente solo después de esta fecha.,
Last Sync of Checkin,Última sincronización de registro,
Last Known Successful Sync of Employee Checkin. Reset this only if you are sure that all Logs are synced from all the locations. Please don't modify this if you are unsure.,Última sincronización exitosa conocida del registro de empleados. Restablezca esto solo si está seguro de que todos los registros están sincronizados desde todas las ubicaciones. No modifique esto si no está seguro.,
Grace Period Settings For Auto Attendance,Configuración del período de gracia para asistencia automática,
Enable Entry Grace Period,Habilitar período de gracia de entrada,
Late Entry Grace Period,Período de gracia de entrada tardía,
The time after the shift start time when check-in is considered as late (in minutes).,El tiempo después del horario de inicio del turno cuando el check-in se considera tarde (en minutos).,
Enable Exit Grace Period,Habilitar el período de gracia de salida,
Early Exit Grace Period,Período de gracia de salida temprana,
The time before the shift end time when check-out is considered as early (in minutes).,El tiempo antes de la hora de finalización del turno cuando el check-out se considera temprano (en minutos).,
Skill Name,nombre de la habilidad,
Staffing Plan Details,Detalles del plan de dotación de personal,
Staffing Plan Detail,Detalle del plan de personal,
Total Estimated Budget,Presupuesto Total Estimado,
Vacancies,Vacantes,
Estimated Cost Per Position,Costo Estimado por Posición,
Total Estimated Cost,Costo Total Estimado,
Current Count,Recuento Actual,
Current Openings,Aperturas Actuales,
Number Of Positions,Numero de Posiciones,
Taxable Salary Slab,Losa Salarial Imponible,
From Amount,Desde Monto,
To Amount,Al Monto,
Percent Deduction,Deducción Porcentual,
Training Program,Programa de Entrenamiento,
Event Status,Estado de Eventos,
Has Certificate,Tiene Certificado,
Seminar,Seminario,
Theory,Teoría,
Workshop,Taller,
Conference,Conferencia,
Exam,Examen,
Internet,Internet,
Self-Study,Autoestudio,
Advance,Avanzar,
Trainer Name,Nombre del entrenador,
Trainer Email,Correo electrónico del entrenador,
Attendees,Asistentes,
Employee Emails,Correos Electrónicos del Empleado,
Training Event Employee,Evento de Formación de los trabajadores,
Invited,Invitado,
Feedback Submitted,Retroalimentación enviada,
Optional,Opcional,
Training Result Employee,Resultado del Entrenamiento del Empleado,
Travel Itinerary,Itinerario de Viaje,
Travel From,Viajar Desde,
Travel To,Viajar a,
Mode of Travel,Modo de Viaje,
Flight,Vuelo,
Train,Entrenamiento,
Taxi,Taxi,
Rented Car,Auto Rentado,
Meal Preference,preferencia de comida,
Vegetarian,Vegetariano,
Non-Vegetarian,No Vegetariano,
Gluten Free,Sin Gluten,
Non Diary,No diario,
Travel Advance Required,Se Requiere Avance de Viaje,
Departure Datetime,Hora de Salida,
Arrival Datetime,Fecha y hora de llegada,
Lodging Required,Alojamiento Requerido,
Preferred Area for Lodging,Área preferida para alojamiento,
Check-in Date,Comprobar en la Fecha,
Check-out Date,Echa un vistazo a la Fecha,
Travel Request,Solicitud de Viaje,
Travel Type,Tipo de Viaje,
Domestic,Nacional,
International,Internacional,
Travel Funding,Financiación de Viajes,
Require Full Funding,Requerir Fondos Completos,
Fully Sponsored,Totalmente Patrocinado,
"Partially Sponsored, Require Partial Funding","Parcialmente Patrocinado, Requiere Financiación Parcial",
Copy of Invitation/Announcement,Copia de Invitación / Anuncio,
"Details of Sponsor (Name, Location)","Detalles del Patrocinador (Nombre, Ubicación)",
Identification Document Number,Numero de Documento de Identificacion,
Any other details,Cualquier otro detalle,
Costing Details,Detalles de Costos,
Costing,Presupuesto,
Event Details,Detalles del Evento,
Name of Organizer,Nombre del Organizador,
Address of Organizer,Dirección del Organizador,
Travel Request Costing,Costo de Solicitud de Viaje,
Expense Type,Tipo de Gasto,
Sponsored Amount,Monto Patrocinado,
Funded Amount,Cantidad Financiada,
Upload Attendance,Subir Asistencia,
Attendance From Date,Asistencia desde fecha,
Attendance To Date,Asistencia a la Fecha,
Get Template,Obtener Plantilla,
Import Attendance,Asistente de importación,
Upload HTML,Subir HTML,
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,
HR-VLOG-.YYYY.-,HR-VLOG-.YYYY.-,
Odometer Reading,Lectura del podómetro,
Current Odometer value ,Valor actual del cuentakilómetros,
last Odometer Value ,último valor del cuentakilómetros,
Refuelling Details,Detalles de repostaje,
Invoice Ref,Referencia de Factura,
Service Details,Detalles del servicio,
Service Detail,Detalle del servicio,
Vehicle Service,Servicio del Vehículo,
Service Item,Artículo de servicio,
Brake Oil,Aceite de Frenos,
Brake Pad,Pastilla de Freno,
Clutch Plate,Placa de embrague,
Engine Oil,Aceite de Motor,
Oil Change,Cambio de aceite,
Inspection,Inspección,
Mileage,Kilometraje,
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,
Member,Miembro,
Partially Disbursed,Parcialmente Desembolsado,
Loan Closure Requested,Cierre de préstamo solicitado,
Repay From Salary,Reembolso del Salario,
Loan Details,Detalles de préstamo,
Loan Type,Tipo de préstamo,
Loan Amount,Monto del préstamo,
Is Secured Loan,Es un préstamo garantizado,
Rate of Interest (%) / Year,Tasa de interés (%) / Año,
Disbursement Date,Fecha de desembolso,
Disbursed Amount,Monto desembolsado,
Is Term Loan,¿Es el préstamo a plazo,
Repayment Method,Método de Reembolso,
Repay Fixed Amount per Period,Pagar una Cantidad Fja por Período,
Repay Over Number of Periods,Devolución por cantidad de períodos,
Repayment Period in Months,Plazo de devolución en Meses,
Monthly Repayment Amount,Cantidad de pago mensual,
Repayment Start Date,Fecha de Inicio de Pago,
Loan Security Details,Detalles de seguridad del préstamo,
Maximum Loan Value,Valor máximo del préstamo,
Account Info,Informacion de cuenta,
Loan Account,Cuenta de Préstamo,
Interest Income Account,Cuenta de Utilidad interés,
Penalty Income Account,Cuenta de ingresos por penalizaciones,
Repayment Schedule,Calendario de reembolso,
Total Payable Amount,Monto Total a Pagar,
Total Principal Paid,Total principal pagado,
Total Interest Payable,Interés total a pagar,
Total Amount Paid,Cantidad Total Pagada,
Loan Manager,Gerente de préstamos,
Loan Info,Información del Préstamo,
Rate of Interest,Tasa de interés,
Proposed Pledges,Prendas Propuestas,
Maximum Loan Amount,Cantidad máxima del préstamo,
Repayment Info,Información de la Devolución,
Total Payable Interest,Interés Total a Pagar,
Against Loan ,Contra préstamo,
Loan Interest Accrual,Devengo de intereses de préstamos,
Amounts,Cantidades,
Pending Principal Amount,Monto principal pendiente,
Payable Principal Amount,Monto del principal a pagar,
Paid Principal Amount,Monto principal pagado,
Paid Interest Amount,Monto de interés pagado,
Process Loan Interest Accrual,Proceso de acumulación de intereses de préstamos,
Repayment Schedule Name,Nombre del programa de pago,
Regular Payment,Pago regular,
Loan Closure,Cierre de préstamo,
Payment Details,Detalles del Pago,
Interest Payable,Los intereses a pagar,
Amount Paid,Total Pagado,
Principal Amount Paid,Importe principal pagado,
Repayment Details,Detalles de reembolso,
Loan Repayment Detail,Detalle de reembolso del préstamo,
Loan Security Name,Nombre de seguridad del préstamo,
Unit Of Measure,Unidad de medida,
Loan Security Code,Código de seguridad del préstamo,
Loan Security Type,Tipo de seguridad de préstamo,
Haircut %,Corte de pelo %,
Loan  Details,Detalles del préstamo,
Unpledged,Sin plegar,
Pledged,Comprometido,
Partially Pledged,Parcialmente comprometido,
Securities,Valores,
Total Security Value,Valor total de seguridad,
Loan Security Shortfall,Déficit de seguridad del préstamo,
Loan ,Préstamo,
Shortfall Time,Tiempo de déficit,
America/New_York,América / Nueva_York,
Shortfall Amount,Cantidad de déficit,
Security Value ,Valor de seguridad,
Process Loan Security Shortfall,Déficit de seguridad del préstamo de proceso,
Loan To Value Ratio,Préstamo a valor,
Unpledge Time,Desplegar tiempo,
Loan Name,Nombre del préstamo,
Rate of Interest (%) Yearly,Tasa de interés (%) Anual,
Penalty Interest Rate (%) Per Day,Tasa de interés de penalización (%) por día,
Penalty Interest Rate is levied on the pending interest amount on a daily basis in case of delayed repayment ,La tasa de interés de penalización se aplica diariamente sobre el monto de interés pendiente en caso de reembolso retrasado,
Grace Period in Days,Período de gracia en días,
No. of days from due date until which penalty won't be charged in case of delay in loan repayment,Cantidad de días desde la fecha de vencimiento hasta la cual no se cobrará la multa en caso de retraso en el pago del préstamo,
Pledge,Promesa,
Post Haircut Amount,Cantidad de post corte de pelo,
Process Type,Tipo de proceso,
Update Time,Tiempo de actualizacion,
Proposed Pledge,Compromiso propuesto,
Total Payment,Pago total,
Balance Loan Amount,Saldo del balance del préstamo,
Is Accrued,Está acumulado,
Salary Slip Loan,Préstamo de Nómina,
Loan Repayment Entry,Entrada de reembolso de préstamo,
Sanctioned Loan Amount,Monto de préstamo sancionado,
Sanctioned Amount Limit,Límite de cantidad sancionada,
Unpledge,Desatar,
Haircut,Corte de pelo,
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,
May,Mayo,
June,junio,
July,julio,
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,
Select Transaction,Seleccione el tipo de transacción,
Help HTML,Ayuda 'HTML',
Series List for this Transaction,Lista de secuencias para esta transacción,
User must always select,El usuario deberá elegir siempre,
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Seleccione esta opción si desea obligar al usuario a seleccionar una serie antes de guardar. No habrá ninguna por defecto si marca ésta casilla.,
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.,
Prefix,Prefijo,
Current Value,Valor actual,
This is the number of the last created transaction with this prefix,Este es el número de la última transacción creada con este prefijo,
Update Series Number,Actualizar número de serie,
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 overrridden,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,
Bank Remittance,Giro Bancario,
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,
Daily Work Summary Replies,Respuestas Diarias del Resumen del Trabajo,
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 Advance Summary,Resumen de Avance del Empleado,
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,
Employees working on a holiday,Empleados que trabajan en un día festivo,
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,
Loan Repayment and Closure,Reembolso y cierre de préstamos,
Loan Security Status,Estado de seguridad del préstamo,
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,
Monthly Attendance Sheet,Hoja de Asistencia mensual,
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,
Salary Register,Registro de Salario,
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,
Unpaid Expense Claim,Reclamación de gastos no pagados,
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,
Validation Error,Error de validacion,
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},
Payment Account is mandatory,La cuenta de pago es obligatoria,
"If checked, the full amount will be deducted from taxable income before calculating income tax without any declaration or proof submission.","Si está marcado, el monto total se deducirá de la renta imponible antes de calcular el impuesto sobre la renta sin ninguna declaración o presentación de prueba.",
Disbursement Details,Detalles del desembolso,
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:,
Andaman and Nicobar Islands,Islas Andaman y Nicobar,
Andhra Pradesh,Andhra Pradesh,
Arunachal Pradesh,Arunachal Pradesh,
Assam,Assam,
Bihar,Bihar,
Chandigarh,Chandigarh,
Chhattisgarh,Chhattisgarh,
Dadra and Nagar Haveli,Dadra y Nagar Haveli,
Daman and Diu,Daman y Diu,
Delhi,Delhi,
Goa,Ir a,
Gujarat,Gujarat,
Haryana,Haryana,
Himachal Pradesh,Himachal Pradesh,
Jammu and Kashmir,Jammu y Cachemira,
Jharkhand,Jharkhand,
Karnataka,Karnataka,
Kerala,Kerala,
Lakshadweep Islands,Islas Lakshadweep,
Madhya Pradesh,Madhya Pradesh,
Maharashtra,Maharashtra,
Manipur,Manipur,
Meghalaya,Meghalaya,
Mizoram,Mizoram,
Nagaland,Nagaland,
Odisha,Odisha,
Other Territory,Otro territorio,
Pondicherry,Pondicherry,
Punjab,Punjab,
Rajasthan,Rajastán,
Sikkim,Sikkim,
Tamil Nadu,Tamil Nadu,
Telangana,Telangana,
Tripura,Tripura,
Uttar Pradesh,Uttar Pradesh,
Uttarakhand,Uttarakhand,
West Bengal,al oeste de Bengala,
Is Mandatory,Es obligatorio,
Published on,Publicado en,
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,
Bottom,Fondo,
Top,Parte superior,
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.-,
In Time,A tiempo,
Out Time,Fuera de tiempo,
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,
PAN Number,Número PAN,
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,
Expired Leaves,Hojas caducadas,
Reference No,Numero de referencia,
Haircut percentage is the percentage difference between market value of the Loan Security and the value ascribed to that Loan Security when used as collateral for that loan.,El porcentaje de quita es la diferencia porcentual entre el valor de mercado de la Garantía de Préstamo y el valor atribuido a esa Garantía de Préstamo cuando se utiliza como garantía para ese préstamo.,
Loan To Value Ratio expresses the ratio of the loan amount to the value of the security pledged. A loan security shortfall will be triggered if this falls below the specified value for any loan ,La relación entre préstamo y valor expresa la relación entre el monto del préstamo y el valor del valor comprometido. Se activará un déficit de seguridad del préstamo si este cae por debajo del valor especificado para cualquier préstamo,
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,
Is Recurring,Es recurrente,
HRA Exemption,Exención de HRA,
Monthly House Rent,Alquiler mensual de la casa,
Rented in Metro City,Alquilado en Metro City,
HRA as per Salary Structure,HRA según estructura salarial,
Annual HRA Exemption,Exención anual de la HRA,
Monthly HRA Exemption,Exención mensual de HRA,
House Rent Payment Amount,Monto del pago del alquiler de la casa,
Rented From Date,Alquilado desde la fecha,
Rented To Date,Alquilado hasta la fecha,
Monthly Eligible Amount,Cantidad elegible mensual,
Total Eligible HRA Exemption,Exención total elegible de HRA,
Validating Employee Attendance...,Validación de la asistencia de los empleados ...,
Submitting Salary Slips and creating Journal Entry...,Envío de nóminas y creación de asientos de diario ...,
Calculate Payroll Working Days Based On,Calcule los días laborables de la nómina en función de,
Consider Unmarked Attendance As,Considere la asistencia no marcada como,
Fraction of Daily Salary for Half Day,Fracción del salario diario por medio día,
Component Type,Tipo de componente,
Provident Fund,fondo de Previsión,
Additional Provident Fund,Fondo de previsión adicional,
Provident Fund Loan,Préstamo del fondo de previsión,
Professional Tax,Impuesto profesional,
Is Income Tax Component,Es el componente del impuesto sobre la renta,
Component properties and references ,Propiedades y referencias de componentes,
Additional Salary ,Salario adicional,
Unmarked days,Días sin marcar,
Absent Days,Días ausentes,
Conditions and Formula variable and example,Condiciones y variable de fórmula y ejemplo,
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,
Income Tax Deductions,Deducciones del impuesto sobre la renta,
Income Tax Component,Componente de impuesto sobre la renta,
Income Tax Amount,Importe del impuesto sobre la renta,
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,
Unmarked Days,Días sin marcar,
Jan,ene,
Feb,feb,
Mar,mar,
Apr,abr,
Aug,ago,
Sep,sep,
Oct,oct,
Nov,nov,
Dec,dic,
Summarized View,Vista resumida,
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,
Professional Tax Deductions,Deducciones fiscales profesionales,
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,
Provident Fund Deductions,Deducciones del fondo de previsió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,
Recruitment Analytics,Análisis de contratación,
Applicant name,Nombre del solicitante,
Job Offer status,Estado de la oferta de trabajo,
On Date,A tiempo,
Requested Items to Order and Receive,Artículos solicitados para ordenar y recibir,
Salary Payments Based On Payment Mode,Pagos de salario basados en el modo de pago,
Salary Payments via ECS,Pagos de salario a través de ECS,
Account No,Cuenta No,
IFSC,IFSC,
MICR,MICR,
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,
PF Account,Cuenta PF,
PF Amount,Monto PF,
Additional PF,PF adicional,
PF Loan,Préstamo PF,
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},
Duplicate Entry,Entrada duplicada,
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 select Employee first.,Primero seleccione Empleado.,
Please set {0} for the Employee or for Department: {1},Configure {0} para el empleado o para el departamento: {1},
To Date should be greater than From Date,Hasta la fecha debe ser mayor que desde la fecha,
Employee Onboarding: {0} is already for Job Applicant: {1},Incorporación de empleados: {0} ya es para el solicitante de empleo: {1},
Job Offer: {0} is already for Job Applicant: {1},Oferta de trabajo: {0} ya es para el solicitante de empleo: {1},
Only Shift Request with status 'Approved' and 'Rejected' can be submitted,Solo se puede enviar una solicitud de turno con el estado &#39;Aprobado&#39; y &#39;Rechazado&#39;,
Shift Assignment: {0} created for Employee: {1},Asignación de turno: {0} creado para Empleado: {1},
You can not request for your Default Shift: {0},No puede solicitar su turno predeterminado: {0},
Only Approvers can Approve this Request.,Solo los aprobadores pueden aprobar esta solicitud.,
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,
Loan Security {0} added multiple times,Seguridad de préstamo {0} agregada varias veces,
Loan Securities with different LTV ratio cannot be pledged against one loan,Los valores de préstamo con diferente ratio LTV no se pueden pignorar contra un préstamo,
Qty or Amount is mandatory for loan security!,¡La cantidad o cantidad es obligatoria para la seguridad del préstamo!,
Only submittted unpledge requests can be approved,Solo se pueden aprobar las solicitudes de desacuerdo enviadas,
Interest Amount or Principal Amount is mandatory,El monto de interés o el monto principal es obligatorio,
Disbursed Amount cannot be greater than {0},El monto desembolsado no puede ser mayor que {0},
Row {0}: Loan Security {1} added multiple times,Fila {0}: garantía de préstamo {1} agregada varias veces,
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,
Please set Payroll based on in Payroll settings,Establezca Nómina en función de la configuración de Nómina,
Additional Salary: {0} already exist for Salary Component: {1} for period {2} and {3},Salario adicional: {0} ya existe para el componente de salario: {1} para el período {2} y {3},
From Date can not be greater than To Date.,Desde la fecha no puede ser mayor que hasta la fecha.,
Payroll date can not be less than employee's joining date.,La fecha de la nómina no puede ser menor que la fecha de incorporación del empleado.,
From date can not be less than employee's joining date.,La fecha de inicio no puede ser menor que la fecha de incorporación del empleado.,
To date can not be greater than employee's relieving date.,Hasta la fecha no puede ser mayor que la fecha de relevo del empleado.,
Payroll date can not be greater than employee's relieving date.,La fecha de nómina no puede ser mayor que la fecha de relevo del empleado.,
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,
Condition and formula,Condición y fórmula,
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 {}.,
