"""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,
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 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,
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,
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 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 Reqd by Date,Ingrese Requerido por Fecha,
Please enter Woocommerce Server URL,Ingrese la URL del servidor WooCommerce,
Please enter Write Off Account,"Por favor, ingrese la cuenta de desajuste",
Please enter atleast 1 invoice in the table,"Por favor, introduzca al menos 1 factura en la tabla",
Please enter company first,"Por favor, ingrese primero la compañía",
Please enter company name first,"Por favor, ingrese el nombre de la compañia",
Please enter default currency in Company Master,"Por favor, ingrese la divisa por defecto en la compañía principal",
Please enter message before sending,"Por favor, ingrese el mensaje antes de enviarlo",
Please enter parent cost center,"Por favor, ingrese el centro de costos principal",
Please enter quantity for Item {0},"Por favor, ingrese la cantidad para el producto {0}",
Please enter relieving date.,"Por favor, introduzca la fecha de relevo",
Please enter valid Financial Year Start and End Dates,"Por favor, introduzca fecha de Inicio y Fin válidas para el Año Fiscal",
Please enter valid email address,Por favor ingrese una dirección de correo electrónico válida,
Please enter {0} first,"Por favor, introduzca {0} primero",
Please fill in all the details to generate Assessment Result.,Complete todos los detalles para generar el resultado de la evaluación.,
Please identify/create Account (Group) for type - {0},Identifique / cree una cuenta (grupo) para el tipo - {0},
Please identify/create Account (Ledger) for type - {0},Identifique / cree una cuenta (Libro mayor) para el tipo - {0},
Please login as another user to register on Marketplace,Inicie sesión como otro usuario para registrarse en Marketplace,
Please make sure you really want to delete all the transactions for this company. Your master data will remain as it is. This action cannot be undone.,"Por favor, asegurate de que realmente desea borrar todas las transacciones de esta compañía. Sus datos maestros permanecerán intactos. Esta acción no se puede deshacer.",
Please mention Basic and HRA component in Company,Mencione el componente básico y HRA en la empresa,
Please mention Round Off Account in Company,"Por favor, indique la cuenta que utilizará para el redondeo",
Please mention Round Off Cost Center in Company,"Por favor, indique las centro de costos de redondeo",
Please mention no of visits required,"Por favor, indique el numero de visitas requeridas",
Please mention the Lead Name in Lead {0},Por favor mencione el nombre principal en la iniciativa {0},
Please pull items from Delivery Note,"Por favor, extraiga los productos de la nota de entrega",
Please register the SIREN number in the company information file,Registre el número SIREN en el archivo de información de la empresa,
Please remove this Invoice {0} from C-Form {1},"Por favor, elimine esta factura {0} de C-Form {1}",
Please save the patient first,Por favor guarde al paciente primero,
Please save the report again to rebuild or update,Guarde el informe nuevamente para reconstruir o actualizar,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Por favor seleccione el monto asignado, tipo de factura y número en una fila",
Please select Apply Discount On,Por favor seleccione 'Aplicar descuento en',
Please select BOM against item {0},Seleccione la Lista de Materiales contra el Artículo {0},
Please select BOM for Item in Row {0},"Por favor, seleccione la lista de materiales para el artículo en la fila {0}",
Please select BOM in BOM field for Item {0},"Por favor, seleccione la lista de materiales (LdM) para el producto {0}",
Please select Category first,"Por favor, seleccione primero la categoría",
Please select Charge Type first,"Por favor, seleccione primero el tipo de cargo",
Please select Company,"Por favor, seleccione la empresa",
Please select Company and 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,
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 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,
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 exists in the dashboard chart {1},La cuenta {0} no existe en el cuadro de mandos {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Cuenta: <b>{0}</b> es capital Trabajo en progreso y no puede actualizarse mediante Entrada de diario,
Account: {0} is not permitted under Payment Entry,Cuenta: {0} no está permitido en Entrada de pago,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,La dimensión contable <b>{0}</b> es necesaria para la cuenta &#39;Balance&#39; {1}.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,La dimensión contable <b>{0}</b> es necesaria para la cuenta &#39;Ganancias y pérdidas&#39; {1}.,
Accounting Masters,Maestros Contables,
Accounting Period overlaps with {0},El período contable se superpone con {0},
Activity,Actividad,
Add / Manage Email Accounts.,Añadir / Administrar cuentas de correo electrónico.,
Add Child,Agregar hijo,
Add Multiple,Añadir Multiple,
Add Participants,Agregar Participantes,
Add to Featured Item,Agregar al artículo destacado,
Add your review,Agrega tu evaluación,
Add/Edit Coupon Conditions,Agregar / editar condiciones de cupón,
Added to Featured Items,Agregado a elementos destacados,
Added {0} ({1}),Añadido: {0} ({1}),
Address Line 1,Dirección línea 1,
Addresses,Direcciones,
Admission End Date should be greater than Admission Start Date.,La fecha de finalización de la admisión debe ser mayor que la fecha de inicio de la admisión.,
All,Todos,
All bank transactions have been created,Se han creado todas las transacciones bancarias.,
All the depreciations has been booked,Todas las amortizaciones han sido registradas,
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,
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 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 Applications from customers and employees.,Solicitudes de préstamos de clientes y empleados.,
Loan Processes,Procesos de préstamo,
Loan Type for interest and penalty rates,Tipo de préstamo para tasas de interés y multas,
Loans,Préstamos,
Loans provided to customers and employees.,Préstamos otorgados a clientes y empleados.,
Location,Ubicación,
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,
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 Customer first,Por favor seleccione Cliente primero,
Please select Item Code first,Seleccione primero el código del artículo,
Please select a Delivery Note,Por favor seleccione una nota de entrega,
Please select a Sales Person for item: {0},Seleccione una persona de ventas para el artículo: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Seleccione otro método de pago. Stripe no admite transacciones en moneda &#39;{0}&#39;,
Please select the customer.,Por favor seleccione el cliente.,
Please set a Supplier against the Items to be considered in the Purchase Order.,Establezca un Proveedor contra los Artículos que se considerarán en la Orden de Compra.,
Please set account heads in GST Settings for Compnay {0},Configure los encabezados de las cuentas en la configuración de GST para Compnay {0},
Please set an email id for the Lead {0},Configure una identificación de correo electrónico para el Cliente potencial {0},
Please set default UOM in Stock Settings,Configure la UOM predeterminada en la configuración de stock,
Please set filter based on Item or Warehouse due to a large amount of entries.,Configure el filtro en función del artículo o almacén debido a una gran cantidad de entradas.,
Please set up the Campaign Schedule in the Campaign {0},Configure la programación de la campaña en la campaña {0},
Please set valid GSTIN No. in Company Address for company {0},Establezca un número GSTIN válido en la dirección de la empresa para la empresa {0},
Please set {0},Por favor establezca {0},customer
Please setup a default bank account for company {0},Configure una cuenta bancaria predeterminada para la empresa {0},
Please specify,"Por favor, especifique",
Please specify a {0},"Por favor, especifique un {0}",lead
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,
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,
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,
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},
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,
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,
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,
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,
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,
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,
Repay From Salary,Reembolso del Salario,
Regular Payment,Pago regular,
Loan Closure,Cierre de préstamo,
Rate of Interest (%) Yearly,Tasa de interés (%) Anual,
Salary Slip Loan,Préstamo de Nómina,
Loan Repayment Entry,Entrada de reembolso de préstamo,
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,
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,
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.",
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,
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,
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 {}.,
