"""Customer Provided Item"" cannot be Purchase Item also","El ""artículo proporcionado por el cliente"" no puede ser un artículo de compra también",
"""Customer Provided Item"" cannot have Valuation Rate","El ""artículo proporcionado por el cliente"" no puede tener una tasa de valoración",
"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","""Es activo fijo"" no puede estar sin marcar, ya que existe registro de activos contra el elemento",
'Based On' and 'Group By' can not be same,'Basado en' y 'Agrupar por' no pueden ser iguales,
'Days Since Last Order' must be greater than or equal to zero,'Días desde la última orden' debe ser mayor que o igual a cero,
'Entries' cannot be empty,'Entradas' no pueden estar vacías,
'From Date' is required,'Desde la fecha' es requerido,
'From Date' must be after 'To Date','Desde la fecha' debe ser después de 'Hasta Fecha',
'Has Serial No' can not be 'Yes' for non-stock item,"'Posee numero de serie' no puede ser ""Sí"" para los productos que NO son de stock",
'Opening',&#39;Apertura&#39;,
'To Case No.' cannot be less than 'From Case No.','Hasta el caso nº' no puede ser menor que 'Desde el caso nº',
'To Date' is required,'Hasta la fecha' es requerido,
'Total',&#39;Total&#39;,
'Update Stock' can not be checked because items are not delivered via {0},'Actualizar existencias' no puede marcarse porque los artículos no se han entregado mediante {0},
'Update Stock' cannot be checked for fixed asset sale,'Actualización de Inventario' no se puede comprobar en venta de activos fijos,
1 exact match.,1 coincidencia exacta,
90-Above,90 o más,
A Customer Group exists with same name please change the Customer name or rename the Customer Group,Existe una categoría de cliente con el mismo nombre. Por favor cambie el nombre de cliente o renombre la categoría de cliente,
A Default Service Level Agreement already exists.,Ya existe un Acuerdo de nivel de servicio predeterminado.,
A Lead requires either a person's name or an organization's name,Un cliente potencial requiere el nombre de una persona o el nombre de una organización,
A customer with the same name already exists,Ya existe un cliente con el mismo nombre,
A question must have more than one options,Una pregunta debe tener más de una opción.,
A qustion must have at least one correct options,Una pregunta debe tener al menos una opción correcta,
A4,A4,
API Endpoint,API Endpoint,
API Key,Clave de API,
Abbr can not be blank or space,La abreviatura no puede estar en blanco o usar espacios,
Abbreviation already used for another company,Abreviatura ya utilizada para otra empresa,
Abbreviation cannot have more than 5 characters,Abreviatura no puede tener más de 5 caracteres,
Abbreviation is mandatory,La abreviatura es obligatoria,
About the Company,Sobre la empresa,
About your company,Sobre su Compañía,
Above,Arriba,
Academic Term,Término académico,
Academic Term: ,Término académico:,
Academic Year,Año académico,
Academic Year: ,Año académico:,
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Cantidad Aceptada + Rechazada debe ser igual a la cantidad Recibida por el Artículo {0},
Access Token,Token de Acceso,
Accessable Value,Valor accesible,
Account,Cuenta,
Account Number,Número de cuenta,
Account Number {0} already used in account {1},Número de cuenta {0} ya usado en la cuenta {1},
Account Pay Only,Sólo cuenta de pago,
Account Type,Tipo de cuenta,
Account Type for {0} must be {1},Tipo de cuenta para {0} debe ser {1},
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Balance de la cuenta ya en Crédito, no le está permitido establecer 'Balance Debe Ser' como 'Débito'",
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Balance de la cuenta ya en Débito, no le está permitido establecer ""Balance Debe Ser"" como ""Crédito""",
Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,El número de cuenta para la cuenta {0} no está disponible. <br> Configure su plan de cuentas correctamente.,
Account with child nodes cannot be converted to ledger,Una cuenta con nodos hijos no puede convertirse en libro mayor,
Account with child nodes cannot be set as ledger,Una cuenta con nodos hijos no puede ser establecida como libro mayor,
Account with existing transaction can not be converted to group.,Cuenta con transacción existente no se puede convertir al grupo.,
Account with existing transaction can not be deleted,Cuenta con transacción existente no se puede eliminar,
Account with existing transaction cannot be converted to ledger,Cuenta con una transacción existente no se puede convertir en el libro mayor,
Account {0} does not belong to company: {1},Cuenta {0} no pertenece a la compañía: {1},
Account {0} does not belongs to company {1},La cuenta {0} no pertenece a la compañía {1},
Account {0} does not exist,Cuenta {0} no existe,
Account {0} does not exists,La cuenta {0} no existe,
Account {0} does not match with Company {1} in Mode of Account: {2},Cuenta {0} no coincide con la Compañía {1}en Modo de Cuenta: {2},
Account {0} has been entered multiple times,Cuenta {0} se ha introducido varias veces,
Account {0} is added in the child company {1},La cuenta {0} se agrega en la empresa secundaria {1},
Account {0} is frozen,La cuenta {0} está congelada,
Account {0} is invalid. Account Currency must be {1},La cuenta {0} no es válida. La divisa de la cuenta debe ser {1},
Account {0}: Parent account {1} can not be a ledger,Cuenta {0}: la cuenta padre {1} no puede ser una cuenta de libro mayor,
Account {0}: Parent account {1} does not belong to company: {2},Cuenta {0}: la cuenta padre {1} no pertenece a la empresa: {2},
Account {0}: Parent account {1} does not exist,Cuenta {0}: la cuenta padre {1} no existe,
Account {0}: You can not assign itself as parent account,Cuenta {0}: no puede asignarse a sí misma como cuenta padre,
Account: {0} can only be updated via Stock Transactions,Cuenta: {0} sólo puede ser actualizada mediante transacciones de inventario,
Account: {0} with currency: {1} can not be selected,Cuenta: {0} con divisa: {1} no puede ser seleccionada,
Accountant,Contador,
Accounting,Contabilidad,
Accounting Entry for Asset,Entrada Contable para Activos,
Accounting Entry for Stock,Asiento contable para inventario,
Accounting Entry for {0}: {1} can only be made in currency: {2},Asiento contable para {0}: {1} sólo puede realizarse con la divisa: {2},
Accounting Ledger,Libro de contabilidad,
Accounting journal entries.,Asientos en el diario de contabilidad.,
Accounts,Cuentas,
Accounts Manager,Gerente de Cuentas,
Accounts Payable,Cuentas por pagar,
Accounts Payable Summary,Balance de cuentas por pagar,
Accounts Receivable,Cuentas por cobrar,
Accounts Receivable Summary,Balance de cuentas por cobrar,
Accounts User,Cuentas de Usuario,
Accounts table cannot be blank.,La tabla de cuentas no puede estar en blanco,
Accumulated Depreciation,Depreciación acumulada,
Accumulated Depreciation Amount,Depreciación acumulada Importe,
Accumulated Depreciation as on,La depreciación acumulada como en,
Accumulated Monthly,acumulado Mensual,
Accumulated Values,Valores acumulados,
Accumulated Values in Group Company,Valores Acumulados en el Grupo de la Empresa,
Achieved ({}),Logrado ({}),
Action,Acción,
Action Initialised,Acción inicializada,
Actions,Acciones,
Active,Activo,
Activity Cost exists for Employee {0} against Activity Type - {1},Existe un coste de actividad para el empleado {0} contra el tipo de actividad - {1},
Activity Cost per Employee,Coste de actividad por empleado,
Activity Type,Tipo de actividad,
Actual Cost,Costo real,
Actual Delivery Date,Fecha de entrega real,
Actual Qty,Cantidad Real,
Actual Qty is mandatory,La cantidad real es obligatoria,
Actual Qty {0} / Waiting Qty {1},Cantidad real {0} / Cantidad esperada {1},
Actual Qty: Quantity available in the warehouse.,Cantidad actual: Cantidad disponible en el almacén.,
Actual qty in stock,Cantidad real en stock,
Actual type tax cannot be included in Item rate in row {0},El tipo de impuesto real no puede incluirse en la tarifa del artículo en la fila {0},
Add,Agregar,
Add / Edit Prices,Añadir / editar precios,
Add Comment,Agregar comentario,
Add Customers,Agregar Clientes,
Add Employees,Añadir empleados,
Add Item,Añadir artículo,
Add Items,Añadir los artículos,
Add Leads,Añadir Prospectos,
Add Multiple Tasks,Agregar Tareas Múltiples,
Add 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/Remove Recipients,Agregar / Eliminar destinatarios,
Added,Agregado,
Added {0} users,Se agregaron {0} usuarios,
Additional Salary Component Exists.,Componente salarial adicional existe.,
Address,Dirección,
Address Line 2,Dirección línea 2,
Address Name,Nombre de la dirección,
Address Title,Dirección,
Address Type,Tipo de dirección,
Administrative Expenses,GASTOS DE ADMINISTRACIÓN,
Administrative Officer,Funcionario administrativo,
Administrator,Administrador,
Admission,Admisión,
Admission and Enrollment,Admisión e Inscripción,
Admissions for {0},Admisiones para {0},
Admit,Admitir,
Admitted,Aceptado,
Advance Amount,Importe Anticipado,
Advance Payments,Pagos adelantados,
Advance account currency should be same as company currency {0},La moneda de la cuenta adelantada debe ser la misma que la moneda de la empresa {0},
Advance amount cannot be greater than {0} {1},Cantidad de avance no puede ser mayor que {0} {1},
Advertising,Publicidad,
Aerospace,Aeroespacial,
Against,Contra,
Against Account,Contra la cuenta,
Against Journal Entry {0} does not have any unmatched {1} entry,El asiento contable {0} no tiene ninguna entrada {1} que vincular,
Against Journal Entry {0} is already adjusted against some other voucher,El asiento contable {0} ya se encuentra ajustado contra el importe de otro comprobante,
Against Supplier Invoice {0} dated {1},Contra factura de proveedor {0} con fecha{1},
Against Voucher,Contra comprobante,
Against Voucher Type,Tipo de comprobante,
Age,Edad,
Age (Days),Edad (Días),
Ageing Based On,Antigüedad basada en,
Ageing Range 1,Rango de antigüedad 1,
Ageing Range 2,Rango de antigüedad 2,
Ageing Range 3,Rango de antigüedad 3,
Agriculture,Agricultura,
Agriculture (beta),Agricultura (beta),
Airline,Línea aérea,
All Accounts,Todas las cuentas,
All Addresses.,Todas las direcciones.,
All Assessment Groups,Todos los grupos de evaluación,
All BOMs,Todas las listas de materiales,
All Contacts.,Todos los contactos.,
All Customer Groups,Todas las categorías de clientes,
All Day,Todo el Día,
All Departments,Todos los departamentos,
All Healthcare Service Units,Todas las unidades de servicios de salud,
All Item Groups,Todos los grupos de artículos,
All Products,Todos los productos,
All Products or Services.,Todos los productos o servicios.,
All Student Admissions,Todas las admisiones de estudiantes,
All Supplier Groups,Todos los grupos de proveedores,
All Supplier scorecards.,Todas las Evaluaciones del Proveedor,
All Territories,Todos los territorios,
All Warehouses,Todos los almacenes,
All communications including and above this shall be moved into the new Issue,Todas las comunicaciones incluidas y superiores se incluirán en el nuevo Issue,
All items have already been transferred for this Work Order.,Todos los artículos ya han sido transferidos para esta Orden de Trabajo.,
All other ITC,Todos los demás ITC,
All the mandatory Task for employee creation hasn't been done yet.,Las tareas obligatorias para la creación de empleados aún no se han realizado.,
Allocate Payment Amount,Distribuir el Importe de Pago,
Allocated Amount,Monto asignado,
Allocating leaves...,Asignando hojas ...,
Already record exists for the item {0},Ya existe un registro para el artículo {0},
"Already set default in pos profile {0} for user {1}, kindly disabled default","Ya se configuró por defecto en el perfil de pos {0} para el usuario {1}, amablemente desactivado por defecto",
Alternate Item,Artículo Alternativo,
Alternative item must not be same as item code,El artículo alternativo no debe ser el mismo que el código del artículo,
Amended From,Modificado Desde,
Amount,Importe,
Amount After Depreciation,Cantidad Después de Depreciación,
Amount of Integrated Tax,Monto del impuesto integrado,
Amount of TDS Deducted,Cantidad de TDS deducida,
Amount should not be less than zero.,La cantidad no debe ser menor que cero.,
Amount to Bill,Monto a Facturar,
Amount {0} {1} against {2} {3},Monto {0} {1} {2} contra {3},
Amount {0} {1} deducted against {2},Monto {0} {1} deducido contra {2},
Amount {0} {1} transferred from {2} to {3},Monto {0} {1} transferido desde {2} a {3},
Amount {0} {1} {2} {3},Monto {0} {1} {2} {3},
Amt,Monto,
"An Item Group exists with same name, please change the item name or rename the item group","Existe un grupo de elementos con el mismo nombre , por favor, cambie el nombre del artículo , o cambiar el nombre del grupo de artículos",
An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,"Un término académico con este 'Año Académico' {0} y 'Nombre de término' {1} ya existe. Por favor, modificar estas entradas y vuelva a intentarlo.",
An error occurred during the update process,Se produjo un error durante el proceso de actualización,
"An item exists with same name ({0}), please change the item group name or rename the item","Existe un elemento con el mismo nombre ({0} ) , cambie el nombre del grupo de artículos o cambiar el nombre del elemento",
Analyst,Analista,
Analytics,Analítica,
Annual Billing: {0},Facturación anual: {0},
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),
Applied,Aplicado,
Appointment Confirmation,Confirmación de la cita,
Appointment Duration (mins),Duración de la cita (minutos),
Appointment Type,Tipo de cita,
Appointment {0} and Sales Invoice {1} cancelled,La Cita {0} y la Factura de Venta {1} se cancelaron,
Appointments and Encounters,Citas y Encuentros,
Appointments and Patient Encounters,Citas y Encuentros de Pacientes,
Appraisal {0} created for Employee {1} in the given date range,La evaluación {0} creado para el empleado {1} en el rango de fechas determinado,
Approving Role cannot be same as role the rule is Applicable To,El rol que aprueba no puede ser igual que el rol al que se aplica la regla,
Approving User cannot be same as user the rule is Applicable To,El usuario que aprueba no puede ser igual que el usuario para el que la regla es aplicable,
"Apps using current key won't be able to access, are you sure?","Las Aplicaciones que usen la clave actual no podrán acceder, ¿está seguro?",
Are you sure you want to cancel this appointment?,¿Seguro que quieres cancelar esta cita?,
Arrear,Arrear,
As Examiner,Como examinador,
As On Date,A la fecha,
As Supervisor,Como supervisor,
As per rules 42 & 43 of CGST Rules,Según las reglas 42 y 43 de las reglas CGST,
As per section 17(5),Según la sección 17 (5),
Assessment,Evaluación,
Assessment Criteria,Criterios de evaluación,
Assessment Group,Grupo de evaluación,
Assessment Group: ,Grupo de evaluación:,
Assessment Plan,Plan de evaluación,
Assessment Plan Name,Nombre del plan de evaluación,
Assessment Report,Informe de evaluación,
Assessment Reports,Informes de evaluación,
Assessment Result,Resultado de Evaluación,
Assessment Result record {0} already exists.,El registro de Resultados de la Evaluación {0} ya existe.,
Asset,Activo,
Asset Category,Categoría de activos,
Asset Category is mandatory for Fixed Asset item,Categoría activo es obligatorio para la partida del activo fijo,
Asset Maintenance,Mantenimiento de activos,
Asset Movement,Movimiento de Activo,
Asset Movement record {0} created,Movimiento de activo {0} creado,
Asset Name,Nombre de Activo,
Asset Received But Not Billed,Activo recibido pero no facturado,
Asset Value Adjustment,Ajuste del valor del activo,
"Asset cannot be cancelled, as it is already {0}","Activo no se puede cancelar, como ya es {0}",
Asset scrapped via Journal Entry {0},Activos desechado a través de entrada de diario {0},
"Asset {0} cannot be scrapped, as it is already {1}","Activo {0} no puede ser desechado, debido a que ya es {1}",
Asset {0} does not belong to company {1},Activo {0} no pertenece a la empresa {1},
Asset {0} must be submitted,Activo {0} debe ser enviado,
Assets,Bienes,
Assign To,Asignar a,
Associate,Asociado,
At least one mode of payment is required for POS invoice.,Se requiere al menos un modo de pago de la factura POS.,
Atleast one item should be entered with negative quantity in return document,Al menos un elemento debe introducirse con cantidad negativa en el documento de devolución,
Atleast one of the Selling or Buying must be selected,Al menos uno de la venta o compra debe seleccionar,
Atleast one warehouse is mandatory,Al menos un almacén es obligatorio,
Attach Logo,Adjuntar Logo,
Attachment,Adjunto,
Attachments,Adjuntos,
Attendance can not be marked for future dates,La asistencia no se puede marcar para fechas futuras,
Attendance date can not be less than employee's joining date,La fecha de la asistencia no puede ser inferior a la fecha de ingreso de los empleados,
Attendance for employee {0} is already marked,Asistencia para el empleado {0} ya está marcado,
Attendance has been marked successfully.,La asistencia ha sido marcada con éxito.,
Attendance not submitted for {0} as {1} on leave.,Asistencia no enviada para {0} como {1} con permiso.,
Attribute table is mandatory,Tabla de atributos es obligatoria,
Attribute {0} selected multiple times in Attributes Table,Atributo {0} seleccionado varias veces en la tabla Atributos,
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 Name,Nombre del banco,
Bank Overdraft Account,Cuenta de Sobre-Giros,
Bank Reconciliation,Conciliación bancaria,
Bank Reconciliation Statement,Estados de conciliación bancarios,
Bank Statement,Extracto de cuenta,
Bank Statement Settings,Configuración de Extracto Bancario,
Bank Statement balance as per General Ledger,Saldo de Extracto Bancario según Balance General,
Bank account cannot be named as {0},La cuenta bancaria no puede nombrarse como {0},
Bank/Cash transactions against party or for internal transfer,Transacciones de Banco/Efectivo contra Empresa o transferencia interna,
Banking,Banca,
Banking and Payments,Banco y Pagos,
Barcode {0} already used in Item {1},El código de barras {0} ya se utiliza en el artículo {1},
Barcode {0} is not a valid {1} code,Código de Barras {0} no es un código {1} válido,
Base URL,URL Base,
Based On,Basado en,
Based On Payment Terms,Basada en Término de Pago,
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,
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,
Black,Negro,
Blanket Orders from Costumers.,Órdenes generales de los clientes.,
Block Invoice,Factura en Bloque,
Boms,Boms,
Both Trial Period Start Date and Trial Period End Date must be set,Se deben configurar tanto la fecha de inicio del Período de Prueba como la fecha de finalización del Período de Prueba,
Both Warehouse must belong to same Company,Ambos almacenes deben pertenecer a la misma compañía,
Branch,Sucursal,
Broadcasting,Difusión,
Brokerage,Bolsa de valores,
Browse BOM,Explorar la lista de materiales,
Budget Against,Contra Presupuesto,
Budget List,Lista de Presupuesto,
Budget Variance Report,Variación de Presupuesto,
Budget cannot be assigned against Group Account {0},El presupuesto no se puede asignar contra el grupo de cuentas {0},
"Budget cannot be assigned against {0}, as it's not an Income or Expense account","El presupuesto no se puede asignar contra {0}, ya que no es una cuenta de ingresos o gastos",
Buildings,Edificios,
Bundle items at time of sale.,Agrupe elementos al momento de la venta.,
Business Development Manager,Gerente de Desarrollo de Negocios,
Buy,Comprar,
Buying,Compras,
Buying Amount,Importe de compra,
Buying Price List,Lista de precios de compra,
Buying Rate,Tipo de Cambio de Compra,
"Buying must be checked, if Applicable For is selected as {0}","'Compras' debe ser seleccionada, si la opción: 'Aplicable para' esta seleccionado como {0}",
By {0},Por {0},
Bypass credit check at Sales Order ,Omitir verificación de crédito en Orden de Venta,
C-Form records,Registros C -Form,
C-form is not applicable for Invoice: {0},Formulario-C no es aplicable para la factura: {0},
CEO,CEO,
CESS Amount,Cantidad de CESS,
CGST Amount,Cantidad de CGST,
CRM,CRM,
CWIP Account,Cuenta CWIP,
Calculated Bank Statement balance,Balance calculado del estado de cuenta bancario,
Campaign,Campaña,
Can be approved by {0},Puede ser aprobado por {0},
"Can not filter based on Account, if grouped by Account","No se puede filtrar en función de la cuenta , si se agrupan por cuenta",
"Can not filter based on Voucher No, if grouped by Voucher","No se puede filtrar en función al 'No. de comprobante', si esta agrupado por el nombre",
"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","No se puede marcar Registro de paciente hospitalizado descargado, hay facturas no facturadas {0}",
Can only make payment against unbilled {0},Sólo se puede crear el pago contra {0} impagado,
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Puede referirse a la línea, sólo si el tipo de importe es 'previo al importe' o 'previo al total'",
"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","No se puede cambiar el método de valoración, ya que hay transacciones contra algunos elementos que no tiene su propio método de valoración",
Can't create standard criteria. Please rename the criteria,No se pueden crear criterios estándar. Por favor cambie el nombre de los criterios,
Cancel,Cancelar,
Cancel Material Visit {0} before cancelling this Warranty Claim,Cancelar visita {0} antes de cancelar este reclamo de garantía,
Cancel Material Visits {0} before cancelling this Maintenance Visit,Cancelar visitas {0} antes de cancelar la visita de mantenimiento,
Cancel Subscription,Cancelar suscripción,
Cancel the journal entry {0} first,Cancelar el asiento contable {0} primero,
Canceled,Cancelado,
"Cannot Submit, Employees left to mark attendance","No se puede enviar, los empleados se marchan para marcar la asistencia",
Cannot be a fixed asset item as Stock Ledger is created.,No puede ser un elemento de Activo Fijo ya que se creo un Libro de Stock .,
Cannot cancel because submitted Stock Entry {0} exists,No se puede cancelar debido a que existe una entrada en el almacén {0},
Cannot cancel transaction for Completed Work Order.,No se puede cancelar la transacción para la orden de trabajo completada.,
Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},No se puede cancelar {0} {1} porque el número de serie {2} no pertenece al almacén {3},
Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,No se pueden cambiar los Atributos después de la Transacciones de Stock. Haga un nuevo Artículo y transfiera el stock al nuevo Artículo,
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,No se puede cambiar la 'Fecha de Inicio' y la 'Fecha Final' del año fiscal una vez que ha sido guardado.,
Cannot change Service Stop Date for item in row {0},No se puede cambiar la fecha de detención del servicio para el artículo en la fila {0},
Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,No se pueden cambiar las propiedades de la Variante después de una transacción de stock. Deberá crear un nuevo ítem para hacer esto.,
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","No se puede cambiar la divisa/moneda por defecto de la compañía, porque existen transacciones, estas deben ser canceladas antes de cambiarla",
Cannot change status as student {0} is linked with student application {1},No se puede cambiar el estado de estudiante {0} está vinculada con la aplicación del estudiante {1},
Cannot convert Cost Center to ledger as it has child nodes,"No se puede convertir de 'Centros de Costos' a una cuenta del libro mayor, ya que tiene sub-grupos",
Cannot covert to Group because Account Type is selected.,No se puede convertir a 'Grupo' porque se seleccionó 'Tipo de Cuenta'.,
Cannot create Retention Bonus for left Employees,No se puede crear una bonificación de retención para los empleados dejados,
Cannot create a Delivery Trip from Draft documents.,No se puede crear un viaje de entrega a partir de documentos de borrador.,
Cannot deactivate or cancel BOM as it is linked with other BOMs,No se puede desactivar o cancelar la 'Lista de Materiales (LdM)' si esta vinculada con otras,
"Cannot declare as lost, because Quotation has been made.","No se puede declarar como perdida, porque se ha hecho el Presupuesto",
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',No se puede deducir cuando categoría es para ' Valoración ' o ' de Valoración y Total ',
Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',"No se puede deducir cuando la categoría es 'de Valoración ""o"" Vaulation y Total'",
"Cannot delete Serial No {0}, as it is used in stock transactions","No se puede eliminar el No. de serie {0}, ya que esta siendo utilizado en transacciones de stock",
Cannot enroll more than {0} students for this student group.,No se puede inscribir más de {0} estudiantes para este grupo de estudiantes.,
Cannot produce more Item {0} than Sales Order quantity {1},No se puede producir una cantidad mayor del producto {0} que lo requerido en el pedido de venta {1},
Cannot promote Employee with status Left,No se puede promocionar Empleado con estado dejado,
Cannot refer row number greater than or equal to current row number for this Charge type,No se puede referenciar a una línea mayor o igual al numero de línea actual.,
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,No se puede seleccionar el tipo de cargo como 'Importe de línea anterior' o ' Total de línea anterior' para la primera linea,
Cannot set as Lost as Sales Order is made.,"No se puede definir como pérdida, cuando la orden de venta esta hecha.",
Cannot set authorization on basis of Discount for {0},No se puede establecer la autorización sobre la base de descuento para {0},
Cannot set multiple Item Defaults for a company.,No se pueden establecer varios valores predeterminados de artículos para una empresa.,
Cannot set quantity less than delivered quantity,No se puede establecer una cantidad menor que la cantidad entregada,
Cannot set quantity less than received quantity,No se puede establecer una cantidad menor que la cantidad recibida,
Cannot set the field <b>{0}</b> for copying in variants,No se puede establecer el campo <b>{0}</b> para copiar en variantes,
Cannot transfer Employee with status Left,No se puede transferir Empleado con estado dejado,
Cannot {0} {1} {2} without any negative outstanding invoice,No se puede {0} {1} {2} sin ninguna factura pendiente negativa,
Capital Equipments,BIENES DE CAPITAL,
Capital Stock,Capital de inventario,
Capital Work in Progress,Trabajo de capital en progreso,
Cart,Carrito,
Cart is Empty,El carrito esta vacío.,
Case No(s) already in use. Try from Case No {0},El numero de caso ya se encuentra en uso. Intente {0},
Cash,Efectivo,
Cash Flow Statement,Estado de Flujos de Efectivo,
Cash Flow from Financing,Flujo de caja de financiación,
Cash Flow from Investing,Flujo de efectivo de inversión,
Cash Flow from Operations,Flujo de caja operativo,
Cash In Hand,Efectivo en caja,
Cash or Bank Account is mandatory for making payment entry,'Cuenta de Efectivo' o 'Cuenta Bancaria' es obligatoria para hacer una entrada de pago,
Cashier Closing,Cierre de cajero,
Category,Categoría,
Category Name,Nombre Categoría,
Caution,Precaución,
Central Tax,Impuesto central,
Certification,Proceso de dar un título,
Cess,Impuesto,
Change Amount,Importe de Cambio,
Change Item Code,Cambiar código de artículo,
Change Release Date,Cambiar fecha de lanzamiento,
Change Template Code,Cambiar código de plantilla,
Changing Customer Group for the selected Customer is not allowed.,No se permite cambiar el grupo de clientes para el cliente seleccionado.,
Chapter,Capítulo,
Chapter information.,Información del capítulo.,
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Cambiar a tipo 'Actual' en la línea {0} no puede ser incluido en el precio,
Chargeble,Cobrable,
Charges are updated in Purchase Receipt against each item,Los cargos se actualizan en el recibo de compra  por cada producto,
"Charges will be distributed proportionately based on item qty or amount, as per your selection","Los cargos se distribuirán proporcionalmente basados en la cantidad o importe, según selección",
Chart of Cost Centers,Centros de costos,
Check all,Marcar todas,
Checkout,Pedido,
Chemical,Químico,
Cheque,Cheque,
Cheque/Reference No,Cheque / No. de Referencia,
Cheques Required,Cheques requeridos,
Cheques and Deposits incorrectly cleared,Cheques y Depósitos liquidados de forma incorrecta,
Child Task exists for this Task. You can not delete this Task.,Existe Tarea Hija para esta Tarea. No puedes eliminar esta Tarea.,
Child nodes can be only created under 'Group' type nodes,Los nodos hijos sólo pueden ser creados bajo los nodos de tipo &quot;grupo&quot;,
Child warehouse exists for this warehouse. You can not delete this warehouse.,No se puede eliminar este almacén. Existe almacén hijo para este almacén.,
Circular Reference Error,Error de referencia circular,
City,Ciudad,
City/Town,Ciudad / Provincia,
Clay,Arcilla,
Clear filters,Filtros claros,
Clear values,Quitar valores,
Clearance Date,Fecha de liquidación,
Clearance Date not mentioned,Fecha de liquidación no definida,
Clearance Date updated,Fecha de liquidación actualizada,
Client,Cliente,
Client ID,Client ID,
Client Secret,Client Secret,
Clinical Procedure,Procedimiento clinico,
Clinical Procedure Template,Plantilla de procedimiento clínico,
Close Balance Sheet and book Profit or Loss.,Cerrar balance general y el libro de pérdidas y ganancias.,
Close Loan,Préstamo cerrado,
Close the POS,Cierre el POS,
Closed,Cerrado,
Closed order cannot be cancelled. Unclose to cancel.,Orden cerrada no se puede cancelar. Abrir para cancelar.,
Closing (Cr),Cierre (Cred),
Closing (Dr),Cierre (Deb),
Closing (Opening + Total),Cierre (Apertura + Total),
Closing Account {0} must be of type Liability / Equity,Cuenta de Clausura {0} tiene que ser de Responsabilidad / Patrimonio,
Closing Balance,Balance de cierre,
Code,Código,
Collapse All,Desplegar todo,
Color,Color,
Colour,Color,
Combined invoice portion must equal 100%,La porción combinada de la factura debe ser igual al 100%,
Commercial,Comercial,
Commission,Comisión,
Commission Rate %,Porcentaje de comision %,
Commission on Sales,Comisiones sobre ventas,
Commission rate cannot be greater than 100,El porcentaje de comisión no puede ser superior a 100,
Community Forum,foro de la Comunidad,
Company (not Customer or Supplier) master.,Configuración general del sistema.,
Company Abbreviation,Abreviatura de la compañia,
Company Abbreviation cannot have more than 5 characters,La abreviatura de la Empresa no puede tener más de 5 caracteres,
Company Name,Nombre de compañía,
Company Name cannot be Company,Nombre de la empresa no puede ser Company,
Company currencies of both the companies should match for Inter Company Transactions.,Las monedas de la empresa de ambas compañías deben coincidir para las Transacciones entre empresas.,
Company is manadatory for company account,La compañía es administradora para la cuenta de la compañía,
Company name not same,El nombre de la empresa no es el mismo,
Company {0} does not exist,Compañía {0} no existe,
Compensatory leave request days not in valid holidays,Días de solicitud de permiso compensatorio no en días feriados válidos,
Complaint,Queja,
Completion Date,Fecha de  finalización,
Computer,Computadora,
Condition,Condición,
Configure,Configurar,
Configure {0},Configurar {0},
Confirmed orders from Customers.,Ordenes de clientes confirmadas.,
Connect Amazon with ERPNext,Conecte Amazon con ERPNext,
Connect Shopify with ERPNext,Conecte Shopify con ERPNext,
Connect to Quickbooks,Conectarse a Quickbooks,
Connected to QuickBooks,Conectado a QuickBooks,
Connecting to QuickBooks,Conectando a QuickBooks,
Consultation,Consulta,
Consultations,Consultas,
Consulting,Consuloría,
Consumable,Consumible,
Consumed,Consumido,
Consumed Amount,Monto consumido,
Consumed Qty,Cantidad consumida,
Consumer Products,Productos de consumo,
Contact,Contacto,
Contact Details,Detalles 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 Code: ,Código del curso:,
Course Enrollment {0} does not exists,La inscripción al curso {0} no existe,
Course Schedule,Calendario de cursos,
Course: ,Curso:,
Cr,Cred,
Create,Crear,
Create BOM,Crear lista de materiales,
Create Delivery Trip,Crear Ruta de entrega,
Create Employee,Crear empleado,
Create Employee Records,Crear registros de empleados,
"Create Employee records to manage leaves, expense claims and payroll","Crear registros de los empleados para gestionar los permisos, las reclamaciones de gastos y nómina",
Create Fee Schedule,Crear lista de tarifas,
Create Fees,Crear tarifas,
Create Inter Company Journal Entry,Crear entrada de diario entre empresas,
Create Invoice,Crear factura,
Create Invoices,Crear facturas,
Create Job Card,Crear tarjeta de trabajo,
Create Journal Entry,Crear entrada de diario,
Create Lead,Crear plomo,
Create Leads,Crear Leads,
Create Maintenance Visit,Crear visita de mantenimiento,
Create Material Request,Crear solicitud de material,
Create Multiple,Crear múltiples,
Create Opening Sales and Purchase Invoices,Crear facturas iniciales de compra y venta,
Create Payment Entries,Crear entradas de pago,
Create Payment Entry,Crear entrada de pago,
Create Print Format,Crear formato de impresión,
Create Purchase Order,Crear orden de compra,
Create Purchase Orders,Crear órdenes de compra,
Create Quotation,Crear cotización,
Create Sales Invoice,Crear factura de ventas,
Create Sales Order,Crear Pedido de Venta,
Create Sales Orders to help you plan your work and deliver on-time,Cree pedidos de ventas para ayudarlo a planificar su trabajo y entregarlo a tiempo,
Create Sample Retention Stock Entry,Crear entrada de stock de retención de muestra,
Create Student,Crear estudiante,
Create Student Batch,Crear lote de estudiantes,
Create Student Groups,Crear grupos de estudiantes,
Create Supplier Quotation,Crear presupuesto de proveedor,
Create Tax Template,Crear plantilla de impuestos,
Create Timesheet,Crear parte de horas,
Create User,Crear usuario,
Create Users,Crear Usuarios,
Create Variant,Crear variante,
Create Variants,Crear variantes,
"Create and manage daily, weekly and monthly email digests.","Crear y gestionar resúmenes de correos; diarios, semanales y mensuales.",
Create customer quotes,Crear cotizaciones de clientes,
Create rules to restrict transactions based on values.,Crear reglas para restringir las transacciones basadas en valores.,
Created {0} scorecards for {1} between: ,Creó {0} tarjetas de puntuación para {1} entre:,
Creating Company and Importing Chart of Accounts,Creación de empresa e importación de plan de cuentas,
Creating Fees,Creación de Tarifas,
Creating student groups,Crear grupos de estudiantes,
Creating {0} Invoice,Creando {0} Factura,
Credit,Haber,
Credit ({0}),Crédito ({0}),
Credit Account,Cuenta de crédito,
Credit Balance,Saldo Acreedor,
Credit Card,Tarjetas de credito,
Credit Days cannot be a negative number,Los Días de Crédito no pueden ser negativos,
Credit Limit,Límite de crédito,
Credit Note,Nota de crédito,
Credit Note Amount,Monto de Nota de Credito,
Credit Note Issued,Nota de crédito emitida,
Credit Note {0} has been created automatically,Nota de crédito {0} se ha creado automáticamente,
Credit limit has been crossed for customer {0} ({1}/{2}),Se ha cruzado el límite de crédito para el Cliente {0} ({1} / {2}),
Creditors,Acreedores,
Criteria weights must add up to 100%,Los pesos de los criterios deben sumar hasta el 100%,
Crop Cycle,Ciclo de cultivo,
Crops & Lands,Cultivos y tierras,
Currency Exchange must be applicable for Buying or for Selling.,El Cambio de Moneda debe ser aplicable para comprar o vender.,
Currency can not be changed after making entries using some other currency,El tipo de moneda/divisa no se puede cambiar después de crear la entrada contable,
Currency exchange rate master.,Configuración principal para el cambio de divisas,
Currency for {0} must be {1},Moneda para {0} debe ser {1},
Currency is required for Price List {0},La divisa/moneda es requerida para lista de precios {0},
Currency of the Closing Account must be {0},La divisa / moneda de la cuenta de cierre debe ser {0},
Currency of the price list {0} must be {1} or {2},La moneda de la lista de precios {0} debe ser {1} o {2},
Currency should be same as Price List Currency: {0},La moneda debe ser la misma que la moneda de la lista de precios: {0},
Current Assets,Activo circulante,
Current BOM and New BOM can not be same,La lista de materiales (LdM) actual y la nueva no pueden ser las mismas,
Current Liabilities,Pasivo circulante,
Current Qty,Cant. Actual,
Current invoice {0} is missing,La factura actual {0} falta,
Custom HTML,HTML Personalizado,
Custom?,¿Personalizado?,
Customer,Cliente,
Customer Addresses And Contacts,Direcciones de clientes y contactos,
Customer Contact,Contacto del Cliente,
Customer Database.,Base de datos de Clientes.,
Customer Group,Categoría de Cliente,
Customer LPO,Cliente LPO,
Customer LPO No.,Cliente LPO Nro.,
Customer Name,Nombre del cliente,
Customer POS Id,id de POS del Cliente,
Customer Service,Servicio al cliente,
Customer and Supplier,Clientes y proveedores,
Customer is required,Se requiere Cliente,
Customer isn't enrolled in any Loyalty Program,El cliente no está inscrito en ningún programa de lealtad,
Customer required for 'Customerwise Discount',Se requiere un cliente para el descuento,
Customer {0} does not belong to project {1},Cliente {0} no pertenece al proyecto {1},
Customer {0} is created.,Se crea el cliente {0}.,
Customers in Queue,Clientes en cola,
Customize Homepage Sections,Personalizar secciones de la página de inicio,
Customizing Forms,Formularios Personalizados,
Daily Project Summary for {0},Resumen diario del proyecto para {0},
Daily Reminders,Recordatorios diarios,
Data Import and Export,Importación y exportación de datos,
Data Import and Settings,Importación de datos y configuraciones,
Database of potential customers.,Base de datos de clientes potenciales.,
Date Format,Formato de Fecha,
Date Of Retirement must be greater than Date of Joining,La fecha de jubilación debe ser mayor que la fecha de ingreso,
Date of Birth,Fecha de nacimiento,
Date of Birth cannot be greater than today.,La fecha de nacimiento no puede ser mayor a la fecha de hoy.,
Date of Commencement should be greater than Date of Incorporation,La fecha de inicio debe ser mayor que la fecha de incorporación,
Date of Joining,Fecha de Ingreso,
Date of Joining must be greater than Date of Birth,La fecha de ingreso debe ser mayor a la fecha de nacimiento,
Date of Transaction,Fecha de la Transacción,
Datetime,Fecha y Hora,
Day,Día,
Debit,Debe,
Debit ({0}),Débito ({0}),
Debit Account,Cuenta de debito,
Debit Note,Nota de debito,
Debit Note Amount,Monto de Nota de Debito,
Debit Note Issued,Nota de débito emitida,
Debit To is required,Débito Para es requerido,
Debit and Credit not equal for {0} #{1}. Difference is {2}.,El Débito y Crédito no es igual para {0} # {1}. La diferencia es {2}.,
Debtors,DEUDORES VARIOS,
Debtors ({0}),Deudores ({0}),
Declare Lost,Declarar perdido,
Default Activity Cost exists for Activity Type - {0},Existe una actividad de costo por defecto para la actividad del tipo - {0},
Default BOM ({0}) must be active for this item or its template,La lista de materiales (LdM) por defecto ({0}) debe estar activa para este producto o plantilla,
Default BOM for {0} not found,BOM por defecto para {0} no encontrado,
Default BOM not found for Item {0} and Project {1},La lista de materiales predeterminada no se encontró para el Elemento {0} y el Proyecto {1},
Default Letter Head,Encabezado Predeterminado,
Default Tax Template,Plantilla de impuesto predeterminado,
Default Unit of Measure for Item {0} cannot be changed directly because you have already made some transaction(s) with another UOM. You will need to create a new Item to use a different Default UOM.,Unidad de medida predeterminada para el artículo {0} no se puede cambiar directamente porque ya ha realizado alguna transacción (s) con otra UOM. Usted tendrá que crear un nuevo elemento a utilizar un UOM predeterminado diferente.,
Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Unidad de medida predeterminada para variante '{0}' debe ser la mismo que en la plantilla '{1}',
Default settings for buying transactions.,Ajustes predeterminados para las transacciones de compra.,
Default settings for selling transactions.,Ajustes por defecto para las transacciones de venta.,
Default tax templates for sales and purchase are created.,Se crean plantillas de impuestos predeterminadas para ventas y compras.,
Defaults,Predeterminados,
Defense,Defensa,
Define Project type.,Defina el Tipo de Proyecto.,
Define budget for a financial year.,Definir presupuesto para un año contable.,
Define various loan types,Definir varios tipos de préstamos,
Del,Elim,
Delay in payment (Days),Retraso en el pago (Días),
Delete all the Transactions for this Company,Eliminar todas las transacciones para esta compañía,
Deletion is not permitted for country {0},La eliminación no está permitida para el país {0},
Delivered,Enviado,
Delivered Amount,Importe entregado,
Delivered Qty,Cantidad entregada,
Delivered: {0},Entregado: {0},
Delivery,Entregar,
Delivery Date,Fecha de entrega,
Delivery Note,Nota de entrega,
Delivery Note {0} is not submitted,La nota de entrega {0} no está validada,
Delivery Note {0} must not be submitted,La nota de entrega {0} no debe estar validada,
Delivery Notes {0} must be cancelled before cancelling this Sales Order,La nota de entrega {0} debe ser cancelada antes de cancelar esta orden ventas,
Delivery Notes {0} updated,Notas de entrega {0} actualizadas,
Delivery Status,Estado del envío,
Delivery Trip,Viaje de entrega,
Delivery warehouse required for stock item {0},Almacén de entrega requerido para el inventrio del producto {0},
Department,Departamento,
Department Stores,Tiendas por departamento,
Depreciation,DEPRECIACIONES,
Depreciation Amount,Monto de la depreciación,
Depreciation Amount during the period,Monto de la depreciación durante el período,
Depreciation Date,Fecha de depreciación,
Depreciation Eliminated due to disposal of assets,Depreciación Eliminada debido a la venta de activos,
Depreciation Entry,Entrada de depreciación,
Depreciation Method,Método de depreciación,
Depreciation Row {0}: Depreciation Start Date is entered as past date,Fila de Depreciación {0}: Fecha de Inicio de Depreciación se ingresa como fecha pasada,
Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Fila de Depreciación {0}: el valor esperado después de la vida útil debe ser mayor o igual que {1},
Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Fila de depreciación {0}: la siguiente fecha de depreciación no puede ser anterior Fecha disponible para usar,
Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Fila de depreciación {0}: la siguiente fecha de depreciación no puede ser anterior a la fecha de compra,
Designer,Diseñador,
Detailed Reason,Motivo detallado,
Details,Detalles,
Details of Outward Supplies and inward supplies liable to reverse charge,Detalles de suministros externos y suministros internos sujetos a recargo,
Details of the operations carried out.,Detalles de las operaciones realizadas.,
Diagnosis,Diagnóstico,
Did not find any item called {0},No ha encontrado ningún elemento llamado {0},
Diff Qty,Dif. Cant.,
Difference Account,Cuenta para la Diferencia,
"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Una cuenta distinta debe ser del tipo Activo / Pasivo, ya que la reconciliación del stock es una entrada de apertura",
Difference Amount,Diferencia,
Difference Amount must be zero,La diferencia de montos debe ser cero,
Different UOM for items will lead to incorrect (Total) Net Weight value. Make sure that Net Weight of each item is in the same UOM.,Unidad de Medida diferente para elementos dará lugar a Peso Neto (Total) incorrecto. Asegúrese de que el peso neto de cada artículo esté en la misma Unidad de Medida.,
Direct Expenses,Gastos directos,
Direct Income,Ingreso directo,
Disable,Desactivar,
Disabled template must not be default template,Plantilla deshabilitada no debe ser la plantilla predeterminada,
Disburse Loan,Préstamo de desembolso,
Disbursed,Desembolsado,
Disc,Desc,
Discharge,Descarga,
Discount,Descuento,
Discount Percentage can be applied either against a Price List or for all Price List.,El porcentaje de descuento puede ser aplicado ya sea en una lista de precios o para todas las listas de precios.,
Discount must be less than 100,El descuento debe ser inferior a 100,
Diseases & Fertilizers,Enfermedades y Fertilizantes,
Dispatch,Despacho,
Dispatch Notification,Notificación de Despacho,
Dispatch State,Estado de despacho,
Distance,Distancia,
Distribution,Distribución,
Distributor,Distribuidor,
Dividends Paid,Dividendos pagados,
Do you really want to restore this scrapped asset?,¿Realmente desea restaurar este activo desechado?,
Do you really want to scrap this asset?,¿Realmente desea desechar este activo?,
Do you want to notify all the customers by email?,¿Desea notificar a todos los clientes por correo electrónico?,
Doc Date,Fecha del Doc,
Doc Name,Nombre del documento,
Doc Type,DocType,
Docs Search,Búsqueda de documentos,
Document Name,Nombre de Documento,
Document Type,Tipo de Documento,
Domain,Dominio,
Domains,Dominios,
Done,Listo,
Donor,Donante,
Donor Type information.,Información de Tipo de Domante,
Donor information.,Información del Donante,
Download JSON,Descargar JSON,
Draft,Borrador,
Drop Ship,Envío Triangulado,
Drug,Droga,
Due / Reference Date cannot be after {0},Vencimiento / Fecha de referencia no puede ser posterior a {0},
Due Date cannot be before Posting / Supplier Invoice Date,La fecha de vencimiento no puede ser anterior a la fecha de contabilización / factura del proveedor,
Due Date is mandatory,La fecha de vencimiento es obligatoria,
Duplicate Entry. Please check Authorization Rule {0},Entrada duplicada. Por favor consulte la regla de autorización {0},
Duplicate Serial No entered for Item {0},Duplicar No. de serie para el producto {0},
Duplicate customer group found in the cutomer group table,Grupo de clientes duplicado encontrado en la tabla de grupo de clientes,
Duplicate entry,Entrada duplicada,
Duplicate item group found in the item group table,Se encontró grupo de artículos duplicado  en la table de grupo de artículos,
Duplicate roll number for student {0},Número de rol duplicado para el estudiante {0},
Duplicate row {0} with same {1},Línea {0} duplicada con igual {1},
Duplicate {0} found in the table,Duplicado {0} encontrado en la tabla,
Duration in Days,Duración en Días,
Duties and Taxes,IMPUESTOS Y ARANCELES,
E-Invoicing Information Missing,Falta información de facturación electrónica,
ERPNext Demo,Demostración ERPNext,
ERPNext Settings,Configuración de ERPNext,
Earliest,Primeras,
Earnest Money,GANANCIAS PERCIBIDAS,
Edit,Editar,
Edit Publishing Details,Editar detalles de publicación,
"Edit in full page for more options like assets, serial nos, batches etc.","Edite en la página completa para obtener más opciones como activos, números de serie, lotes, etc.",
Education,Educación,
Either location or employee must be required,Se debe requerir la ubicación o el empleado,
Either target qty or target amount is mandatory,Es obligatoria la meta de facturacion,
Either target qty or target amount is mandatory.,Es obligatoria la meta fe facturación.,
Electrical,Eléctrico,
Electronic Equipments,Equipos electronicos,
Electronics,Electrónicos,
Eligible ITC,ITC elegible,
Email Account,Cuentas de correo electrónico,
Email Address,Dirección de correo electrónico,
"Email Address must be unique, already exists for {0}","Dirección de correo electrónico debe ser única, ya existe para {0}",
Email Digest: ,Enviar boletín:,
Email Reminders will be sent to all parties with email contacts,Recordatorios de correo electrónico se enviarán a todas las partes con contactos de correo electrónico,
Email Sent,Correo Electrónico Enviado,
Email Template,Plantilla de Correo Electrónico,
Email not found in default contact,Correo electrónico no encontrado en contacto predeterminado,
Email sent to {0},Correo electrónico enviado a {0},
Employee,Empleado,
Employee Advances,Avances de Empleado,
Employee ID,ID de empleado,
Employee Lifecycle,Ciclo de vida del empleado,
Employee Name,Nombre de empleado,
Employee Promotion cannot be submitted before Promotion Date ,La Promoción del Empleado no se puede enviar antes de la fecha de promoción,
Employee Transfer cannot be submitted before Transfer Date ,La transferencia del empleado no se puede enviar antes de la fecha de transferencia,
Employee cannot report to himself.,El empleado no puede informar a sí mismo.,
Employee {0} has already applied for {1} between {2} and {3} : ,El empleado {0} ya ha solicitado {1} entre {2} y {3}:,
Employee {0} of grade {1} have no default leave policy,El Empleado {0} de la calificación {1} no tiene una política de licencia predeterminada,
Enable,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,
Ends On date cannot be before Next Contact Date.,La fecha de finalización no puede ser anterior a la fecha del próximo contacto.,
Energy,Energía,
Engineer,Ingeniero,
Enough Parts to Build,Piezas suficiente para construir,
Enroll,Inscribirse,
Enrolling student,Inscribiendo estudiante,
Enrolling students,Inscripción de Estudiantes,
Enter depreciation details,Ingrese detalles de depreciación,
Enter the Bank Guarantee Number before submittting.,Ingrese el número de garantía bancaria antes de enviar.,
Enter the name of the Beneficiary before submittting.,Ingrese el nombre del Beneficiario antes de enviarlo.,
Enter the name of the bank or lending institution before submittting.,Ingrese el nombre del banco o institución de crédito antes de enviarlo.,
Enter value betweeen {0} and {1},Ingrese el valor entre {0} y {1},
Entertainment & Leisure,Entretenimiento y Ocio,
Entertainment Expenses,GASTOS DE ENTRETENIMIENTO,
Equity,Patrimonio,
Error Log,Registro de Errores,
Error evaluating the criteria formula,Error al evaluar la fórmula de criterios,
Error in formula or condition: {0},Error Fórmula o Condición: {0},
Error: Not a valid id?,Error: ¿No es un ID válido?,
Estimated Cost,Costo estimado,
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Incluso si hay varias reglas de precios con mayor prioridad, se aplican entonces siguientes prioridades internas:",
Event,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 Claims,Reembolsos de gastos,
Expense account is mandatory for item {0},La cuenta de gastos es obligatoria para el elemento {0},
Expenses,Gastos,
Expenses Included In Asset Valuation,Gastos incluidos en la valoración de activos,
Expenses Included In Valuation,GASTOS DE VALORACIÓN,
Expired Batches,Lotes Vencidos,
Expires On,Expira el,
Expiring On,Venciendo en,
Expiry (In Days),Caducidad (en días),
Explore,Explorar,
Export E-Invoices,Exportar facturas electrónicas,
Extra Large,Extra grande,
Extra Small,Extra Pequeño,
Fail,Falla,
Failed,Falló,
Failed to create website,Error al crear el sitio web,
Failed to install presets,Error al instalar los ajustes preestablecidos,
Failed to login,Error al iniciar sesión,
Failed to setup company,Error al configurar la compañía,
Failed to setup defaults,Error al cambiar a default,
Failed to setup post company fixtures,Error al configurar los accesorios de la empresa postal,
Fax,Fax,
Fee,Cuota,
Fee Created,Tarifa creada,
Fee Creation Failed,Error en la Creación de Cuotas,
Fee Creation Pending,Creación de Cuotas Pendientes,
Fee Records Created - {0},Registros de cuotas creados - {0},
Feedback,Retroalimentación,
Fees,Matrícula,
Female,Femenino,
Fetch Data,Obtener datos,
Fetch Subscription Updates,Obtener actualizaciones de suscripción,
Fetch exploded BOM (including sub-assemblies),Buscar lista de materiales (LdM) incluyendo subconjuntos,
Fetching records......,Obteniendo Registros......,
Field Name,Nombre de Campo,
Fieldname,Nombre del campo,
Fields,Campos,
"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Fila de campos de filtro # {0}: El nombre de campo <b>{1}</b> debe ser del tipo &quot;Enlace&quot; o &quot;Tabla de selección múltiple&quot;,
Filter Total Zero Qty,Filter Total Zero Qty,
Finance Book,Libro de finanzas,
Financial / accounting year.,Finanzas / Ejercicio contable.,
Financial Services,Servicios financieros,
Financial Statements,Estados financieros,
Financial Year,Año financiero,
Finish,Terminar,
Finished Good,Bien Terminado,
Finished Good Item Code,Código de artículo bueno terminado,
Finished Goods,Productos terminados,
Finished Item {0} must be entered for Manufacture type entry,El producto terminado {0} debe ser introducido para el tipo de producción,
Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,La cantidad de productos terminados <b>{0}</b> y Por cantidad <b>{1}</b> no puede ser diferente,
First Name,Primer Nombre,
"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","El régimen fiscal es obligatorio, establezca amablemente el régimen fiscal en la empresa {0}",
Fiscal Year,Año fiscal,
Fiscal Year End Date should be one year after Fiscal Year Start Date,La fecha de finalización del año fiscal debe ser un año después de la fecha de inicio del año fiscal,
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},La fecha de inicio y la fecha final ya están establecidos en el año fiscal {0},
Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,La fecha de inicio del año fiscal debe ser un año anterior a la fecha de finalización del año fiscal,
Fiscal Year {0} does not exist,Año Fiscal {0} no existe,
Fiscal Year {0} is required,Año Fiscal {0} es necesario,
Fixed Asset,Activo fijo,
Fixed Asset Item must be a non-stock item.,Artículo de Activos Fijos no debe ser un artículo de stock.,
Fixed Assets,Activos fijos,
Following Material Requests have been raised automatically based on Item's re-order level,Las Solicitudes de Materiales siguientes se han planteado de forma automática según el nivel de re-pedido del articulo,
Following accounts might be selected in GST Settings:,Las siguientes cuentas se pueden seleccionar en Configuración de GST:,
Following course schedules were created,Se crearon los siguientes horarios del curso,
Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,El siguiente artículo {0} no está marcado como {1} elemento. Puede habilitarlos como {1} elemento desde su Maestro de artículos,
Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Los siguientes elementos {0} no están marcados como {1} elemento. Puede habilitarlos como {1} elemento desde su Maestro de artículos,
"Food, Beverage & Tobacco","Alimentos, bebidas y tabaco",
For,por,
"For 'Product Bundle' items, Warehouse, Serial No and Batch No will be considered from the 'Packing List' table. If Warehouse and Batch No are same for all packing items for any 'Product Bundle' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","Para 'Paquete de Productos' el Almacén, No. de Serie y No. de lote serán considerados desde el 'Packing List'. Si el Almacén y No. de lote son los mismos para todos los productos empaquetados, los valores podrán ser ingresados en la tabla principal del artículo, estos valores serán copiados al 'Packing List'",
For Quantity (Manufactured Qty) is mandatory,Por cantidad (cantidad fabricada) es obligatoria,
For Supplier,De proveedor,
For Warehouse,Para el almacén,
For Warehouse is required before Submit,Para el almacén es requerido antes de enviar,
"For an item {0}, quantity must be negative number","Para un artículo {0}, la cantidad debe ser un número negativo",
"For an item {0}, quantity must be positive number","Para un Artículo {0}, la cantidad debe ser número positivo",
"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry","Para la tarjeta de trabajo {0}, solo puede realizar la entrada de stock del tipo &#39;Transferencia de material para fabricación&#39;",
"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","Para la línea {0} en {1}. incluir {2} en la tasa del producto, las lineas {3} también deben ser incluidas",
For row {0}: Enter Planned Qty,Para la fila {0}: ingrese cantidad planificada,
"For {0}, only credit accounts can be linked against another debit entry","Para {0}, sólo las cuentas de crédito se pueden vincular con un asiento de débito",
"For {0}, only debit accounts can be linked against another credit entry","Para {0}, sólo las cuentas de débito pueden vincular con un asiento de crédito",
Forum Activity,Actividad del foro,
Free item code is not selected,El código de artículo gratuito no está seleccionado,
Freight and Forwarding Charges,CARGOS DE TRANSITO Y TRANSPORTE,
Frequency,Frecuencia,
Friday,Viernes,
From,Desde,
From Address 1,Dirección Desde 1,
From Address 2,Dirección Desde 2,
From Currency and To Currency cannot be same,'Desde moneda - a moneda' no pueden ser las mismas,
From Date and To Date lie in different Fiscal Year,Desde la fecha hasta la fecha se encuentran en diferentes años fiscales,
From Date cannot be greater than To Date,La fecha 'Desde' no puede ser mayor que la fecha 'Hasta',
From Date must be before To Date,La fecha 'Desde' tiene que ser menor de la fecha 'Hasta',
From Date should be within the Fiscal Year. Assuming From Date = {0},La fecha 'Desde' tiene que pertenecer al rango del año fiscal = {0},
From Datetime,Desde Fecha y Hora,
From Delivery Note,Desde nota de entrega,
From Fiscal Year,Del año fiscal,
From GSTIN,De GSTIN,
From Party Name,Del Nombre de la Parte,
From Pin Code,Del código pin,
From Place,Desde el lugar,
From Range has to be less than To Range,Rango Desde tiene que ser menor que Rango Hasta,
From State,Del estado,
From Time,Desde hora,
From Time Should Be Less Than To Time,"""Desde tiempo"" debe ser menos que ""Hasta tiempo""",
From Time cannot be greater than To Time.,Tiempo Desde no puede ser mayor Tiempo Hasta,
"From a supplier under composition scheme, Exempt and Nil rated","De un proveedor bajo esquema de composición, exento y sin calificación",
From and To dates required,Desde y Hasta la fecha solicitada,
From value must be less than to value in row {0},El valor debe ser menor que el valor de la línea {0},
From {0} | {1} {2},Desde {0} | {1} {2},
Fulfillment,Cumplimiento,
Full,Completo,
Full Name,Nombre completo,
Fully Depreciated,Totalmente depreciado,
Furnitures and Fixtures,Muebles y accesorios,
"Further accounts can be made under Groups, but entries can be made against non-Groups","Las futuras cuentas se pueden crear bajo grupos, pero las entradas se crearán dentro de las subcuentas.",
Further cost centers can be made under Groups but entries can be made against non-Groups,"Los centros de costos se pueden crear bajo grupos, pero las entradas se crearán dentro de las subcuentas.",
Further nodes can be only created under 'Group' type nodes,Sólo se pueden crear más nodos bajo nodos de tipo  ' Grupo ',
GSTIN,GSTIN,
GSTR3B-Form,Forma GSTR3B,
Gain/Loss on Asset Disposal,Ganancia/Pérdida por enajenación de activos fijos,
Gantt Chart,Diagrama Gantt,
Gantt chart of all tasks.,Diagrama Gantt de todas las tareas.,
Gender,Género,
General,General,
General Ledger,Balance general,
Generate Material Requests (MRP) and Work Orders.,Generar Solicitudes de Material (MRP) y Órdenes de Trabajo.,
Generate Secret,Generar Secret,
Get Invocies,Obtener facturas,
Get Invoices,Obtenga facturas,
Get Invoices based on Filters,Obtenga facturas basadas en filtros,
Get Items from BOM,Obtener productos desde lista de materiales (LdM),
Get Items from Healthcare Services,Obtenga artículos de los servicios de salud,
Get Items from Prescriptions,Obtenga artículos de recetas,
Get Items from Product Bundle,Obtener Productos del Paquete de Productos,
Get Suppliers,Obtener proveedores,
Get Suppliers By,Obtener proveedores por,
Get Updates,Obtener actualizaciones,
Get customers from,Obtener clientes de,
Get from Patient Encounter,Obtenga del Encuentro de Pacientes,
Getting Started,Empezando,
GitHub Sync ID,ID de Sincronización de GitHub,
Global settings for all manufacturing processes.,Configuración global para todos los procesos de producción,
Go to the Desktop and start using ERPNext,Ir al escritorio y comenzar a usar ERPNext,
GoCardless SEPA Mandate,Mandato de SEPA GoCardless,
GoCardless payment gateway settings,Configuración de pasarela de pago GoCardless,
Goal and Procedure,Meta y procedimiento,
Goals cannot be empty,Los objetivos no pueden estar vacíos,
Goods In Transit,Las mercancías en tránsito,
Goods Transferred,Bienes transferidos,
Goods and Services Tax (GST India),Impuesto de Bienes y Servicios (GST India),
Goods are already received against the outward entry {0},Las mercancías ya se reciben contra la entrada exterior {0},
Government,Gubernamental,
Grand Total,Total,
Grant,Conceder,
Grant Application,Solicitud de subvención,
Grant Leaves,Concesión de Licencias,
Grant information.,Información de la Concesión.,
Grocery,Abarrotes,
Gross Profit,Beneficio bruto,
Gross Profit %,Beneficio bruto %,
Gross Profit / Loss,Utilidad / Pérdida Bruta,
Gross Purchase Amount,Importe Bruto de Compra,
Gross Purchase Amount is mandatory,Importe Bruto de Compra es obligatorio,
Group by Account,Agrupar por cuenta,
Group by Party,Agrupar por Tercero,
Group by Voucher,Agrupar por Comprobante,
Group by Voucher (Consolidated),Agrupar por Comprobante (Consolidado),
Group node warehouse is not allowed to select for transactions,No se permite seleccionar el almacén de nodos de grupo para operaciones,
Group to Non-Group,Grupo a No-Grupo,
Group your students in batches,Agrupar sus estudiantes en lotes,
Groups,Grupos,
Guardian1 Email ID,ID de correo electrónico del Tutor1,
Guardian1 Mobile No,Móvil del Tutor1,
Guardian1 Name,Nombre del Tutor1,
Guardian2 Email ID,ID de correo electrónico del Tutor2,
Guardian2 Mobile No,Móvil del Tutor2,
Guardian2 Name,Nombre del Tutor2,
HR Manager,Gerente de recursos humanos (RRHH),
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Yearly,Semestral,
Half-Yearly,Semestral,
Hardware,Hardware,
Head of Marketing and Sales,Director de marketing y ventas,
Health Care,Asistencia médica,
Healthcare,Atención Médica,
Healthcare (beta),Atención Médica (beta),
Healthcare Practitioner,Profesional de la salud,
Healthcare Practitioner not available on {0},Profesional de la salud no está disponible en {0},
Healthcare Practitioner {0} not available on {1},El profesional de la salud {0} no está disponible en {1},
Healthcare Service Unit,Unidad de servicios de salud,
Healthcare Service Unit Tree,Árbol de unidad de servicio de salud,
Healthcare Service Unit Type,Tipo de unidad de servicio de salud,
Healthcare Services,Servicios de atención médica,
Healthcare Settings,Configuración de Atención Médica,
Help Results for,Resultados de ayuda para,
High,Alto,
High Sensitivity,Alta sensibilidad,
Hold,Mantener,
Hold Invoice,Retener la Factura,
Holiday,Vacaciones,
Holiday List,Lista de festividades,
Hotel Rooms of type {0} are unavailable on {1},Las habitaciones de hotel del tipo {0} no están disponibles en {1},
Hotels,Hoteles,
Hourly,Cada Hora,
Hours,Horas,
How Pricing Rule is applied?,¿Cómo se aplica la regla precios?,
Hub Category,Categoría de Hub,
Hub Sync ID,ID de Sincronización del Hub,
Human Resource,Recursos humanos,
Human Resources,Recursos humanos,
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,
Interests,Intereses,
Internet Publishing,Publicación por internet,
Intra-State Supplies,Suministros intraestatales,
Introduction,Introducción,
Invalid Attribute,Atributo no válido,
Invalid Blanket Order for the selected Customer and Item,Pedido de manta inválido para el cliente y el artículo seleccionado,
Invalid Company for Inter Company Transaction.,Empresa inválida para transacciones entre empresas.,
Invalid GSTIN! A GSTIN must have 15 characters.,GSTIN inválido! Un GSTIN debe tener 15 caracteres.,
Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,GSTIN inválido! Los primeros 2 dígitos de GSTIN deben coincidir con el número de estado {0}.,
Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,GSTIN inválido! La entrada que ha ingresado no coincide con el formato de GSTIN.,
Invalid Posting Time,Tiempo de publicación no válido,
Invalid attribute {0} {1},Atributo no válido {0} {1},
Invalid quantity specified for item {0}. Quantity should be greater than 0.,La cantidad especificada es inválida para el elemento {0}. La cantidad debe ser mayor que 0 .,
Invalid reference {0} {1},Referencia inválida {0} {1},
Invalid {0},No válida {0},
Invalid {0} for Inter Company Transaction.,No válido {0} para la transacción entre empresas.,
Invalid {0}: {1},No válido {0}: {1},
Inventory,Inventario,
Investment Banking,Inversión en la banca,
Investments,Inversiones,
Invoice,FACTURA,
Invoice Created,Factura creada,
Invoice Discounting,Descuento de facturas,
Invoice Patient Registration,Registro de Factura Paciente,
Invoice Posting Date,Fecha de la factura de envío,
Invoice Type,Tipo de factura,
Invoice already created for all billing hours,Factura ya creada para todas las horas de facturación,
Invoice can't be made for zero billing hour,No se puede facturar por cero horas de facturación,
Invoice {0} no longer exists,La factura {0} ya no existe,
Invoiced,Facturado,
Invoiced Amount,Cantidad facturada,
Invoices,Facturas,
Invoices for Costumers.,Facturas para clientes.,
Inward supplies from ISD,Suministros internos de ISD,
Inward supplies liable to reverse charge (other than 1 & 2 above),Suministros internos sujetos a recargo (aparte de 1 y 2 arriba),
Is Active,Está activo,
Is Default,Es por defecto,
Is Existing Asset,Es Activo Existente,
Is Frozen,Se encuentra congelado(a),
Is Group,Es un grupo,
Issue,Incidencia,
Issue Material,Distribuir materiales,
Issued,Emitido,
Issues,Incidencias,
It is needed to fetch Item Details.,Se necesita a buscar Detalles del artículo.,
Item,Producto,
Item 1,Elemento 1,
Item 2,Elemento 2,
Item 3,Elemento 3,
Item 4,Elemento 4,
Item 5,Elemento 5,
Item Cart,Articulo de Carrito de Compras,
Item Code,Código del Producto,
Item Code cannot be changed for Serial No.,El código del producto no se puede cambiar por un número de serie,
Item Code required at Row No {0},Código del producto requerido en la línea: {0},
Item Description,Descripción del Producto,
Item Group,Grupo de Productos,
Item Group Tree,Árbol de Productos,
Item Group not mentioned in item master for item {0},El grupo del artículo no se menciona en producto maestro para el elemento {0},
Item Name,Nombre del árticulo,
Item Price added for {0} in Price List {1},Precio del producto añadido para {0} en Lista de Precios {1},
"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","El precio del artículo aparece varias veces según la Lista de precios, Proveedor / Cliente, Moneda, Artículo, UOM, Cantidad y fechas.",
Item Price updated for {0} in Price List {1},Precio del producto actualizado para {0} en Lista de Precios {1},
Item Row {0}: {1} {2} does not exist in above '{1}' table,La fila de elemento {0}: {1} {2} no existe en la tabla &#39;{1}&#39; anterior,
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,"El campo de impuesto del producto {0} debe tener un tipo de cuenta de impuestos, ingresos, cargos o gastos",
Item Template,Plantilla del Artículo,
Item Variant Settings,Configuraciones de Variante de Artículo,
Item Variant {0} already exists with same attributes,Artículo Variant {0} ya existe con los mismos atributos,
Item Variants,Variantes del Producto,
Item Variants updated,Variantes del artículo actualizadas,
Item has variants.,El producto tiene variantes.,
Item must be added using 'Get Items from Purchase Receipts' button,El producto debe ser agregado utilizando el botón 'Obtener productos desde recibos de compra',
Item valuation rate is recalculated considering landed cost voucher amount,La tasa de valorización del producto se vuelve a calcular considerando los costos adicionales del voucher,
Item variant {0} exists with same attributes,Existe la variante de artículo {0} con mismos atributos,
Item {0} does not exist,El elemento {0} no existe,
Item {0} does not exist in the system or has expired,El elemento {0} no existe en el sistema o ha expirado,
Item {0} has already been returned,El producto {0} ya ha sido devuelto,
Item {0} has been disabled,Elemento {0} ha sido desactivado,
Item {0} has reached its end of life on {1},El producto {0} ha llegado al fin de la vida útil el {1},
Item {0} ignored since it is not a stock item,El producto {0} ha sido ignorado ya que no es un elemento de stock,
"Item {0} is a template, please select one of its variants","El producto {0} es una plantilla, por favor seleccione una de sus variantes",
Item {0} is cancelled,El producto {0} esta cancelado,
Item {0} is disabled,Artículo {0} está deshabilitado,
Item {0} is not a serialized Item,El producto {0} no es un producto serializado,
Item {0} is not a stock Item,El producto {0} no es un producto de stock,
Item {0} is not active or end of life has been reached,El producto {0} no está activo o ha llegado al final de la vida útil,
Item {0} is not setup for Serial Nos. Check Item master,"El producto {0} no está configurado para utilizar Números de Serie, por favor revise el artículo maestro",
Item {0} is not setup for Serial Nos. Column must be blank,"El producto {0} no está configurado para utilizar Números de Serie, la columna debe permanecer en blanco",
Item {0} must be a Fixed Asset Item,Elemento {0} debe ser un elemento de activo fijo,
Item {0} must be a Sub-contracted Item,El elemento: {0} debe ser un producto sub-contratado,
Item {0} must be a non-stock item,Elemento {0} debe ser un elemento de no-stock,
Item {0} must be a stock Item,El producto {0} debe ser un producto en stock,
Item {0} not found,Producto {0} no encontrado,
Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},El elemento {0} no se encuentra en 'Materias Primas Suministradas' en la tabla de la órden de compra {1},
Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,El producto {0}: Con la cantidad ordenada {1} no puede ser menor que el pedido mínimo {2} (definido en el producto).,
Item: {0} does not exist in the system,El producto: {0} no existe en el sistema,
Items,Productos,
Items Filter,Artículos Filtra,
Items and Pricing,Productos y Precios,
Items for Raw Material Request,Artículos para solicitud de materia prima,
Job Card,Tarjeta de trabajo,
Job card {0} created,Tarjeta de trabajo {0} creada,
Join,Unirse,
Journal Entries {0} are un-linked,Los asientos contables {0} no están enlazados,
Journal Entry,Asiento contable,
Journal Entry {0} does not have account {1} or already matched against other voucher,El asiento {0} no tiene cuenta de {1} o ya esta enlazado con otro comprobante,
Kanban Board,Tablero Kanban,
Key Reports,Reportes clave,
LMS Activity,Actividad de LMS,
Lab Test,Prueba de laboratorio,
Lab Test Report,Informe de prueba de laboratorio,
Lab Test Sample,Muestra de prueba de laboratorio,
Lab Test Template,Plantilla de prueba de laboratorio,
Lab Test UOM,UOM de Prueba de Laboratorio,
Lab Tests and Vital Signs,Pruebas de laboratorio y signos vitales,
Lab result datetime cannot be before testing datetime,La hora del resultado de laboratorio no puede ser antes de la hora de la prueba,
Lab testing datetime cannot be before collection datetime,La hora de prueba de laboratorio no puede ser antes de la fecha de recopilación,
Label,Etiqueta,
Laboratory,Laboratorio,
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 Management,Gestión de ausencias,
Leave and Attendance,Ausencia y Asistencia,
Leave application {0} already exists against the student {1},Dejar la aplicación {0} ya existe contra el estudiante {1},
Leaves has been granted sucessfully,Hojas se ha otorgado con éxito,
Leaves must be allocated in multiples of 0.5,Vacaciones deben distribuirse en múltiplos de 0.5,
Ledger,Libro mayor,
Legal,Legal,
Legal Expenses,Gastos legales,
Letter Head,Membrete,
Letter Heads for print templates.,Membretes para las plantillas de impresión.,
Level,Nivel,
Liability,Obligaciones,
License,Licencia,
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 Half Day,Marcar medio día,
Mark Present,Marcar Presente,
Marketing,Márketing,
Marketing Expenses,Gastos de Publicidad,
Marketplace,Mercado,
Marketplace Error,Error de Marketplace,
Masters,Maestros,
Match Payments with Invoices,Conciliacion de pagos con facturas,
Match non-linked Invoices and Payments.,Coincidir las facturas y pagos no vinculados.,
Material,Material,
Material Consumption,Material de consumo,
Material Consumption is not set in Manufacturing Settings.,El Consumo de Material no está configurado en Configuraciones de Fabricación.,
Material Receipt,Recepción de Materiales,
Material Request,Solicitud de Materiales,
Material Request Date,Fecha de Solicitud de materiales,
Material Request No,Requisición de materiales Nº,
"Material Request not created, as quantity for Raw Materials already available.","Requerimiento de material no creado, debido a que la cantidad de materia prima ya está disponible.",
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Máxima requisición de materiales {0} es posible para el producto {1} en las órdenes de venta {2},
Material Request to Purchase Order,Requisición de materiales hacia órden de compra,
Material Request {0} is cancelled or stopped,Requisición de materiales {0} cancelada o detenida,
Material Request {0} submitted.,Requerimiento de material {0} enviado.,
Material Transfer,Transferencia de material,
Material Transferred,Material transferido,
Material to Supplier,Materiales de Proveedor,
Max discount allowed for item: {0} is {1}%,Descuento máximo permitido para el producto: {0} es {1}%,
Max: {0},Máximo: {0},
Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Las muestras máximas - {0} se pueden conservar para el lote {1} y el elemento {2}.,
Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Las muestras máximas - {0} ya se han conservado para el lote {1} y el elemento {2} en el lote {3}.,
Maximum discount for Item {0} is {1}%,El descuento máximo para el artículo {0} es {1}%,
Medical Code,Código médico,
Medical Code Standard,Norma del Código Médico,
Medical Department,Departamento médico,
Medical Record,Registro Médico,
Medium,Medio,
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,
Model,Modelo,
Moderate Sensitivity,Sensibilidad moderada,
Monday,Lunes,
Monthly,Mensual,
Monthly Distribution,Distribución mensual,
More,Más,
More Information,Mas información,
More...,Más...,
Motion Picture & Video,Imagén en movimiento y vídeo,
Move,mover,
Move Item,Mover elemento,
Multi Currency,Multi moneda,
Multiple Item prices.,Configuración de múltiples precios para los productos,
Multiple Loyalty Program found for the Customer. Please select manually.,Múltiple programa de lealtad encontrado para el cliente. Por favor seleccione manualmente,
"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Reglas Precio múltiples existe con el mismo criterio, por favor, resolver los conflictos mediante la asignación de prioridad. Reglas de precios: {0}",
Multiple Variants,Multiples Variantes,
Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,"Existen varios ejercicios para la fecha {0}. Por favor, establece la compañía en el año fiscal",
Music,Música,
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 Profit,Beneficio neto,
Net Total,Total neto,
New Account Name,Nombre de la nueva cuenta,
New Address,Nueva direccion,
New BOM,Nueva Solicitud de Materiales,
New Batch ID (Optional),Nuevo ID de lote (opcional),
New Batch Qty,Nueva cantidad de lote,
New Company,Nueva compañia,
New Cost Center Name,Nombre del nuevo centro de costes,
New Customer Revenue,Ingresos del nuevo cliente,
New Customers,nuevos clientes,
New Department,Nuevo departamento,
New Employee,Nuevo empleado,
New Location,Nueva ubicacion,
New Quality Procedure,Nuevo procedimiento de calidad,
New Sales Invoice,Nueva factura de venta,
New Sales Person Name,Nombre nuevo encargado de ventas,
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,El número de serie no tiene almacén asignado. El almacén debe establecerse por entradas de inventario o recibos de compra,
New Warehouse Name,Almacén nuevo nombre,
New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Nuevo límite de crédito es menor que la cantidad pendiente actual para el cliente. límite de crédito tiene que ser al menos {0},
New task,Nueva tarea,
New {0} pricing rules are created,Se crean nuevas {0} reglas de precios,
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 Item with Barcode {0},Ningún producto con código de barras {0},
No Item with Serial No {0},Ningún producto con numero de serie {0},
No Items available for transfer,No hay Elementos disponibles para transferir,
No Items selected for transfer,No hay Elementos seleccionados para transferencia,
No Items to pack,No hay productos para empacar,
No Items with Bill of Materials to Manufacture,No hay artículos con la lista de materiales para la fabricación de,
No Items with Bill of Materials.,No hay artículos con lista de materiales.,
No Permission,Sin permiso,
No Remarks,No hay observaciones,
No Result to submit,No hay resultados para enviar,
No Student Groups created.,No se crearon grupos de estudiantes.,
No Students in,No hay estudiantes en,
No Tax Withholding data found for the current Fiscal Year.,No se encontraron datos de retención de impuestos para el año fiscal en curso.,
No Work Orders created,No se crearon Órdenes de Trabajo,
No accounting entries for the following warehouses,No hay asientos contables para los siguientes almacenes,
No contacts with email IDs found.,No se encontraron contactos con ID de correo electrónico.,
No data for this period,No hay datos para este período.,
No description given,Ninguna descripción definida,
No employees for the mentioned criteria,Sin empleados por los criterios mencionados,
No gain or loss in the exchange rate,No hay ganancia o pérdida en el tipo de cambio,
No items listed,No hay elementos en la lista,
No items to be received are overdue,No hay elementos para ser recibidos están vencidos,
No material request created,No se ha creado ninguna solicitud material,
No of Interactions,No de interacciones,
No of Shares,Nro de Acciones,
No pending Material Requests found to link for the given items.,No se encontraron solicitudes de material pendientes de vincular para los artículos dados.,
No products found,No se encontraron productos.,
No products found.,No se encuentran productos,
No record found,No se han encontraron registros,
No records found in the Invoice table,No se encontraron registros en la tabla de facturas,
No records found in the Payment table,No se encontraron registros en la tabla de pagos,
No tasks,No hay tareas,
No time sheets,No hay hojas de tiempo,
No values,Sin valores,
No {0} found for Inter Company Transactions.,No se ha encontrado {0} para transacciones entre empresas.,
Non GST Inward Supplies,Suministros internos no GST,
Non Profit,Sin fines de lucro,
Non Profit (beta),Sin fines de lucro (beta),
Non-GST outward supplies,Suministros externos no GST,
Non-Group to Group,No-Grupo a Grupo,
None,Ninguna,
None of the items have any change in quantity or value.,Ninguno de los productos tiene cambios en el valor o en la existencias.,
Nos,Nos.,
Not Available,No disponible,
Not Marked,No marcado,
Not Paid and Not Delivered,No pago y no entregado,
Not Permitted,No permitido,
Not Started,No iniciado,
Not active,No activo,
Not allow to set alternative item for the item {0},No permitir establecer un elemento alternativo para el Artículo {0},
Not allowed to update stock transactions older than {0},No tiene permisos para actualizar las transacciones de stock mayores al  {0},
Not authorized to edit frozen Account {0},No autorizado para editar la cuenta congelada {0},
Not authroized since {0} exceeds limits,No autorizado desde {0} excede los límites,
Not permitted for {0},No está permitido para {0},
"Not permitted, configure Lab Test Template as required","No permitido, configure la plantilla de prueba de laboratorio según sea necesario",
Not permitted. Please disable the Service Unit Type,No permitido. Deshabilite el Tipo de Unidad de Servicio,
Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),"Nota: El Debido/Fecha de referencia, excede los días de créditos concedidos para el cliente por {0} día(s)",
Note: Item {0} entered multiple times,Nota : El producto {0} ha sido ingresado varias veces,
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Nota : El registro del pago no se creará hasta que la cuenta del tipo 'Banco o Cajas' sea definida,
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Nota : El sistema no verificará sobre-entregas y exceso de almacenamiento para el producto {0} ya que la cantidad es 0,
Note: There is not enough leave balance for Leave Type {0},Nota : No cuenta con suficientes días para la ausencia del tipo {0},
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Nota: este centro de costes es una categoría. No se pueden crear asientos contables en las categorías.,
Note: {0},Nota: {0},
Notes,Notas,
Nothing is included in gross,Nada está incluido en bruto,
Nothing more to show.,Nada más para mostrar.,
Notify Customers via Email,Notificar a los clientes por correo electrónico,
Number,Número,
Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Número de Depreciaciones Reservadas no puede ser mayor que el número total de Depreciaciones,
Number of Interaction,Número de Interacciones,
Number of Order,Número de orden,
"Number of new Account, it will be included in the account name as a prefix","Número de Cuenta Nueva, se incluirá en el nombre de la cuenta como prefijo",
"Number of new Cost Center, it will be included in the cost center name as a prefix",Número de centro de coste nuevo: se incluirá en el nombre del centro de coste como prefijo.,
Number of root accounts cannot be less than 4,El número de cuentas raíz no puede ser inferior a 4,
Odometer,Cuentakilómetros,
Office Equipments,Equipos de oficina,
Office Maintenance Expenses,Gastos de mantenimiento de oficina,
Office Rent,Alquiler de oficina,
On Hold,En espera,
On Net Total,Sobre el total neto,
One customer can be part of only single Loyalty Program.,Un cliente puede ser parte de un solo programa de lealtad.,
Online Auctions,Subastas en línea,
"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",En la tabla a continuación solo se seleccionará al Estudiante Solicitante con el estado &quot;Aprobado&quot;.,
Only users with {0} role can register on Marketplace,Solo los usuarios con el rol {0} pueden registrarse en Marketplace,
Open BOM {0},Abrir la lista de materiales {0},
Open Item {0},Abrir elemento {0},
Open Notifications,Abrir notificaciones,
Open Orders,Ordenes abiertas,
Open a new ticket,Abra un nuevo ticket,
Opening,Apertura,
Opening (Cr),Apertura (Cred),
Opening (Dr),Apertura (Deb),
Opening Accounting Balance,Apertura de saldos contables,
Opening Accumulated Depreciation,Apertura de la depreciación acumulada,
Opening Accumulated Depreciation must be less than equal to {0},La apertura de la depreciación acumulada debe ser inferior o igual a {0},
Opening Balance,Saldo de apertura,
Opening Balance Equity,Apertura de Capital,
Opening Date and Closing Date should be within same Fiscal Year,Fecha de Apertura y Fecha de Cierre deben ser dentro del mismo año fiscal,
Opening Date should be before Closing Date,Fecha de apertura debe ser antes de la Fecha de Cierre,
Opening Entry Journal,Diario de Inicio de Apertura,
Opening Invoice Creation Tool,Herramienta de Apertura de Creación de Facturas,
Opening Invoice Item,Abrir el Artículo de la Factura,
Opening Invoices,Factura de Apertura,
Opening Invoices Summary,Resumen de Facturas de Apertura,
Opening Qty,Cant. de Apertura,
Opening Stock,Stock de apertura,
Opening Stock Balance,Saldo inicial de Stock,
Opening Value,Valor de apertura,
Opening {0} Invoice created,Apertura Factura {0} Creada,
Operation,Operación,
Operation Time must be greater than 0 for Operation {0},El tiempo de operación debe ser mayor que 0 para {0},
"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","La operación {0} tomará mas tiempo que la capacidad de producción de la estación {1}, por favor divida la tarea en varias operaciones",
Operations,Operaciones,
Operations cannot be left blank,Las operaciones no pueden dejarse en blanco,
Opp Count,Cant Oportunidad,
Opp/Lead %,Opp / Inviciativa %,
Opportunities,Oportunidades,
Opportunities by lead source,Oportunidades por fuente de iniciativa,
Opportunity,Oportunidad,
Opportunity Amount,Monto de Oportunidad,
"Optional. Sets company's default currency, if not specified.","Opcional. Establece moneda por defecto de la empresa, si no se especifica.",
Optional. This setting will be used to filter in various transactions.,Opcional. Esta configuración es utilizada para filtrar la cuenta de otras transacciones,
Options,Opciones,
Order Count,Cantidad de Pedidos,
Order Entry,Orden de entrada,
Order Value,Valor del pedido,
Order rescheduled for sync,Orden reprogramada para sincronización,
Order/Quot %,Orden / Cotización %,
Ordered,Ordenado/a,
Ordered Qty,Cantidad ordenada,
"Ordered Qty: Quantity ordered for purchase, but not received.","Pedido Cantidad : Cantidad a pedir para la compra, pero no recibió .",
Orders,Órdenes,
Orders released for production.,Las órdenes publicadas para la producción.,
Organization,Organización,
Organization Name,Nombre de la Organización,
Other,Otro,
Other Reports,Otros Reportes,
"Other outward supplies(Nil rated,Exempted)","Otros suministros externos (sin calificación, exentos)",
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,
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,
Past Due Date,Fecha de vencimiento anterior,
Patient,Paciente,
Patient Appointment,Cita del paciente,
Patient Encounter,Encuentro con el paciente,
Patient not found,Paciente no encontrado,
Pay Remaining,Pagar restante,
Pay {0} {1},Pagar {0} {1},
Payable,Pagadero,
Payable Account,Cuenta por pagar,
Payment,Pago,
Payment Cancelled. Please check your GoCardless Account for more details,Pago cancelado Verifique su Cuenta GoCardless para más detalles,
Payment Confirmation,Confirmación de pago,
Payment Document,Documento de pago,
Payment Due Date,Fecha de pago,
Payment Entries {0} are un-linked,Las entradas de pago {0} estan no-relacionadas,
Payment Entry,Entrada de pago,
Payment Entry already exists,Entrada de pago ya existe,
Payment Entry has been modified after you pulled it. Please pull it again.,"El registro del pago ha sido modificado antes de su modificación. Por favor, inténtelo de nuevo.",
Payment Entry is already created,Entrada de Pago ya creada,
Payment Failed. Please check your GoCardless Account for more details,Pago Fallido. Verifique su Cuenta GoCardless para más detalles,
Payment Gateway,Pasarela de Pago,
"Payment Gateway Account not created, please create one manually.","Cuenta de Pasarela de Pago no creada, por favor crear una manualmente.",
Payment Gateway Name,Nombre de Pasarela de Pago,
Payment Mode,Método de Pago,
Payment Receipt Note,Nota de Recibo de Pago,
Payment Request,Solicitud de pago,
Payment Request for {0},Solicitud de pago para {0},
Payment Tems,Términos de Pago,
Payment Term,Plazo de pago,
Payment Terms,Términos de pago,
Payment Terms Template,Plantilla de Términos de Pago,
Payment Terms based on conditions,Términos de pago basados en condiciones,
Payment Type,Tipo de pago,
"Payment Type must be one of Receive, Pay and Internal Transfer","Tipo de pago debe ser uno de Recibir, Pagar y Transferencia Interna",
Payment against {0} {1} cannot be greater than Outstanding Amount {2},El pago para {0} {1} no puede ser mayor que el pago pendiente {2},
Payment request {0} created,Pedido de pago {0} creado,
Payments,Pagos.,
Payroll Payable,Nómina por Pagar,
Payslip,Recibo de Sueldo,
Pending Activities,Actividades pendientes,
Pending Amount,Monto pendiente,
Pending Leaves,Licencias Pendientes,
Pending Qty,Cantidad pendiente,
Pending Quantity,Cantidad pendiente,
Pending Review,Pendiente de revisar,
Pending activities for today,Actividades pendientes para hoy,
Pension Funds,Fondo de pensiones,
Percentage Allocation should be equal to 100%,El porcentaje de asignación debe ser igual al 100%,
Perception Analysis,Análisis de percepción,
Period,Período,
Period Closing Entry,Asiento de cierre de período,
Period Closing Voucher,Cierre de período,
Periodicity,Periodo,
Personal Details,Datos personales,
Pharmaceutical,Farmacéutico,
Pharmaceuticals,Productos farmacéuticos,
Physician,Médico,
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 check Multi Currency option to allow accounts with other currency,"Por favor, consulte la opción Multi moneda para permitir cuentas con otra divisa",
Please click on 'Generate Schedule',"Por favor, haga clic en 'Generar planificación'",
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Por favor, haga clic en 'Generar planificación' para obtener el no. de serie del producto {0}",
Please click on 'Generate Schedule' to get schedule,"Por favor, haga clic en 'Generar planificación' para obtener las tareas",
Please create purchase receipt or purchase invoice for the item {0},Cree un recibo de compra o una factura de compra para el artículo {0},
Please define grade for Threshold 0%,Por favor defina el grado para el Umbral 0%,
Please enable Applicable on Booking Actual Expenses,Habilite Aplicable a los gastos reales de reserva,
Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Habilite la opción Aplicable en el pedido y aplicable a los gastos reales de reserva,
Please enable pop-ups,"Por favor, active los pop-ups",
Please enter 'Is Subcontracted' as Yes or No,"Por favor, introduzca si 'Es sub-contratado' o no",
Please enter API Consumer Key,Por favor ingrese la Clave de Consumidor de API,
Please enter API Consumer Secret,Por favor ingrese API Consumer Secret,
Please enter Account for Change Amount,"Por favor, introduzca la cuenta para el importe de cambio",
Please enter Approving Role or Approving User,"Por favor, introduzca 'Función para aprobar' o 'Usuario de aprobación'---",
Please enter Cost Center,"Por favor, introduzca el centro de costos",
Please enter Delivery Date,"Por favor, introduzca la Fecha de Entrega",
Please enter Employee Id of this sales person,"Por favor, Introduzca ID de empleado para este vendedor",
Please enter Expense Account,"Por favor, ingrese la Cuenta de Gastos",
Please enter Item Code to get Batch Number,"Por favor, introduzca el código de artículo para obtener el número de lote",
Please enter Item Code to get batch no,"Por favor, ingrese el código del producto para obtener el numero de lote",
Please enter Item first,"Por favor, introduzca primero un producto",
Please enter Maintaince Details first,Por favor ingrese primero los detalles del mantenimiento,
Please enter Planned Qty for Item {0} at row {1},"Por favor, ingrese la cantidad planeada para el producto {0} en la fila {1}",
Please enter Preferred Contact Email,"Por favor, introduzca el contacto de correo electrónico preferido",
Please enter Production Item first,"Por favor, ingrese primero el producto a fabricar",
Please enter Purchase Receipt first,"Por favor, ingrese primero el recibo de compra",
Please enter Receipt Document,"Por favor, introduzca recepción de documentos",
Please enter Reference date,"Por favor, introduzca la fecha de referencia",
Please enter Reqd by Date,Ingrese Requerido por Fecha,
Please enter Woocommerce Server URL,Ingrese la URL del servidor WooCommerce,
Please enter Write Off Account,"Por favor, ingrese la cuenta de desajuste",
Please enter atleast 1 invoice in the table,"Por favor, introduzca al menos 1 factura en la tabla",
Please enter company first,"Por favor, ingrese primero la compañía",
Please enter company name first,"Por favor, ingrese el nombre de la compañia",
Please enter default currency in Company Master,"Por favor, ingrese la divisa por defecto en la compañía principal",
Please enter message before sending,"Por favor, ingrese el mensaje antes de enviarlo",
Please enter parent cost center,"Por favor, ingrese el centro de costos principal",
Please enter quantity for Item {0},"Por favor, ingrese la cantidad para el producto {0}",
Please enter relieving date.,"Por favor, introduzca la fecha de relevo",
Please enter valid Financial Year Start and End Dates,"Por favor, introduzca fecha de Inicio y Fin válidas para el Año Fiscal",
Please enter valid email address,Por favor ingrese una dirección de correo electrónico válida,
Please enter {0} first,"Por favor, introduzca {0} primero",
Please fill in all the details to generate Assessment Result.,Complete todos los detalles para generar el resultado de la evaluación.,
Please identify/create Account (Group) for type - {0},Identifique / cree una cuenta (grupo) para el tipo - {0},
Please identify/create Account (Ledger) for type - {0},Identifique / cree una cuenta (Libro mayor) para el tipo - {0},
Please login as another user to register on Marketplace,Inicie sesión como otro usuario para registrarse en Marketplace,
Please make sure you really want to delete all the transactions for this company. Your master data will remain as it is. This action cannot be undone.,"Por favor, asegurate de que realmente desea borrar todas las transacciones de esta compañía. Sus datos maestros permanecerán intactos. Esta acción no se puede deshacer.",
Please mention Basic and HRA component in Company,Mencione el componente básico y HRA en la empresa,
Please mention Round Off Account in Company,"Por favor, indique la cuenta que utilizará para el redondeo",
Please mention Round Off Cost Center in Company,"Por favor, indique las centro de costos de redondeo",
Please mention no of visits required,"Por favor, indique el numero de visitas requeridas",
Please mention the Lead Name in Lead {0},Por favor mencione el nombre principal en la iniciativa {0},
Please pull items from Delivery Note,"Por favor, extraiga los productos de la nota de entrega",
Please register the SIREN number in the company information file,Registre el número SIREN en el archivo de información de la empresa,
Please remove this Invoice {0} from C-Form {1},"Por favor, elimine esta factura {0} de C-Form {1}",
Please save the patient first,Por favor guarde al paciente primero,
Please save the report again to rebuild or update,Guarde el informe nuevamente para reconstruir o actualizar,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Por favor seleccione el monto asignado, tipo de factura y número en una fila",
Please select Apply Discount On,Por favor seleccione 'Aplicar descuento en',
Please select BOM against item {0},Seleccione la Lista de Materiales contra el Artículo {0},
Please select BOM for Item in Row {0},"Por favor, seleccione la lista de materiales para el artículo en la fila {0}",
Please select BOM in BOM field for Item {0},"Por favor, seleccione la lista de materiales (LdM) para el producto {0}",
Please select Category first,"Por favor, seleccione primero la categoría",
Please select Charge Type first,"Por favor, seleccione primero el tipo de cargo",
Please select Company,"Por favor, seleccione la empresa",
Please select Company and Posting Date to getting entries,Seleccione Empresa y Fecha de publicación para obtener entradas,
Please select Company first,"Por favor, seleccione primero la compañía",
Please select Completion Date for Completed Asset Maintenance Log,Seleccione Fecha de Finalización para el Registro de Mantenimiento de Activos Completado,
Please select Completion Date for Completed Repair,Seleccione Fecha de Finalización para la Reparación Completa,
Please select Course,Por favor seleccione Curso,
Please select Drug,Por favor seleccione fármaco,
Please select Existing Company for creating Chart of Accounts,"Por favor, seleccione empresa ya existente para la creación del plan de cuentas",
Please select Healthcare Service,Por favor seleccione Servicio de Salud,
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Por favor, seleccione el ítem donde ""Es Elemento de Stock"" es ""No"" y ""¿Es de artículos de venta"" es ""Sí"", y no hay otro paquete de producto",
Please select Maintenance Status as Completed or remove Completion Date,Seleccione Estado de Mantenimiento como Completado o elimine Fecha de Finalización,
Please select Party Type first,"Por favor, seleccione primero el tipo de entidad",
Please select Patient,Seleccione Paciente,
Please select Patient to get Lab Tests,Seleccione Paciente para obtener Pruebas de Laboratorio,
Please select Posting Date before selecting Party,"Por favor, seleccione fecha de publicación antes de seleccionar la Parte",
Please select Posting Date first,"Por favor, seleccione fecha de publicación primero",
Please select Price List,"Por favor, seleccione la lista de precios",
Please select Program,Seleccione el programa,
Please select Qty against item {0},Seleccione Cant. contra el Elemento {0},
Please select Sample Retention Warehouse in Stock Settings first,Seleccione primero Almacén de Retención de Muestras en la Configuración de Stock.,
Please select Start Date and End Date for Item {0},"Por favor, seleccione Fecha de inicio y Fecha de finalización para el elemento {0}",
Please select Student Admission which is mandatory for the paid student applicant,Seleccione la Admisión de Estudiante que es obligatoria para la Solicitud de Estudiante paga,
Please select a BOM,Seleccione una Lista de Materiales,
Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Seleccione un lote para el artículo {0}. No se puede encontrar un solo lote que cumpla este requisito,
Please select a Company,"Por favor, seleccione la compañía",
Please select a batch,Por favor seleccione un lote,
Please select a field to edit from numpad,"Por favor, seleccione un campo para editar desde numpad",
Please select a table,Por favor seleccione una mesa,
Please select a valid Date,Por favor seleccione una fecha valida,
Please select a value for {0} quotation_to {1},"Por favor, seleccione un valor para {0} quotation_to {1}",
Please select a warehouse,Por favor seleccione un almacén,
Please select at least one domain.,Seleccione al menos un dominio.,
Please select correct account,"Por favor, seleccione la cuenta correcta",
Please select date,Por favor seleccione la fecha,
Please select item code,"Por favor, seleccione el código del producto",
Please select month and year,Por favor seleccione el mes y el año,
Please select 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 {0} in Company {1},Por favor seleccione el valor por defecto {0} en la empresa {1},
Please set filter based on Item or Warehouse,"Por favor, configurar el filtro basado en Elemento o Almacén",
Please set leave policy for employee {0} in Employee / Grade record,Establezca la política de licencia para el empleado {0} en el registro de Empleado / Grado,
Please set recurring after saving,Por favor configura recurrente después de guardar,
Please set the Customer Address,"Por favor, configure la dirección del cliente",
Please set the Default Cost Center in {0} company.,Configure el Centro de Costo predeterminado en la empresa {0}.,
Please set the Email ID for the Student to send the Payment Request,Configure la ID de correo electrónico para que el estudiante envíe la solicitud de pago,
Please set the Item Code first,Configure primero el Código del Artículo,
Please set the Payment Schedule,Por favor establezca el calendario de pagos,
Please set 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 specify Company,"Por favor, especifique la compañía",
Please specify Company to proceed,"Por favor, especifique la compañía para continuar",
Please specify a valid 'From Case No.',"Por favor, especifique un numero de caso válido",
Please specify a valid Row ID for row {0} in table {1},"Por favor, especifique un ID de fila válida para la línea {0} en la tabla {1}",
Please specify at least one attribute in the Attributes table,"Por favor, especifique al menos un atributo en la tabla",
Please specify currency in Company,"Por favor, especifique la divisa en la compañía",
Please specify either Quantity or Valuation Rate or both,"Por favor indique la Cantidad o el Tipo de Valoración, o ambos",
Please specify from/to range,"Por favor, especifique el rango (desde / hasta)",
Please supply the specified items at the best possible rates,Por favor suministrar los elementos especificados en las mejores tasas posibles,
Please wait 3 days before resending the reminder.,Espere 3 días antes de volver a enviar el recordatorio.,
Point of Sale,Punto de Venta,
Point-of-Sale,Punto de Venta (POS),
Point-of-Sale Profile,Perfiles de punto de venta (POS),
Portal,Portal,
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,
Prev,Anterior,
Preview,Vista Previa,
Previous Financial Year is not closed,Ejercicio anterior no está cerrado,
Price,Precio,
Price List,Lista de precios,
Price List Currency not selected,El tipo de divisa para la lista de precios no ha sido seleccionado,
Price List Rate,Tarifa de la lista de precios,
Price List master.,Configuracion de las listas de precios,
Price List must be applicable for Buying or Selling,La lista de precios debe ser aplicable para las compras o ventas,
Price List {0} is disabled or does not exist,Lista de precios {0} está desactivada o no existe,
Price or product discount slabs are required,Se requieren losas de descuento de precio o producto,
Pricing,Precios,
Pricing Rule,Regla de precios,
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","La 'regla precios' es seleccionada primero basada en el campo 'Aplicar En' que puede ser un artículo, grupo de artículos o marca.",
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","La regla de precios está hecha para sobrescribir la lista de precios y define un porcentaje de descuento, basado en algunos criterios.",
Pricing Rule {0} is updated,La regla de precios {0} se actualiza,
Pricing Rules are further filtered based on quantity.,Las 'reglas de precios' se pueden filtrar en base a la cantidad.,
Primary Address Details,Detalles de la Dirección Primaria,
Primary Contact Details,Detalles de Contacto Principal,
Print Format,Formatos de Impresión,
Print IRS 1099 Forms,Imprimir formularios del IRS 1099,
Print Report Card,Imprimir Boleta de Calificaciones,
Print Settings,Ajustes de Impresión,
Print and Stationery,Impresión y Papelería,
Print settings updated in respective print format,Los ajustes de impresión actualizados en formato de impresión respectivo,
Print taxes with zero amount,Imprimir impuestos con importe nulo,
Printing and Branding,Impresión y marcas,
Private Equity,Capital de Riesgo,
Procedure,Procedimiento,
Process Day Book Data,Procesar datos del libro de día,
Process Master Data,Procesar datos maestros,
Processing Chart of Accounts and Parties,Plan de procesamiento de cuentas y partes,
Processing Items and UOMs,Procesamiento de artículos y unidades de medida,
Processing Party Addresses,Procesamiento de direcciones de fiestas,
Processing Vouchers,Procesando vales,
Procurement,Obtención,
Produced Qty,Cantidad producida,
Product,Producto,
Product Bundle,Conjunto / paquete de productos,
Product Search,Búsqueda de Producto,
Production,Producción,
Production Item,Elemento de producción,
Products,Productos,
Profit and Loss,Pérdidas y ganancias,
Profit for the year,Ganancias del año,
Program,Programa,
Program in the Fee Structure and Student Group {0} are different.,El programa en la estructura de tarifas y el grupo de estudiantes {0} son diferentes.,
Program {0} does not exist.,El programa {0} no existe.,
Program: ,Programa:,
Progress % for a task cannot be more than 100.,El % de avance para una tarea no puede ser más de 100.,
Project Collaboration Invitation,Invitación a Colaboración  de Proyecto,
Project Id,ID del proyecto,
Project Manager,Gerente de proyectos,
Project Name,Nombre de Proyecto,
Project Start Date,Fecha de inicio del proyecto,
Project Status,Estado del proyecto,
Project Summary for {0},Resumen del proyecto para {0},
Project Update.,Actualización del proyecto.,
Project Value,Valor del proyecto,
Project activity / task.,Actividad del proyecto / tarea.,
Project master.,Listado de todos los proyectos.,
Project-wise data is not available for Quotation,Los datos del proyecto no están disponibles para el presupuesto,
Projected,Proyectado,
Projected Qty,Cantidad proyectada,
Projected Quantity Formula,Fórmula de cantidad proyectada,
Projects,Proyectos,
Proposal Writing,Redacción de propuestas,
Proposal/Price Quote,Propuesta / Presupuesto,
Prospecting,Prospección,
Provisional Profit / Loss (Credit),Beneficio provisional / pérdida (Crédito),
Publications,Publicaciones,
Publish Items on Website,Publicar artículos en la página web,
Published,Publicado,
Publishing,Publicación,
Purchase,Compra,
Purchase Amount,Monto de la compra,
Purchase Date,Fecha de compra,
Purchase Invoice,Factura de compra,
Purchase Invoice {0} is already submitted,La factura de compra {0} ya existe o se encuentra validada,
Purchase Manager,Gerente de compras,
Purchase Master Manager,Director de compras,
Purchase Order,Orden de compra (OC),
Purchase Order Amount,Monto de orden de compra,
Purchase Order Amount(Company Currency),Monto del pedido de compra (moneda de la compañía),
Purchase Order Date,Fecha de Orden de Compra,
Purchase Order Items not received on time,Artículos de orden de compra no recibidos a tiempo,
Purchase Order number required for Item {0},Se requiere el numero de orden de compra para el producto {0},
Purchase Order to Payment,Orden de Compra a Pago,
Purchase Order {0} is not submitted,La orden de compra {0} no se encuentra validada,
Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Las órdenes de compra no están permitidas para {0} debido a una tarjeta de puntuación de {1}.,
Purchase Orders given to Suppliers.,Órdenes de compra enviadas a los proveedores.,
Purchase Price List,Lista de precios para las compras,
Purchase Receipt,Recibo de compra,
Purchase Receipt {0} is not submitted,El recibo de compra {0} no esta validado,
Purchase Tax Template,Plantilla de Impuestos sobre compras,
Purchase User,Usuario de compras,
Purchase orders help you plan and follow up on your purchases,Las órdenes de compra le ayudará a planificar y dar seguimiento a sus compras,
Purchasing,Adquisitivo,
Purpose must be one of {0},Propósito debe ser uno de {0},
Qty,Cantidad,
Qty To Manufacture,Cantidad para producción,
Qty Total,Cantidad total,
Qty for {0},Cantidad de {0},
Qualification,Calificación,
Quality,Calidad,
Quality Action,Acción de calidad,
Quality Goal.,Objetivo de calidad.,
Quality Inspection,Inspeccion de calidad,
Quality Inspection: {0} is not submitted for the item: {1} in row {2},Inspección de calidad: {0} no se envía para el artículo: {1} en la fila {2},
Quality Management,Gestión de Calidad,
Quality Meeting,Reunión de calidad,
Quality Procedure,Procedimiento de calidad,
Quality Procedure.,Procedimiento de calidad.,
Quality Review,Revisión de calidad,
Quantity,Cantidad,
Quantity for Item {0} must be less than {1},La cantidad del producto {0} debe ser menor que {1},
Quantity in row {0} ({1}) must be same as manufactured quantity {2},La cantidad en la línea {0} ({1}) debe ser la misma que la cantidad producida {2},
Quantity must be less than or equal to {0},La cantidad debe ser menor que o igual a {0},
Quantity must not be more than {0},La cantidad no debe ser más de {0},
Quantity required for Item {0} in row {1},Cantidad requerida para el producto {0} en la línea {1},
Quantity should be greater than 0,Cantidad debe ser mayor que 0,
Quantity to Make,Cantidad para Hacer,
Quantity to Manufacture must be greater than 0.,La cantidad a producir debe ser mayor que 0.,
Quantity to Produce,Cantidad a Producir,
Quantity to Produce can not be less than Zero,Cantidad a Producir no puede ser menor a cero,
Query Options,Opciones de Consulta,
Queued for replacing the BOM. It may take a few minutes.,En cola para reemplazar la BOM. Puede tomar unos minutos..,
Queued for updating latest price in all Bill of Materials. It may take a few minutes.,En cola para actualizar el último precio en todas las listas de materiales. Puede tomar algunos minutos.,
Quick Journal Entry,Asiento Contable Rápido,
Quot Count,Cuenta Cotización,
Quot/Lead %,Cotización / Iniciativa %,
Quotation,Cotización,
Quotation {0} is cancelled,El presupuesto {0} se ha cancelado,
Quotation {0} not of type {1},El presupuesto {0} no es del tipo {1},
Quotations,Presupuestos,
"Quotations are proposals, bids you have sent to your customers","Las citas son propuestas, las ofertas que ha enviado a sus clientes",
Quotations received from Suppliers.,Presupuestos recibidos de proveedores.,
Quotations: ,Presupuestos:,
Quotes to Leads or Customers.,Cotizaciones enviadas a los clientes u oportunidades de venta.,
RFQs are not allowed for {0} due to a scorecard standing of {1},Las solicitudes de Presupuesto (RFQs) no están permitidas para {0} debido a un puntaje de {1},
Range,Rango,
Rate,Precio,
Rate:,Tarifa:,
Rating,Clasificación,
Raw Material,Materia prima,
Raw Materials,Materias primas,
Raw Materials cannot be blank.,'Materias primas' no puede estar en blanco.,
Re-open,Re-Abrir,
Read blog,Leer blog,
Read the ERPNext Manual,Lea el Manual ERPNext,
Reading Uploaded File,Leer el archivo cargado,
Real Estate,Bienes raíces,
Reason For Putting On Hold,Motivo de Poner en Espera,
Reason for Hold,Motivo de espera,
Reason for hold: ,Motivo de la espera:,
Receipt,Recibo,
Receipt document must be submitted,documento de recepción debe ser presentado,
Receivable,A cobrar,
Receivable Account,Cuenta por cobrar,
Received,Recibido,
Received On,Recibida el,
Received Quantity,Cantidad recibida,
Received Stock Entries,Entradas de stock recibidas,
Receiver List is empty. Please create Receiver List,"La lista de receptores se encuentra vacía. Por favor, cree una lista de receptores",
Recipients,Destinatarios,
Reconcile,Conciliar,
"Record of all communications of type email, phone, chat, visit, etc.","Registro de todas las comunicaciones: correo electrónico, teléfono, chats, visitas, etc.",
Records,Registros,
Redirect URL,Redireccionar URL,
Ref,Referencia,
Ref Date,Fecha Ref.,
Reference,Referencia,
Reference #{0} dated {1},Referencia # {0} de fecha {1},
Reference Date,Fecha de referencia,
Reference Doctype must be one of {0},Doctype de referencia debe ser uno de {0},
Reference Document,Documento de referencia,
Reference Document Type,Tipo de Documento de Referencia,
Reference No & Reference Date is required for {0},Se requiere de No. de referencia y fecha para {0},
Reference No and Reference Date is mandatory for Bank transaction,Nro de referencia y fecha de referencia es obligatoria para las transacciones bancarias,
Reference No is mandatory if you entered Reference Date,El No. de referencia es obligatoria si usted introdujo la fecha,
Reference No.,Numero de referencia.,
Reference Number,Número de referencia,
Reference 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,
Rejected,Rechazado,
Related,Relacionado,
Relation with Guardian1,Relación con Tutor1,
Relation with Guardian2,Relación con Tutor2,
Release Date,Fecha de lanzamiento,
Reload Linked Analysis,Recargar Análisis Vinculado,
Remaining,Restante,
Remaining Balance,Balance restante,
Remarks,Observaciones,
Reminder to update GSTIN Sent,Recordatorio para actualizar GSTIN Enviado,
Remove item if charges is not applicable to that item,Eliminar el elemento si los cargos no son aplicables al mismo,
Removed items with no change in quantity or value.,Elementos eliminados que no han sido afectados en cantidad y valor,
Reopen,Reabrir,
Reorder Level,Nivel de reabastecimiento,
Reorder Qty,Cantidad a reabastecer,
Repeat Customer Revenue,Ingresos de clientes recurrentes,
Repeat Customers,Clientes recurrentes,
Replace BOM and update latest price in all BOMs,Sustituya la Lista de Materiales (BOM)  y actualice el último precio en todas las listas de materiales,
Replied,Respondido,
Report,Reporte,
Report 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.,
Rest Of The World,Resto del mundo,
Restart Subscription,Reiniciar Suscripción,
Restaurant,Restaurante,
Result Date,Fecha del Resultado,
Result already Submitted,Resultado ya Presentado,
Resume,Reanudar,
Retail,Al por menor,
Retail & Wholesale,Ventas al por menor y por mayor,
Retail Operations,Operaciones Retail,
Retained Earnings,UTILIDADES RETENIDAS,
Retention Stock Entry,Entrada de Retención de Acciones,
Retention Stock Entry already created or Sample Quantity not provided,Entrada de Inventario de Retención ya creada o Cantidad de muestra no proporcionada,
Return,Retornar,
Return / Credit Note,Devolución / Nota de Crédito,
Return / Debit Note,Retorno / Nota de Crédito,
Returns,Devoluciones,
Reverse Journal Entry,Invertir Entrada de Diario,
Review Invitation Sent,Invitación de Revisión enviada,
Review and Action,Revisión y Acción,
Rooms Booked,Habitaciones reservadas,
Root Company,Root Company,
Root Type,Tipo de root,
Root Type is mandatory,tipo de root es obligatorio,
Root cannot be edited.,Usuario root no se puede editar.,
Root cannot have a parent cost center,la tabla raíz no puede tener un centro de costes padre / principal,
Round Off,REDONDEOS,
Rounded Total,Total redondeado,
Route,Ruta,
Row # {0}: ,Fila #{0}:,
Row # {0}: Batch No must be same as {1} {2},Fila #{0}: El lote no puede ser igual a {1} {2},
Row # {0}: Cannot return more than {1} for Item {2},Fila #{0}: No se puede devolver más de {1} para el producto {2},
Row # {0}: Rate cannot be greater than the rate used in {1} {2},Fila #{0}: La tasa no puede ser mayor que la tasa utilizada en {1} {2},
Row # {0}: Serial No is mandatory,Fila #{0}: El número de serie es obligatorio,
Row # {0}: Serial No {1} does not match with {2} {3},Fila #{0}: Número de serie {1} no coincide con {2} {3},
Row #{0} (Payment Table): Amount must be negative,Fila # {0} (Tabla de pagos): la cantidad debe ser negativa,
Row #{0} (Payment Table): Amount must be positive,Fila # {0} (Tabla de pagos): la cantidad debe ser positiva,
Row #{0}: Account {1} does not belong to company {2},Fila # {0}: La Cuenta {1} no pertenece a la Empresa {2},
Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Fila #{0}: Importe asignado no puede ser mayor que la cantidad pendiente.,
"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Fila  #{0}: el elemento {1} no puede ser presentado, ya es {2}",
Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Fila # {0}: no se puede establecer el precio si el monto es mayor que el importe facturado para el elemento {1}.,
Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Fila #{0}: Fecha de Liquidación {1} no puede ser anterior a la Fecha de Cheque {2},
Row #{0}: Duplicate entry in References {1} {2},Fila #{0}: Entrada duplicada en Referencias {1} {2},
Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Fila #{0}: La fecha de entrega esperada no puede ser anterior a la fecha de la orden de compra,
Row #{0}: Item added,Fila # {0}: Elemento agregado,
Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Fila #{0}: Asiento {1} no tiene cuenta {2} o ya compara con otro bono,
Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Fila #{0}: No se permite cambiar de proveedores debido a que la Orden de Compra ya existe,
Row #{0}: Please set reorder quantity,Fila  #{0}: Configure la cantidad de pedido,
Row #{0}: Please specify Serial No for Item {1},"Fila #{0}: Por favor, especifique el número de serie para el producto {1}",
Row #{0}: Qty increased by 1,Fila # {0}: la cantidad aumentó en 1,
Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Fila #{0}: El valor debe ser el mismo que {1}: {2} ({3} / {4}),
Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Fila #{0}: El tipo de documento de referencia debe ser uno de Reembolso de Gastos o Asiento Contable,
"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Fila #{0}: Tipo de documento de referencia debe ser uno de la orden de compra, factura de compra o de entrada de diario",
Row #{0}: Rejected Qty can not be entered in Purchase Return,Fila #{0}: La cantidad rechazada no se puede introducir en el campo 'retorno de compras',
Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Fila #{0}: Almacén Rechazado es obligatorio en la partida rechazada {1},
Row #{0}: Reqd by Date cannot be before Transaction Date,Fila# {0}: Requerido por fecha no puede ser anterior a Fecha de Transacción,
Row #{0}: Set Supplier for item {1},Fila #{0}: Asignar Proveedor para el elemento {1},
Row #{0}: Status must be {1} for Invoice Discounting {2},Fila # {0}: El estado debe ser {1} para el descuento de facturas {2},
"Row #{0}: The batch {1} has only {2} qty. Please select another batch which has {3} qty available or split the row into multiple rows, to deliver/issue from multiple batches","Fila #{0}: El lote {1} tiene sólo {2} de cantidad. Por favor, seleccione otro lote que tenga {3} de cantidad disponible o dividido la fila en varias filas, para entregar / emitir desde varios lotes",
Row #{0}: Timings conflicts with row {1},Línea #{0}: tiene conflictos de tiempo con la linea {1},
Row #{0}: {1} can not be negative for item {2},Fila #{0}: {1} no puede ser negativo para el elemento {2},
Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Línea #{0}: El importe no puede ser mayor que el reembolso pendiente {1}. El importe pendiente es {2},
Row {0} : Operation is required against the raw material item {1},Fila {0}: se requiere operación contra el artículo de materia prima {1},
Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Fila {0}# El elemento {1} no puede transferirse más de {2} a la Orden de Compra {3},
Row {0}: Activity Type is mandatory.,Fila {0}: Tipo de actividad es obligatoria.,
Row {0}: Advance against Customer must be credit,Fila {0}: Avance contra el Cliente debe ser de crédito,
Row {0}: Advance against Supplier must be debit,Fila {0}: Avance contra el Proveedor debe ser debito,
Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Fila {0}: cantidad asignada {1} debe ser menor o igual a la cantidad de entrada de pago {2},
Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Línea {0}: la cantidad asignada {1} debe ser menor o igual al importe pendiente de factura {2},
Row {0}: An Reorder entry already exists for this warehouse {1},Línea {0}: Una entrada de abastecimiento ya existe para el almacén {1},
Row {0}: Bill of Materials not found for the Item {1},Fila {0}: Lista de materiales no se encuentra para el elemento {1},
Row {0}: Conversion Factor is mandatory,Línea {0}: El factor de conversión es obligatorio,
Row {0}: Cost center is required for an item {1},Fila {0}: Centro de Costos es necesario para un elemento {1},
Row {0}: Credit entry can not be linked with a {1},Línea {0}: La entrada de crédito no puede vincularse con {1},
Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Fila {0}: Divisa de la lista de materiales # {1} debe ser igual a la moneda seleccionada {2},
Row {0}: Debit entry can not be linked with a {1},Línea {0}: La entrada de débito no puede vincularse con {1},
Row {0}: Depreciation Start Date is required,Fila {0}: se requiere la Fecha de Inicio de Depreciación,
Row {0}: Enter location for the asset item {1},Fila {0}: ingrese la ubicación para el artículo del activo {1},
Row {0}: Exchange Rate is mandatory,Fila {0}: Tipo de cambio es obligatorio,
Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Fila {0}: valor esperado después de la vida útil debe ser menor que el importe de compra bruta,
Row {0}: From Time and To Time is mandatory.,Fila {0}: Tiempo Desde y Tiempo Hasta es obligatorio.,
Row {0}: From Time and To Time of {1} is overlapping with {2},Fila {0}: Tiempo Desde y Tiempo Hasta de {1} se solapan con {2},
Row {0}: From time must be less than to time,Fila {0}: el tiempo debe ser menor que el tiempo,
Row {0}: Hours value must be greater than zero.,Fila {0}: valor Horas debe ser mayor que cero.,
Row {0}: Invalid reference {1},Fila {0}: Referencia no válida {1},
Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Línea {0}: Socio / Cuenta no coincide con {1} / {2} en {3} {4},
Row {0}: Party Type and Party is required for Receivable / Payable account {1},Línea {0}: el tipo de entidad se requiere para la cuenta por cobrar/pagar {1},
Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Línea {0}: El pago para la compra/venta siempre debe estar marcado como anticipo,
Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,"Línea {0}: Por favor, verifique 'Es un anticipo' para la cuenta {1} si se trata de una entrada de pago anticipado.",
Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Fila {0}: establezca el Motivo de exención de impuestos en Impuestos y cargos de ventas,
Row {0}: Please set the Mode of Payment in Payment Schedule,Fila {0}: establezca el modo de pago en el calendario de pagos,
Row {0}: Please set the correct code on Mode of Payment {1},Fila {0}: establezca el código correcto en Modo de pago {1},
Row {0}: 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 submitted for period from {0} to {1},Recibo de Salario enviado para el período de {0} a {1},
Salary Structure must be submitted before submission of Tax Ememption Declaration,La estructura salarial debe presentarse antes de la presentación de la Declaración de exención fiscal,
Sales,Ventas,
Sales Account,Cuenta de ventas,
Sales Expenses,Gastos de venta,
Sales Funnel,"""Embudo"" de ventas",
Sales Invoice,Factura de venta,
Sales Invoice {0} has already been submitted,La factura {0} ya ha sido validada,
Sales Invoice {0} must be cancelled before cancelling this Sales Order,La factura {0} debe ser cancelada antes de cancelar esta orden ventas,
Sales Manager,Gerente de ventas,
Sales Master Manager,Gerente principal de ventas,
Sales Order,Orden de venta (OV),
Sales Order Item,Producto de la orden de venta,
Sales Order required for Item {0},Orden de venta requerida para el producto {0},
Sales Order to Payment,Órdenes de venta a pagar,
Sales Order {0} is not submitted,La órden de venta {0} no esta validada,
Sales Order {0} is not valid,Orden de venta {0} no es válida,
Sales Order {0} is {1},Orden de Venta {0} es {1},
Sales Orders,Ordenes de venta,
Sales Partner,Socio de ventas,
Sales Pipeline,Flujo de ventas,
Sales Price List,Lista de precios para la venta,
Sales Return,Devoluciones de ventas,
Sales Summary,Resumen de ventas,
Sales Tax Template,Plantilla de impuesto sobre ventas,
Sales Team,Equipo de ventas,
Sales User,Usuario de ventas,
Sales and Returns,Ventas y devoluciones,
Sales campaigns.,Campañas de venta.,
Sales orders are not available for production,Los Pedidos de Venta no están disponibles para producción,
Salutation,Saludo.,
Same Company is entered more than once,La misma Compañia es ingresada mas de una vez,
Same item cannot be entered multiple times.,El mismo artículo no se puede introducir varias veces.,
Same supplier has been entered multiple times,Mismo proveedor se ha introducido varias veces,
Sample,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,
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,
Scorecards,Tarjetas de Puntuación,
Scrapped,Desechado,
Search,Buscar,
Search Results,Resultados de la búsqueda,
Search Sub Assemblies,Buscar Sub-ensamblajes,
"Search by item code, serial number, batch no or barcode","Buscar por Código de Artículo, Número de Serie, Lote o Código de Barras",
"Seasonality for setting budgets, targets etc.","Configuración general para establecer presupuestos, objetivos, etc.",
Secret Key,Llave secreta,
Secretary,Secretaria,
Section Code,Código de sección,
Secured Loans,Prestamos en garantía,
Securities & Commodity Exchanges,Cambios de valores y bienes,
Securities and Deposits,Valores y Depósitos,
See All Articles,Ver todos los artículos,
See all open tickets,Ver todos los tickets abiertos,
See past orders,Ver pedidos anteriores,
See past quotations,Ver citas pasadas,
Select,Seleccionar,
Select Alternate Item,Seleccionar artículo alternativo,
Select Attribute Values,Seleccionar valores de atributo,
Select BOM,Seleccione la lista de materiales,
Select BOM and Qty for Production,Seleccione la lista de materiales y Cantidad para Producción,
"Select BOM, Qty and For Warehouse","Seleccionar BOM, Cant. and Almacén destino",
Select Batch,Seleccione Lote,
Select Batch Numbers,Seleccionar números de lote,
Select Brand...,Seleccione una marca ...,
Select Company,Seleccionar Compañia,
Select Company...,Seleccione la compañía...,
Select Customer,Seleccione Cliente,
Select Days,Seleccionar Días,
Select Default Supplier,Elija un proveedor predeterminado,
Select DocType,Seleccione un 'DocType',
Select Fiscal Year...,Seleccione el año fiscal...,
Select Item (optional),Seleccionar Elemento (opcional),
Select Items based on Delivery Date,Seleccionar Elementos según la Fecha de Entrega,
Select Items to Manufacture,Seleccionar artículos para Fabricación,
Select Loyalty Program,Seleccionar un Programa de Lealtad,
Select Patient,Seleccionar paciente,
Select Possible Supplier,Seleccionar Posible Proveedor,
Select Quantity,Seleccione cantidad,
Select Serial Numbers,Seleccionar números de serie,
Select Target Warehouse,Seleccionar Almacén Objetivo,
Select Warehouse...,Seleccione Almacén ...,
Select an account to print in account currency,Seleccione una cuenta para imprimir en la moneda de la cuenta,
Select at least one value from each of the attributes.,Seleccione al menos un valor de cada uno de los atributos.,
Select change amount account,Seleccione la cuenta de cambio,
Select company first,Seleccione primero la Compañia,
Select students manually for the Activity based Group,Seleccionar a los estudiantes manualmente para el grupo basado en actividad,
Select the customer or supplier.,Seleccione el cliente o proveedor.,
Select the nature of your business.,Seleccione la naturaleza de su negocio.,
Select the program first,Seleccione el programa primero,
Select to add Serial Number.,Seleccione para agregar número de serie.,
Select your Domains,Seleccione sus dominios,
Selected Price List should have buying and selling fields checked.,La Lista de Precios seleccionada debe tener los campos de compra y venta marcados.,
Sell,Vender,
Selling,Ventas,
Selling Amount,Cantidad de venta,
Selling Price List,Lista de precios de venta,
Selling Rate,Precio de venta,
"Selling must be checked, if Applicable For is selected as {0}","'Ventas' debe ser seleccionada, si la opción: 'Aplicable para' esta seleccionado como {0}",
Send Grant Review Email,Enviar correo electrónico de revisión de subvención,
Send Now,Enviar ahora,
Send SMS,Enviar mensaje SMS,
Send mass SMS to your contacts,Enviar mensajes SMS masivos a sus contactos,
Sensitivity,Sensibilidad,
Sent,Enviado,
Serial No and Batch,Número de serie y de lote,
Serial No is mandatory for Item {0},No. de serie es obligatoria para el producto {0},
Serial No {0} does not belong to Batch {1},El número de serie {0} no pertenece al lote {1},
Serial No {0} does not belong to Delivery Note {1},El número de serie {0} no pertenece a la Nota de entrega {1},
Serial No {0} does not belong to Item {1},Número de serie {0} no pertenece al producto {1},
Serial No {0} does not belong to Warehouse {1},Número de serie {0} no pertenece al Almacén {1},
Serial No {0} does not belong to any Warehouse,El número de serie {0} no pertenece a ningún almacén,
Serial No {0} does not exist,El número de serie {0} no existe,
Serial No {0} has already been received,El número de serie {0} ya ha sido recibido,
Serial No {0} is under maintenance contract upto {1},Número de serie {0} tiene un contrato de mantenimiento hasta {1},
Serial No {0} is under warranty upto {1},Número de serie {0} está en garantía hasta {1},
Serial No {0} not found,Número de serie {0} no encontrado,
Serial No {0} not in stock,El número de serie {0} no se encuentra en stock,
Serial No {0} quantity {1} cannot be a fraction,"Número de serie {0}, la cantidad {1} no puede ser una fracción",
Serial Nos Required for Serialized Item {0},Número de serie requerido para el producto serializado {0},
Serial Number: {0} is already referenced in Sales Invoice: {1},Número de serie: {0} ya se hace referencia en Factura de venta: {1},
Serial Numbers,Números seriales,
Serial Numbers in row {0} does not match with Delivery Note,Los números de serie en la fila {0} no coinciden con Nota de entrega,
Serial no {0} has been already returned,El número de serie {0} ya ha sido devuelto,
Serial number {0} entered more than once,Número de serie {0} ha sido ingresado mas de una vez,
Serialized Inventory,Inventario serializado,
Series Updated,Secuencia actualizada,
Series Updated Successfully,Secuencia actualizada correctamente,
Series is mandatory,La secuencia es obligatoria,
Series {0} already used in {1},Secuencia {0} ya utilizada en {1},
Service,Servicios,
Service Level Agreement,Acuerdo de nivel de servicio,
Service Level Agreement.,Acuerdo de nivel de servicio.,
Service Level.,Nivel de servicio.,
Service Stop Date cannot be after Service End Date,La Fecha de Detención del Servicio no puede ser posterior a la Fecha de Finalización del Servicio,
Service Stop Date cannot be before Service Start Date,La Fecha de Detención del Servicio no puede ser anterior a la Decha de Inicio del Servicio,
Services,Servicios,
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Establecer los valores predeterminados como: empresa, moneda / divisa, año fiscal, etc.",
Set Details,Establecer detalles,
Set New Release Date,Establecer nueva fecha de lanzamiento,
Set Project and all Tasks to status {0}?,¿Establecer el proyecto y todas las tareas en el estado {0}?,
Set Status,Establecer estado,
Set Tax Rule for shopping cart,Establezca la regla fiscal (Impuestos) del carrito de compras,
Set as Closed,Establecer como cerrado/a,
Set as Completed,Establecer como completado,
Set as 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 Open,Mostrar abiertos,
Show Opening Entries,Mostrar entradas de apertura,
Show Payment Details,Mostrar detalles de pago,
Show Return Entries,Mostrar Entradas de Devolución,
Show Variant Attributes,Mostrar Atributos de Variantes,
Show Variants,Mostrar Variantes,
Show closed,Mostrar cerrada,
Show exploded view,Mostrar Vista Explosionada,
Show only POS,Mostrar solo POS,
Show unclosed fiscal year's P&L balances,Mostrar saldos de pérdidas y ganancias del ejercicio no cerrado,
Show zero values,Mostrar valores en cero,
Silt,Limo,
Single Variant,Variante Individual,
Single unit of an Item.,Elemento de producto,
"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Saltarse la asignación de permiso para los siguientes empleados, ya que los registros de Dejar asignación ya existen en su contra. {0}",
Slideshow,Presentación,
Slots for {0} are not added to the schedule,Los espacios para {0} no se han agregado a la programación,
Small,Pequeño,
Soap & Detergent,Jabón y detergente,
Software,Software.,
Software Developer,Desarrollador de Software.,
Softwares,Softwares,
Soil compositions do not add up to 100,Las Composiciones de Suelo no suman 100,
Sold,Vendido,
Some emails are invalid,Algunos correos electrónicos no son válidos,
Some information is missing,Falta información,
Something went wrong!,Algo salió mal!,
"Sorry, Serial Nos cannot be merged","Lamentablemente, los numeros de serie no se puede fusionar",
Source,Referencia,
Source Name,Nombre de la Fuente,
Source Warehouse,Almacén de origen,
Source and Target Location cannot be same,La ubicación de origen y destino no puede ser la misma,
Source and target warehouse cannot be same for row {0},"Almacenes de origen y destino no pueden ser los mismos, línea {0}",
Source and target warehouse must be different,Almacén de Origen y Destino deben ser diferentes,
Source of Funds (Liabilities),Origen de fondos (Pasivo),
Source warehouse is mandatory for row {0},El almacén de origen es obligatorio para la línea {0},
Specified BOM {0} does not exist for Item {1},La solicitud de la lista de materiales (LdM) especificada: {0} no existe para el producto {1},
Split,División,
Split Batch,Lote dividido,
Split Issue,Problema de División,
Sports,Deportes,
Standard,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 date should be less than end date for Item {0},La fecha de inicio debe ser menor que la fecha de finalización para el producto {0},
Start date should be less than end date for task {0},La fecha de inicio debe ser menor que la fecha de finalización para la tarea {0},
Start day is greater than end day in task '{0}',El día de inicio es mayor que el día final en la tarea &#39;{0}&#39;,
Start on,Comienza en,
State,Estado,
State/UT Tax,Impuesto estatal / UT,
Statement of Account,Estado de cuenta,
Status must be one of {0},El estado debe ser uno de {0},
Stock,Almacén,
Stock Adjustment,Ajuste de existencias,
Stock Analytics,Análisis de existencias.,
Stock Assets,Inventarios,
Stock Available,Stock disponible,
Stock Balance,Balance de Inventarios.,
Stock Entries already created for Work Order ,Entradas de stock ya creadas para Orden de trabajo,
Stock Entry,Entradas de inventario,
Stock Entry {0} created,Entrada de stock {0} creada,
Stock Entry {0} is not submitted,La entrada de stock {0} no esta validada,
Stock Expenses,Gastos sobre existencias,
Stock In Hand,Stock en mano,
Stock Items,Artículos en stock,
Stock Ledger,Mayor de Inventarios,
Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Entradas del Libro Mayor de Inventarios y GL están insertados en los recibos de compra seleccionados,
Stock Levels,Niveles de Stock,
Stock Liabilities,Inventarios por pagar,
Stock Qty,Cantidad de existencias,
Stock Received But Not Billed,Inventario Recibido pero no Facturado,
Stock Reports,Reportes de Stock,
Stock Summary,Resumen de Existencia,
Stock Transactions,Transacciones de Stock,
Stock UOM,Unidad de media utilizada en el almacen,
Stock Value,Valor de Inventarios,
Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},El balance de Inventario en el lote {0} se convertirá en negativo {1} para el producto {2} en el almacén {3},
Stock cannot be updated against Delivery Note {0},Inventario no puede actualizarse contra la nota de envío {0},
Stock cannot be updated against Purchase Receipt {0},Stock no se puede actualizar en contra recibo de compra {0},
Stock cannot exist for Item {0} since has variants,El inventario no puede existir para el pproducto {0} ya que tiene variantes,
Stock transactions before {0} are frozen,Las operaciones de inventario antes de {0} se encuentran congeladas,
Stop,Detener,
Stopped,Detenido.,
"Stopped Work Order cannot be cancelled, Unstop it first to cancel","La Órden de Trabajo detenida no se puede cancelar, desactívela primero para cancelarla",
Stores,Sucursales,
Student,Estudiante,
Student Activity,Actividad del Estudiante,
Student Address,Dirección del estudiante,
Student Admissions,Admisión de Estudiantes,
Student Attendance,Asistencia del estudiante,
"Student Batches help you track attendance, assessments and fees for students","Los Lotes de Estudiantes ayudan a realizar un seguimiento de asistencia, evaluaciones y cuotas para los estudiantes",
Student Email Address,Dirección de correo electrónico del estudiante,
Student Email ID,ID de Correo Electrónico de Estudiante,
Student Group,Grupo de estudiantes,
Student Group Strength,Fortaleza del grupo de estudiantes,
Student Group is already updated.,El grupo de estudiantes ya está actualizado.,
Student Group: ,Grupo de estudiantes:,
Student ID,Identificación del Estudiante,
Student ID: ,Identificación del Estudiante:,
Student LMS Activity,Actividad del estudiante LMS,
Student Mobile No.,Número de Móvil del Estudiante.,
Student Name,Nombre del estudiante,
Student Name: ,Nombre del estudiante:,
Student Report Card,Boleta de Calificaciones Estudiantil,
Student is already enrolled.,Estudiante ya está inscrito.,
Student {0} - {1} appears Multiple times in row {2} & {3},Estudiante {0} - {1} aparece múltiples veces en fila {2} y {3},
Student {0} does not belong to group {1},El estudiante {0} no pertenece al grupo {1},
Student {0} exist against student applicant {1},Estudiante {0} existe contra la solicitud de estudiante {1},
"Students are at the heart of the system, add all your students","Los estudiantes son el corazón del sistema, agrega todos tus estudiantes",
Sub Assemblies,Sub-Ensamblajes,
Sub Type,Subtipo,
Sub-contracting,Subcontratación,
Subcontract,Sub-contrato,
Subject,Asunto,
Submit,Validar,
Submit this Work Order for further processing.,Presente esta Órden de Trabajo para su posterior procesamiento.,
Subscription,Suscripción,
Subscription Management,Gestión de suscripciones,
Subscriptions,Suscripciones,
Subtotal,Subtotal,
Successful,Exitoso,
Successfully Reconciled,Reconciliado exitosamente,
Successfully Set Supplier,Proveedor establecido con éxito,
Successfully created payment entries,Entradas de Pago creadas con éxito,
Successfully deleted all transactions related to this company!,Todas las transacciones relacionadas con esta compañía han sido eliminadas correctamente.,
Sum of Scores of Assessment Criteria needs to be {0}.,Suma de las puntuaciones de criterios de evaluación tiene que ser {0}.,
Sum of points for all goals should be 100. It is {0},La suma de puntos para los objetivos debe ser 100. y es {0},
Summary,Resumen,
Summary for this month and pending activities,Resumen para este mes y actividades pendientes,
Summary for this week and pending activities,Resumen para esta semana y actividades pendientes,
Sunday,Domingo,
Suplier,Proveedor,
Supplier,Proveedor,
Supplier Group,Grupo de proveedores,
Supplier Group master.,Maestro del Grupo de Proveedores.,
Supplier Id,ID de Proveedor,
Supplier Invoice Date cannot be greater than Posting Date,Fecha de Factura de Proveedor no puede ser mayor que la fecha de publicación,
Supplier Invoice No,Factura de proveedor No.,
Supplier Invoice No exists in Purchase Invoice {0},Factura de proveedor No existe en la factura de compra {0},
Supplier Name,Nombre de proveedor,
Supplier Part No,Parte de Proveedor Nro,
Supplier Quotation,Presupuesto de Proveedor,
Supplier Scorecard,Calificación del Proveedor,
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,El almacén del proveedor es necesario para compras sub-contratadas,
Supplier database.,Base de datos de proveedores.,
Supplier {0} not found in {1},Proveedor {0} no encontrado en {1},
Supplier(s),Proveedor(es),
Supplies made to UIN holders,Suministros hechos a los titulares de UIN,
Supplies made to Unregistered Persons,Suministros hechos a personas no registradas,
Suppliies made to Composition Taxable Persons,Suministros hechos a los sujetos pasivos de composición,
Supply Type,Tipo de Suministro,
Support,Soporte,
Support Analytics,Soporte Analítico,
Support Settings,Configuración de respaldo,
Support Tickets,Tickets de Soporte,
Support queries from customers.,Soporte técnico para los clientes,
Susceptible,Susceptible,
Sync has been temporarily disabled because maximum retries have been exceeded,La sincronización se ha desactivado temporalmente porque se han excedido los reintentos máximos,
Syntax error in condition: {0},Error de sintaxis en la condición: {0},
Syntax error in formula or condition: {0},Error de sintaxis en la fórmula o condición: {0},
System Manager,Administrador del sistema,
TDS Rate %,Tasa % de TDS,
Tap items to add them here,Toca los elementos para agregarlos aquí,
Target,Objetivo,
Target ({}),Objetivo ({}),
Target On,Objetivo en,
Target Warehouse,Inventario estimado,
Target warehouse is mandatory for row {0},El almacén de destino es obligatorio para la línea {0},
Task,Tarea,
Tasks,Tareas,
Tasks have been created for managing the {0} disease (on row {1}),Se han creado Tareas para administrar la enfermedad {0} (en la fila {1}),
Tax,Impuesto,
Tax Assets,Impuestos pagados,
Tax Category,Categoría de impuestos,
Tax Category for overriding tax rates.,Categoría de impuestos para anular las tasas impositivas.,
"Tax Category has been changed to ""Total"" because all the Items are non-stock items","Categoría de Impuesto fue cambiada a ""Total"" debido a que todos los Productos son items de no stock",
Tax ID,ID de impuesto,
Tax Id: ,Identificación del impuesto:,
Tax Rate,Procentaje del impuesto,
Tax Rule Conflicts with {0},Conflicto de impuestos con {0},
Tax Rule for transactions.,Regla de impuestos para las transacciones.,
Tax Template is mandatory.,Plantilla de impuestos es obligatorio.,
Tax Withholding rates to be applied on transactions.,Tasas de Retención de Impuestos que se aplicarán a las Transacciones.,
Tax template for buying transactions.,Plantilla de impuestos para las transacciones de compra,
Tax template for item tax rates.,Plantilla de impuestos para tasas impositivas de artículos.,
Tax template for selling transactions.,Plantilla de Impuestos para las transacciones de venta,
Taxable Amount,Base imponible,
Taxes,Impuestos,
Technology,Tecnología,
Telecommunications,Telecomunicaciones,
Telephone Expenses,Cuenta telefonica,
Television,Televisión,
Template Name,Nombre de Plantilla,
Template of terms or contract.,Configuración de las plantillas de términos y condiciones.,
Templates of supplier scorecard criteria.,Plantillas de criterios de Calificación de Proveedores.,
Templates of supplier scorecard variables.,Plantillas de variables de Calificación de Proveedores.,
Templates of supplier standings.,Plantillas de posiciones de proveedores.,
Temporarily on Hold,Temporalmente en espera,
Temporary,Temporal,
Temporary Accounts,Cuentas temporales,
Temporary Opening,Apertura temporal,
Terms and Conditions,Términos y Condiciones,
Terms and Conditions Template,Plantillas de términos y condiciones,
Territory,Territorio,
Test,Prueba,
Thank you for your business!,¡Gracias por hacer negocios!,
The 'From Package No.' field must neither be empty nor it's value less than 1.,El campo 'Desde Paquete Nro' no debe estar vacío ni su valor es menor a 1.,
The Brand,La marca,
The Item {0} cannot have Batch,El producto {0} no puede contener lotes,
The Loyalty Program isn't valid for the selected company,El Programa de Lealtad no es válido para la Empresa seleccionada,
The Payment Term at row {0} is possibly a duplicate.,El Término de Pago en la fila {0} es posiblemente un duplicado.,
The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,"La fecha final de duración no puede ser anterior a la fecha de inicio Plazo. Por favor, corrija las fechas y vuelve a intentarlo.",
The Term End Date cannot be later than the Year End Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,"La fecha final de duración no puede ser posterior a la fecha de fin de año del año académico al que está vinculado el término (año académico {}). Por favor, corrija las fechas y vuelve a intentarlo.",
The Term Start Date cannot be earlier than the Year Start Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,"El Plazo Fecha de inicio no puede ser anterior a la fecha de inicio de año del año académico al que está vinculado el término (año académico {}). Por favor, corrija las fechas y vuelve a intentarlo.",
The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,"El Año Fecha de finalización no puede ser anterior a la fecha de inicio de año. Por favor, corrija las fechas y vuelve a intentarlo.",
The amount of {0} set in this payment request is different from the calculated amount of all payment plans: {1}. Make sure this is correct before submitting the document.,El monto de {0} establecido en esta Solicitud de Pago es diferente del monto calculado de todos los planes de pago: {1}. Asegúrese de que esto sea correcto antes de enviar el documento.,
The field From Shareholder cannot be blank,El campo Desde accionista no puede estar en blanco,
The field To Shareholder cannot be blank,El campo Para el accionista no puede estar en blanco,
The fields From Shareholder and To Shareholder cannot be blank,Los campos De Accionista y Para Accionista no pueden estar en blanco,
The folio numbers are not matching,Los números de folio no coinciden,
The holiday on {0} is not between From Date and To Date,El día de fiesta en {0} no es entre De la fecha y Hasta la fecha,
The name of the institute for which you are setting up this system.,El nombre del instituto para el que está configurando este sistema.,
The name of your company for which you are setting up this system.,Ingrese el nombre de la compañía para configurar el sistema.,
The number of shares and the share numbers are inconsistent,El número de acciones y el número de acciones son inconsistentes,
The payment gateway account in plan {0} is different from the payment gateway account in this payment request,La cuenta de puerta de enlace de pago en el plan {0} es diferente de la cuenta de puerta de enlace de pago en esta solicitud de pago,
The selected BOMs are not for the same item,Las listas de materiales seleccionados no son para el mismo artículo,
The selected item cannot have Batch,El producto seleccionado no puede contener lotes,
The seller and the buyer cannot be the same,El vendedor y el comprador no pueden ser el mismo,
The shareholder does not belong to this company,El accionista no pertenece a esta empresa,
The shares already exist,Las acciones ya existen,
The shares don't exist with the {0},Las acciones no existen con el {0},
"The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Reconciliation and revert to the Draft stage","La tarea se ha puesto en cola como un trabajo en segundo plano. En caso de que haya algún problema con el procesamiento en segundo plano, el sistema agregará un comentario sobre el error en esta Reconciliación de inventario y volverá a la etapa Borrador",
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Luego las reglas de precios son filtradas por cliente, categoría de cliente, territorio, proveedor, tipo de proveedor, campaña, socio de ventas, etc.",
"There are inconsistencies between the rate, no of shares and the amount calculated","Hay inconsistencias entre la tasa, numero de acciones y la cantidad calculada",
There can be multiple tiered collection factor based on the total spent. But the conversion factor for redemption will always be same for all the tier.,Puede haber un factor de recopilación de niveles múltiples basado en el total gastado. Pero el factor de conversión para el canje siempre será el mismo para todos los niveles.,
There can only be 1 Account per Company in {0} {1},Sólo puede existir una (1) cuenta por compañía en {0} {1},
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""",Sólo puede existir una 'regla de envió' con valor 0 o valor en blanco en 'para el valor',
There is not enough leave balance for Leave Type {0},No hay suficiente días para las ausencias del tipo: {0},
There is nothing to edit.,No hay nada que modificar.,
There isn't any item variant for the selected item,No hay ninguna variante de artículo para el artículo seleccionado,
"There seems to be an issue with the server's GoCardless configuration. Don't worry, in case of failure, the amount will get refunded to your account.","Parece que hay un problema con la configuración del servidor GoCardless. No se preocupe, en caso de falla, la cantidad será reembolsada a su cuenta.",
There were errors creating Course Schedule,Hubo errores al crear el Programa del Curso,
There were errors.,Hubo errores .,
This Item is a Template and cannot be used in transactions. Item attributes will be copied over into the variants unless 'No Copy' is set,"Este producto es una plantilla y no se puede utilizar en las transacciones. Los atributos del producto se copiarán sobre las variantes, a menos que la opción 'No copiar' este seleccionada",
This Item is a Variant of {0} (Template).,Este elemento es una variante de {0} (plantilla).,
This Month's Summary,Resumen de este mes,
This Week's Summary,Resumen de la semana.,
This action will stop future billing. Are you sure you want to cancel this subscription?,Esta acción detendrá la facturación futura. ¿Seguro que quieres cancelar esta suscripción?,
This covers all scorecards tied to this Setup,Esto cubre todas las tarjetas de puntuación vinculadas a esta configuración,
This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Este documento está por encima del límite de {0} {1} para el elemento {4}. ¿Estás haciendo otra {3} contra el mismo {2}?,
This is a root account and cannot be edited.,Esta es una cuenta raíz y no se puede editar.,
This is a root customer group and cannot be edited.,Este es una categoría de cliente raíz (principal) y no se puede editar.,
This is a root department and cannot be edited.,Este es un departamento raíz y no se puede editar.,
This is a root healthcare service unit and cannot be edited.,Esta es una unidad de servicio de atención de salud raíz y no se puede editar.,
This is a root item group and cannot be edited.,Este es un grupo principal y no se puede editar.,
This is a root sales person and cannot be edited.,Este es el vendedor principal y no se puede editar.,
This is a root supplier group and cannot be edited.,Este es un grupo de proveedores raíz y no se puede editar.,
This is a root territory and cannot be edited.,Este es un territorio principal y no se puede editar.,
This is an example website auto-generated from ERPNext,Este es un sitio web de ejemplo generado automáticamente por ERPNext,
This is based on logs against this Vehicle. See timeline below for details,Esta basado en registros contra este Vehículo. Ver el cronograma debajo para más detalles,
This is based on stock movement. See {0} for details,Esto se basa en el movimiento de stock. Ver {0} para obtener más detalles,
This is based on the Time Sheets created against this project,Esto se basa en la tabla de tiempos creada en contra de este proyecto,
This is based on the attendance of this Student,Basado en la asistencia de este estudiante,
This is based on transactions against this Customer. See timeline below for details,Esto se basa en transacciones con este cliente. Ver cronología más abajo para los detalles,
This is based on transactions against this Healthcare Practitioner.,Esto se basa en transacciones contra este profesional de la salud.,
This is based on transactions against this Patient. See timeline below for details,Esto se basa en transacciones contra este Paciente. Vea la cronología a continuación para más detalles,
This is based on transactions against this Sales Person. See timeline below for details,Esto se basa en transacciones contra este Vendedor. Ver la línea de tiempo a continuación para detalles,
This is based on transactions against this Supplier. See timeline below for details,Esto se basa en transacciones con este proveedor. Ver cronología abajo para más detalles,
This {0} conflicts with {1} for {2} {3},Este {0} conflictos con {1} de {2} {3},
Time Sheet for manufacturing.,Hoja de tiempo para la fabricación.,
Time Tracking,Seguimiento de Tiempo,
"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Ranura de tiempo omitida, la ranura {0} a {1} se superpone al intervalo existente {2} a {3}",
Time slots added,Horarios Añadidos,
Time(in mins),Tiempo (en minutos),
Timer,Temporizador,
Timer exceeded the given hours.,El Temporizador excedió las horas dadas.,
Timesheet,Registro de Horas,
Timesheet for tasks.,Tabla de Tiempo para las tareas.,
Timesheet {0} is already completed or cancelled,Table de Tiempo {0} ya se haya completado o cancelado,
Timesheets,Tabla de Tiempos,
"Timesheets help keep track of time, cost and billing for activites done by your team","Las Tablas de Tiempos ayudan a mantener la noción del tiempo, el coste y la facturación de actividades realizadas por su equipo",
Titles for print templates e.g. Proforma Invoice.,"Títulos para las plantillas de impresión, por ejemplo, Factura proforma.",
To,A,
To Address 1,DIrección a 1,
To Address 2,DIrección a 2,
To Bill,Por facturar,
To Date,Hasta la fecha,
To Date cannot be before From Date,La fecha no puede ser anterior a la fecha actual,
To Date cannot be less than From Date,Fecha Hasta no puede ser menor a la Fecha Desde,
To Date must be greater than From Date,Hasta la fecha debe ser mayor que Desde la fecha,
To Date should be within the Fiscal Year. Assuming To Date = {0},La fecha debe estar dentro del año fiscal. Asumiendo a la fecha = {0},
To Datetime,Para fecha y hora,
To Deliver,Para entregar,
To Deliver and Bill,Para entregar y facturar,
To Fiscal Year,Al año fiscal,
To GSTIN,Para GSTIN,
To Party Name,Para el nombre de la Parte,
To Pin Code,Al Código Postal,
To Place,Al Lugar,
To Receive,Recibir,
To Receive and Bill,Para recibir y pagar,
To State,Al Estado,
To Warehouse,Para Almacén,
To create a Payment Request reference document is required,Para crear una Solicitud de Pago se requiere el documento de referencia,
"To filter based on Party, select Party Type first","Para filtrar en base a terceros, seleccione el tipo de entidad",
"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","Para obtener lo mejor de ERPNext, le recomendamos que se tome un tiempo y vea estos videos de ayuda.",
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included",Para incluir el impuesto en la línea {0} los impuestos de las lineas {1} tambien deben ser incluidos,
To make Customer based incentive schemes.,Para crear Clientes basados en  esquemas de incentivos.,
"To merge, following properties must be same for both items","Para fusionar, la siguientes propiedades deben ser las mismas en ambos productos",
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Para no utilizar la regla de precios en una única transacción, todas las reglas de precios aplicables deben ser desactivadas.",
"To set this Fiscal Year as Default, click on 'Set as Default'","Para establecer este año fiscal por defecto, haga clic en 'Establecer como predeterminado'",
To view logs of Loyalty Points assigned to a Customer.,Para ver los registros de Puntos de Lealtad asignados a un Cliente.,
To {0},Para {0},
To {0} | {1} {2},Para {0} | {1} {2},
Toggle Filters,Alternar filtros,
Too many columns. Export the report and print it using a spreadsheet application.,Hay demasiadas columnas. Exportar el informe e imprimirlo mediante una aplicación de hoja de cálculo.,
Tools,Herramientas,
Total (Credit),Total (Crédito),
Total (Without Tax),Total (Sin Impuestos),
Total Achieved,Total Conseguido,
Total Actual,Total Actual,
Total 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 Invoiced Amount,Total Facturado,
Total Order Considered,Total del Pedido Considerado,
Total Order Value,Valor total del pedido,
Total Outgoing,Total saliente,
Total Outstanding,Total Excepcional,
Total Outstanding Amount,Monto total pendiente,
Total Outstanding: {0},Total Pendiente: {0},
Total Paid Amount,Importe total pagado,
Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,El monto total del pago en el cronograma de pago debe ser igual al total / Total Redondeado,
Total Payments,Pagos totales,
Total Qty,Cantidad Total,
Total Quantity,Cantidad total,
Total Revenue,Ingresos Totales,
Total Student,Total de Estudiantes,
Total Target,Total Meta / Objetivo,
Total Tax,Impuesto Total,
Total Taxable Amount,Monto Imponible Total,
Total Taxable Value,Valor total imponible,
Total Unpaid: {0},Total no pagado: {0},
Total Variance,Total Variacion,
Total Weightage of all Assessment Criteria must be 100%,Coeficiente de ponderación total de todos los criterios de evaluación debe ser del 100%,
Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Avance total ({0}) contra la Orden {1} no puede ser mayor que el Total ({2}),
Total advance amount cannot be greater than total claimed amount,El monto total anticipado no puede ser mayor que la cantidad total reclamada,
Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Las Licencias asignadas totales son más días que la asignación máxima del Tipo de Licencia {0} para el Empleado {1} en el período,
Total allocated leaves are more than days in the period,Total de hojas asignados son más que los días en el período,
Total allocated percentage for sales team should be 100,Porcentaje del total asignado para el equipo de ventas debe ser de 100,
Total cannot be zero,Total no puede ser cero,
Total contribution percentage should be equal to 100,El porcentaje de contribución total debe ser igual a 100,
Total hours: {0},Horas totales: {0},
Total {0} ({1}),Total {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Total de {0} para todos los elementos es cero, puede ser que usted debe cambiar en &quot;Distribuir los cargos basados en &#39;",
Total(Amt),Monto total,
Total(Qty),Total (Cantidad),
Traceability,Trazabilidad,
Traceback,Rastrear,
Track Leads by Lead Source.,Seguimiento de Oportunidades por fuente de Opotunidades.,
Transaction,Transacción,
Transaction Date,Fecha de Transacción,
Transaction Type,tipo de transacción,
Transaction currency must be same as Payment Gateway currency,Moneda de la transacción debe ser la misma que la moneda de la pasarela de pago,
Transaction not allowed against stopped Work Order {0},Transacción no permitida contra orden de trabajo detenida {0},
Transaction reference no {0} dated {1},Referencia de la transacción nro {0} fechada {1},
Transactions,Transacciones,
Transactions can only be deleted by the creator of the Company,Las transacciones sólo pueden ser borradas por el creador de la compañía,
Transfer,Transferencia,
Transfer Material,Transferencia de Material,
Transfer Type,Tipo de transferencia,
Transfer an asset from one warehouse to another,Transferir un activo de un almacén a otro,
Transfered,Transferido,
Transferred Quantity,Cantidad transferida,
Transport Receipt Date,Fecha del Recibo de Transporte,
Transport Receipt No,Recibo de Transporte Nro,
Transportation,Transporte,
Transporter ID,ID de Transportador,
Transporter Name,Nombre del Transportista,
Travel Expenses,Gastos de Viaje,
Tree Type,Tipo de arbol,
Tree of Bill of Materials,Árbol de lista de materiales,
Tree of Item Groups.,Árbol de las categorías de producto,
Tree of Procedures,Árbol de Procedimientos,
Tree of Quality Procedures.,Árbol de procedimientos de calidad.,
Tree of financial Cost Centers.,Árbol de Centros de costes financieros.,
Tree of financial accounts.,Árbol de las cuentas financieras.,
Treshold {0}% appears more than once,Umbral {0}% aparece más de una vez,
Trial Period End Date Cannot be before Trial Period Start Date,La fecha de finalización del período de prueba no puede ser anterior a la fecha de inicio del período de prueba,
Trialling,Periodo de Prueba,
Type of Business,Tipo de negocio,
Types of activities for Time Logs,Tipos de actividades para los registros de tiempo,
UOM,UOM,
UOM Conversion factor is required in row {0},El factor de conversión de la (UdM) es requerido en la línea {0},
UOM coversion factor required for UOM: {0} in Item: {1},Factor de conversion de la Unidad de Medida requerido para la Unidad de Medida {0} en el artículo: {1},
URL,URL,
Unable to find 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 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 must be between {0} and {1},El valor debe estar entre {0} y {1},
"Values of exempt, nil rated and non-GST inward supplies","Valores de suministros internos exentos, nulos y no GST",
Variance,Variación,
Variance ({}),Varianza ({}),
Variant,Variante,
Variant Attributes,Atributos de Variante,
Variant Based On cannot be changed,La variante basada en no se puede cambiar,
Variant Details Report,Informe de Detalles de Variaciones,
Variant creation has been queued.,La creación de variantes se ha puesto en cola.,
Vehicle Expenses,Los gastos del vehículo,
Vehicle No,Nro de Vehículo.,
Vehicle Type,tipo de vehiculo,
Vehicle/Bus Number,Número de Vehículo/Autobús,
Venture Capital,Capital de riesgo,
View Chart of Accounts,Ver el Cuadro de Cuentas,
View Fees Records,Ver Registros de Honorarios,
View Form,Ver formulario,
View Lab Tests,Ver pruebas de laboratorio,
View Leads,Ver Iniciativas,
View Ledger,Mostrar Libro Mayor,
View Now,Ver ahora,
View a list of all the help videos,Ver una lista de todos los videos de ayuda,
View in Cart,Ver en Carrito,
Visit report for maintenance call.,Reporte de visitas para mantenimiento,
Visit the forums,Visita los foros,
Vital Signs,Signos vitales,
Volunteer,Voluntario,
Volunteer Type information.,Información de Tipo de Voluntario,
Volunteer information.,Información del Voluntario.,
Voucher #,Comprobante #,
Voucher No,Comprobante No.,
Voucher Type,Tipo de Comprobante,
WIP Warehouse,Almacén de trabajos en proceso,
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,"El almacén no se puede eliminar, porque existen registros de inventario para el mismo.",
Warehouse cannot be changed for Serial No.,Almacén no se puede cambiar para el N º de serie,
Warehouse is mandatory,Almacén es Obligatorio,
Warehouse is mandatory for stock Item {0} in row {1},El almacén es obligatorio para el producto {0} en la línea {1},
Warehouse not found in the system,El almacén no se encuentra en el sistema,
"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Se requiere Almacén en la Fila Nro {0}, configure el Almacén Predeterminado para el Artículo {1} para la Empresa {2}",
Warehouse required for stock Item {0},El almacén es requerido para el stock del producto {0},
Warehouse {0} can not be deleted as quantity exists for Item {1},El almacén {0} no se puede eliminar ya que existen elementos para el Producto {1},
Warehouse {0} does not belong to company {1},El almacén {0} no pertenece a la compañía {1},
Warehouse {0} does not exist,El almacén {0} no existe,
"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","El Almacén {0} no esta vinculado a ninguna cuenta, por favor mencione la cuenta en el registro del almacén o seleccione una cuenta de inventario por defecto en la compañía {1}.",
Warehouses with child nodes cannot be converted to ledger,Almacenes con nodos secundarios no pueden ser convertidos en libro mayor,
Warehouses with existing transaction can not be converted to group.,Complejos de transacción existentes no pueden ser convertidos en grupo.,
Warehouses with existing transaction can not be converted to ledger.,Complejos de depósito de transacciones existentes no se pueden convertir en el libro mayor.,
Warning,Advertencia,
Warning: Another {0} # {1} exists against stock entry {2},Advertencia: Existe otra {0} # {1} para la entrada de inventario {2},
Warning: Invalid SSL certificate on attachment {0},Advertencia: certificado SSL no válido en el apego {0},
Warning: Invalid attachment {0},Advertencia! archivo adjunto no valido: {0},
Warning: Material Requested Qty is less than Minimum Order Qty,Advertencia: La requisición de materiales es menor que la orden mínima establecida,
Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Advertencia: La orden de venta {0} ya existe para la orden de compra {1} del cliente,
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Advertencia: El sistema no comprobará la sobrefacturación si la cantidad del producto {0} en {1} es cero,
Warranty,Garantía,
Warranty Claim,Reclamación de Garantía,
Warranty Claim against Serial No.,Reclamación de garantía por numero de serie,
Website,Sitio Web,
Website Image should be a public file or website URL,Sitio web imagen debe ser un archivo público o URL del sitio web,
Website Image {0} attached to Item {1} cannot be found,Sitio web Imagen {0} unido al artículo {1} no se puede encontrar,
Website Manager,Administrar Página Web,
Website Settings,Configuración del Sitio Web,
Wednesday,Miércoles,
Week,Semana,
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-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 set Frozen value,Usted no está autorizado para definir el 'valor congelado',
You can not change rate if BOM mentioned agianst any item,No se puede cambiar el precio si existe una Lista de materiales (LdM) en el producto,
You can not enter current voucher in 'Against Journal Entry' column,Usted no puede ingresar Comprobante Actual en la comumna 'Contra Contrada de Diario',
You can only have Plans with the same billing cycle in a Subscription,Solo puede tener Planes con el mismo ciclo de facturación en una Suscripción,
You can only redeem max {0} points in this order.,Solo puede canjear max {0} puntos en este orden.,
You can only renew if your membership expires within 30 days,Solo puede renovar si su membresía vence dentro de los 30 días,
You can only select a maximum of one option from the list of check boxes.,Solo puede seleccionar un máximo de una opción de la lista de casillas de verificación.,
You can't redeem Loyalty Points having more value than the Grand Total.,No puede canjear puntos de lealtad que tengan más valor que el total general.,
You cannot credit and debit same account at the same time,No se pueden registrar Debitos y Creditos a la misma Cuenta al mismo tiempo,
You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,No se puede eliminar el año fiscal {0}. Año fiscal {0} se establece por defecto en la configuración global,
You cannot delete Project Type 'External',No puede eliminar Tipo de proyecto &#39;Externo&#39;,
You cannot edit root node.,No puedes editar el nodo raíz.,
You cannot restart a Subscription that is not cancelled.,No puede reiniciar una suscripción que no está cancelada.,
You don't have 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} asset cannot be transferred,{0} activo no se puede transferir,
{0} can not be negative,{0} no puede ser negativo,
{0} created,{0} creado,
"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.",{0} tiene actualmente una {1} Tarjeta de Puntuación de Proveedores y las Órdenes de Compra a este Proveedor deben ser emitidas con precaución.,
"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.",{0} tiene actualmente un {1} Calificación de Proveedor en pie y las solicitudes de ofertas a este proveedor deben ser emitidas con precaución.,
{0} does not belong to Company {1},{0} no pertenece a la Compañía {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} no tiene agenda del profesional médico . Asígnele al médico.,
{0} entered twice in Item Tax,{0} se ingresó dos veces en impuesto del artículo,
{0} for {1},{0} de {1},
{0} has been submitted successfully,{0} ha sido enviado con éxito,
{0} has fee validity till {1},{0} tiene validez de honorarios hasta {1},
{0} hours,{0} horas,
{0} in row {1},{0} en la fila {1},
{0} is blocked so this transaction cannot proceed,{0} está bloqueado por lo que esta transacción no puede continuar,
{0} is mandatory,{0} es obligatorio,
{0} is mandatory for Item {1},{0} es obligatorio para el artículo {1},
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} es obligatorio. Posiblemente el registro de cambio de moneda no ha sido creado para {1} hasta {2}.,
{0} is not a stock Item,{0} no es un artículo en existencia,
{0} is not a valid Batch Number for Item {1},{0} no es un número de lote válido para el artículo {1},
{0} is not added in the table,{0} no se agrega a la tabla,
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,"{0} es ahora el año fiscal predeterminado. Por favor, actualice su navegador para que el cambio surta efecto.",
{0} is on hold till {1},{0} está en espera hasta {1},
{0} item found.,Se ha encontrado {0} artículo.,
{0} items found.,Se han encontrado {0} elementos.,
{0} items in progress,{0} artículos en curso,
{0} items produced,{0} artículos producidos,
{0} must appear only once,{0} debe aparecer solo una vez,
{0} must be negative in return document,{0} debe ser negativo en el documento de devolución,
{0} not allowed to transact with {1}. Please change the Company.,{0} no se permite realizar transacciones con {1}. Por favor cambia la Compañía.,
{0} not found for item {1},{0} no encontrado para el Artículo {1},
{0} parameter is invalid,El parámetro {0} no es válido,
{0} payment entries can not be filtered by {1},{0} entradas de pago no pueden ser filtradas por {1},
{0} should be a value between 0 and 100,{0} debe ser un valor entre 0 y 100,
{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} unidades de [{1}] (# Formulario / Artículo / {1}) encontradas en [{2}] (# Formulario / Almacén / {2}),
{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} unidades de {1} necesaria en {2} sobre {3} {4} {5} para completar esta transacción.,
{0} units of {1} needed in {2} to complete this transaction.,{0} unidades de {1} necesaria en {2} para completar esta transacción.,
{0} valid serial nos for Item {1},{0} núms. de serie válidos para el artículo {1},
{0} variants created.,{0} variantes creadas,
{0} {1} created,{0} {1} creado,
{0} {1} does not exist,{0} {1} no existe,
{0} {1} has been modified. Please refresh.,{0} {1} ha sido modificado. Por favor actualice.,
{0} {1} has not been submitted so the action cannot be completed,{0} {1} no fue enviado por lo tanto la acción no   puede estar completa,
"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} está asociado con {2}, pero la cuenta de grupo es {3}",
{0} {1} is cancelled or closed,{0} {1} está cancelado o cerrado,
{0} {1} is cancelled or stopped,{0} {1} está cancelado o detenido,
{0} {1} is cancelled so the action cannot be completed,{0} {1} está cancelado por lo tanto la acción no puede ser completada,
{0} {1} is closed,{0} {1} está cerrado,
{0} {1} is disabled,{0} {1} está desactivado,
{0} {1} is frozen,{0} {1} está congelado,
{0} {1} is fully billed,{0} {1} está totalmente facturado,
{0} {1} is not active,{0} {1} no está activo,
{0} {1} is not associated with {2} {3},{0} {1} no está asociado con {2} {3},
{0} {1} is not present in the parent company,{0} {1} no está presente en la empresa padre,
{0} {1} is not submitted,{0} {1} no se ha enviado,
{0} {1} is {2},{0} {1} es {2},
{0} {1} must be submitted,{0} {1} debe ser presentado,
{0} {1} not in any active Fiscal Year.,{0} {1} no en cualquier año fiscal activa.,
{0} {1} status is {2},{0} {1} el estado es {2},
{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,"{0} {1}: cuenta de tipo ""Pérdidas y Ganancias"" {2} no se permite una entrada de apertura",
{0} {1}: Account {2} does not belong to Company {3},{0} {1}: Cuenta {2} no pertenece a la compañía {3},
{0} {1}: Account {2} is inactive,{0} {1}: la cuenta {2} está inactiva,
{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: La entrada contable para {2} sólo puede hacerse en la moneda: {3},
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Centro de Costes es obligatorio para el artículo {2},
{0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.,"{0} {1}: El centros de costos es requerido para la cuenta de 'pérdidas y ganancias' {2}. Por favor, configure un centro de costos por defecto para la compañía.",
{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: El centro de costos {2} no pertenece a la empresa {3},
{0} {1}: Customer is required against Receivable account {2},{0} {1}: Se requiere al cliente para la cuenta por cobrar {2},
{0} {1}: Either debit or credit amount is required for {2},{0} {1}: O bien se requiere tarjeta de débito o crédito por importe {2},
{0} {1}: Supplier is required against Payable account {2},{0} {1}: se requiere un proveedor para la cuenta por pagar {2},
{0}% Billed,{0}% facturado,
{0}% Delivered,{0}% entregado,
{0}: From {1},{0}: desde {1},
{0}: {1} does not exists,{0}: {1} no existe,
{0}: {1} not found in Invoice Details table,{0}: {1} no se encontró en la tabla de detalles de factura,
{} of {},{} de {},
Assigned To,Asignado a,
Chat,Chat,
Completed By,Completado Por,
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,
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",
Import Successful,Importación exitosa,
Please save first,Por favor guarde primero,
Price not found for item {0} in price list {1},Precio no encontrado para el artículo {0} en la lista de precios {1},
Warehouse Type,Tipo de almacén,
'Date' is required,Se requiere &#39;fecha&#39;,
Budgets,Presupuestos,
Bundle Qty,Cantidad del paquete,
Company GSTIN,GSTIN de la Compañía,
Company field is required,Campo de la empresa es obligatorio,
Creating Dimensions...,Creando Dimensiones ...,
Duplicate entry against the item code {0} and manufacturer {1},Entrada duplicada contra el código de artículo {0} y el fabricante {1},
Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,GSTIN inválido! La entrada que ingresó no coincide con el formato GSTIN para titulares de UIN o proveedores de servicios OIDAR no residentes,
Invoice Grand Total,Factura Gran Total,
Last carbon check date cannot be a future date,La última fecha de verificación de carbono no puede ser una fecha futura,
Make Stock Entry,Hacer entrada de stock,
Quality Feedback,Comentarios de calidad,
Quality Feedback Template,Plantilla de comentarios de calidad,
Rules for applying different promotional schemes.,Reglas para aplicar diferentes esquemas promocionales.,
Show {0},Mostrar {0},
"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,
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,
<b>Company</b> is a mandatory filter.,<b>La empresa</b> es un filtro obligatorio.,
<b>From Date</b> is a mandatory filter.,<b>Desde la fecha</b> es un filtro obligatorio.,
<b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>From Time</b> no puede ser posterior a <b>To Time</b> para {0},
<b>To Date</b> is a mandatory filter.,<b>Hasta la fecha</b> es un filtro obligatorio.,
A new appointment has been created for you with {0},Se ha creado una nueva cita para usted con {0},
Account Value,Valor de la cuenta,
Account is mandatory to get payment entries,La cuenta es obligatoria para obtener entradas de pago,
Account is not set for the dashboard chart {0},La cuenta no está configurada para el cuadro de mandos {0},
Account {0} does not exists in the dashboard chart {1},La cuenta {0} no existe en el cuadro de mandos {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Cuenta: <b>{0}</b> es capital Trabajo en progreso y no puede actualizarse mediante Entrada de diario,
Account: {0} is not permitted under Payment Entry,Cuenta: {0} no está permitido en Entrada de pago,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,La dimensión contable <b>{0}</b> es necesaria para la cuenta &#39;Balance&#39; {1}.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,La dimensión contable <b>{0}</b> es necesaria para la cuenta &#39;Ganancias y pérdidas&#39; {1}.,
Accounting Masters,Maestros Contables,
Accounting Period overlaps with {0},El período contable se superpone con {0},
Activity,Actividad,
Add / Manage Email Accounts.,Añadir / Administrar cuentas de correo electrónico.,
Add Child,Agregar hijo,
Add Multiple,Añadir Multiple,
Add Participants,Agregar Participantes,
Add to Featured Item,Agregar al artículo destacado,
Add your review,Agrega tu evaluación,
Add/Edit Coupon Conditions,Agregar / editar condiciones de cupón,
Added to Featured Items,Agregado a elementos destacados,
Added {0} ({1}),Añadido: {0} ({1}),
Address Line 1,Dirección línea 1,
Addresses,Direcciones,
Admission End Date should be greater than Admission Start Date.,La fecha de finalización de la admisión debe ser mayor que la fecha de inicio de la admisión.,
All,Todos,
All bank transactions have been created,Se han creado todas las transacciones bancarias.,
All the depreciations has been booked,Todas las amortizaciones han sido registradas,
Allow Resetting Service Level Agreement from Support Settings.,Permitir restablecer el acuerdo de nivel de servicio desde la configuración de soporte.,
Amount of {0} is required for Loan closure,Se requiere una cantidad de {0} para el cierre del préstamo,
Applied Coupon Code,Código de cupón aplicado,
Apply Coupon Code,Aplicar código de cupón,
Appointment Booking,Reserva de citas,
"As there are existing transactions against item {0}, you can not change the value of {1}","Como hay transacciones existentes contra el elemento {0}, no se puede cambiar el valor de {1}",
Asset Id,ID de activo,
Asset Value,Valor del activo,
Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,El ajuste del valor del activo no puede contabilizarse antes de la fecha de compra del activo <b>{0}</b> .,
Asset {0} does not belongs to the custodian {1},El activo {0} no pertenece al custodio {1},
Asset {0} does not belongs to the location {1},El activo {0} no pertenece a la ubicación {1},
At least one of the Applicable Modules should be selected,Se debe seleccionar al menos uno de los módulos aplicables.,
Atleast one asset has to be selected.,Al menos un activo tiene que ser seleccionado.,
Authentication Failed,Autenticación fallida,
Automatic Reconciliation,Reconciliación automática,
Available For Use Date,Disponible para uso Fecha,
Available Stock,Stock disponible,
"Available quantity is {0}, you need {1}","La cantidad disponible es {0}, necesita {1}",
BOM 1,BOM 1,
BOM 2,BOM 2,
BOM Comparison Tool,Herramienta de comparación de lista de materiales,
BOM recursion: {0} cannot be child of {1},Recurrencia de la lista de materiales: {0} no puede ser hijo de {1},
BOM recursion: {0} cannot be parent or child of {1},Recurrencia de la lista de materiales: {0} no puede ser padre o hijo de {1},
Back to 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 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,
Exception occurred while reconciling {0},Se produjo una excepción al conciliar {0},
Expected and Discharge dates cannot be less than Admission Schedule date,Las fechas esperadas y de alta no pueden ser inferiores a la fecha del horario de admisión,
Expired,Expirado,
Export,Exportar,
Export not allowed. You need {0} role to export.,Exportación no permitida. Se necesita el rol {0} para exportar.,
Failed to add Domain,Error al agregar dominio,
Fetch Items from Warehouse,Obtener artículos del almacén,
Fetching...,Atractivo...,
Field,Campo,
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,
Future Payment Amount,Monto de pago futuro,
Future Payment Ref,Ref. De pago futuro,
Future Payments,Pagos futuros,
GST HSN Code does not exist for one or more items,El código GST HSN no existe para uno o más artículos,
Generate E-Way Bill JSON,Generar E-Way Bill JSON,
Get Items,Obtener artículos,
Get Outstanding Documents,Obtenga documentos sobresalientes,
Goal,Objetivo,
Greater Than Amount,Mayor que la cantidad,
Green,Verde,
Group,Grupo,
Group By Customer,Agrupar por cliente,
Group By Supplier,Agrupar por proveedor,
Group Node,Agrupar por nota,
Group Warehouses cannot be used in transactions. Please change the value of {0},Los Almacenes de grupo no se pueden usar en transacciones. Cambie el valor de {0},
Help,Ayuda,
Help Article,Artículo de Ayuda,
"Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Le ayuda a realizar un seguimiento de los contratos basados en proveedores, clientes y empleados",
Helps you manage appointments with your leads,Le ayuda a gestionar citas con sus clientes potenciales,
Home,Inicio,
IBAN is not valid,IBAN no es válido,
Import Data from CSV / Excel files.,Importar Datos desde Archivos CSV / Excel.,
In Progress,En Progreso,
Incoming call from {0},Llamada entrante de {0},
Incorrect Warehouse,Almacén incorrecto,
Invalid Barcode. There is no Item attached to this barcode.,Código de barras inválido. No hay ningún elemento adjunto a este código de barras.,
Invalid credentials,Credenciales no válidas,
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,
Leaves Taken,Hojas tomadas,
Less Than Amount,Menos de la cantidad,
Liabilities,Pasivo,
Loading...,Cargando ...,
Loan Applications from customers and employees.,Solicitudes de préstamos de clientes y empleados.,
Loan Processes,Procesos de préstamo,
Loan Type for interest and penalty rates,Tipo de préstamo para tasas de interés y multas,
Loans,Préstamos,
Loans provided to customers and employees.,Préstamos otorgados a clientes y empleados.,
Location,Ubicación,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,"Parece que alguien le envió a una URL incompleta. Por favor, pídeles que revisen.",
Make Journal Entry,Crear asiento contable,
Make Purchase Invoice,Hacer factura de compra,
Manufactured,Fabricado,
Mark Work From Home,Marcar trabajo desde casa,
Master,Maestro,
Max strength cannot be less than zero.,La fuerza máxima no puede ser inferior a cero.,
Maximum attempts for this quiz reached!,¡Intentos máximos para este cuestionario alcanzado!,
Message,Mensaje,
Missing Values Required,Valores faltantes requeridos,
Mobile No,Nº Móvil,
Mobile Number,Número de teléfono móvil,
Month,Mes,
Name,Nombre,
Near you,Cerca de usted,
Net Profit/Loss,Beneficio neto (pérdidas,
New Expense,Nuevo gasto,
New Invoice,Nueva factura,
New Payment,Nuevo pago,
New release date should be in the future,La nueva fecha de lanzamiento debe estar en el futuro,
Newsletter,Boletín de noticias,
No Account matched these filters: {},Ninguna cuenta coincide con estos filtros: {},
No communication found.,No se encontró comunicación.,
No correct answer is set for {0},No se establece una respuesta correcta para {0},
No description,Sin descripción,
No issue has been raised by the caller.,La persona que llama no ha planteado ningún problema.,
No items to publish,No hay elementos para publicar.,
No outstanding invoices found,No se encontraron facturas pendientes,
No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,No se encontraron facturas pendientes para el {0} {1} que califican los filtros que ha especificado.,
No outstanding invoices require exchange rate revaluation,No hay facturas pendientes requieren revalorización del tipo de cambio,
No reviews yet,Aún no hay comentarios,
No views yet,Sin vistas aún,
Non stock items,Artículos sin stock,
Not Allowed,No permitido,
Not allowed to create accounting dimension for {0},No se permite crear una dimensión contable para {0},
Not permitted. Please disable the Lab Test Template,No permitido. Deshabilite la plantilla de prueba de laboratorio,
Note,Nota,
Notes: ,Notas:,
On Converting Opportunity,Sobre la oportunidad de conversión,
On Purchase Order Submission,En el envío de la orden de compra,
On Sales Order Submission,En el envío de pedidos de ventas,
On Task Completion,Al finalizar la tarea,
On {0} Creation,En {0} Creación,
Only .csv and .xlsx files are supported currently,Actualmente solo se admiten archivos .csv y .xlsx,
Open,Abrir/Abierto,
Open Contact,Contacto abierto,
Open Lead,Plomo abierto,
Opening and Closing,Abriendo y cerrando,
Operating Cost as per Work Order / BOM,Costo operativo según la orden de trabajo / BOM,
Order Amount,Total de la orden,
Page {0} of {1},Página {0} de {1},
Paid amount cannot be less than {0},El monto pagado no puede ser inferior a {0},
Parent Company must be a group company,La empresa matriz debe ser una empresa grupal,
Passing Score value should be between 0 and 100,El valor del puntaje de aprobación debe estar entre 0 y 100,
Patient History,Historia del paciente,
Pause,Pausa,
Pay,Pagar,
Payment Document Type,Tipo de documento de pago,
Payment Name,Nombre de pago,
Pending,Pendiente,
Performance,Actuación,
Period based On,Período basado en,
Perpetual inventory required for the company {0} to view this report.,Se requiere un inventario perpetuo para que la empresa {0} vea este informe.,
Phone,Teléfono,
Pick List,Lista de selección,
Plaid authentication error,Error de autenticación a cuadros,
Plaid public token error,Error de token público a cuadros,
Plaid transactions sync error,Error de sincronización de transacciones a cuadros,
Please check the error log for details about the import errors,Consulte el registro de errores para obtener detalles sobre los errores de importación.,
Please create <b>DATEV Settings</b> for Company <b>{}</b>.,<b>Cree la configuración de DATEV</b> para la empresa <b>{}</b> .,
Please create adjustment Journal Entry for amount {0} ,Cree una entrada de diario de ajuste para la cantidad {0},
Please do not create more than 500 items at a time,No cree más de 500 artículos a la vez.,
Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Ingrese la <b>cuenta de diferencia</b> o configure la <b>cuenta de ajuste de stock</b> predeterminada para la compañía {0},
Please enter GSTIN and state for the Company Address {0},Ingrese GSTIN e indique la dirección de la empresa {0},
Please enter Item Code to get item taxes,Ingrese el código del artículo para obtener los impuestos del artículo,
Please enter Warehouse and Date,"Por favor, introduzca el almacén y la fecha",
Please login as a Marketplace User to edit this item.,Inicie sesión como usuario de Marketplace para editar este artículo.,
Please login as a Marketplace User to report this item.,Inicie sesión como usuario de Marketplace para informar este artículo.,
Please select <b>Template Type</b> to download template,Seleccione <b>Tipo de plantilla</b> para descargar la plantilla,
Please select Customer first,Por favor seleccione Cliente primero,
Please select Item Code first,Seleccione primero el código del artículo,
Please select a Delivery Note,Por favor seleccione una nota de entrega,
Please select a Sales Person for item: {0},Seleccione una persona de ventas para el artículo: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Seleccione otro método de pago. Stripe no admite transacciones en moneda &#39;{0}&#39;,
Please select the customer.,Por favor seleccione el cliente.,
Please set a Supplier against the Items to be considered in the Purchase Order.,Establezca un Proveedor contra los Artículos que se considerarán en la Orden de Compra.,
Please set account heads in GST Settings for Compnay {0},Configure los encabezados de las cuentas en la configuración de GST para Compnay {0},
Please set an email id for the Lead {0},Configure una identificación de correo electrónico para el Cliente potencial {0},
Please set default UOM in Stock Settings,Configure la UOM predeterminada en la configuración de stock,
Please set filter based on Item or Warehouse due to a large amount of entries.,Configure el filtro en función del artículo o almacén debido a una gran cantidad de entradas.,
Please set up the Campaign Schedule in the Campaign {0},Configure la programación de la campaña en la campaña {0},
Please set valid GSTIN No. in Company Address for company {0},Establezca un número GSTIN válido en la dirección de la empresa para la empresa {0},
Please set {0},Por favor establezca {0},customer
Please setup a default bank account for company {0},Configure una cuenta bancaria predeterminada para la empresa {0},
Please specify,"Por favor, especifique",
Please specify a {0},"Por favor, especifique un {0}",lead
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}).,
This Service Level Agreement is specific to Customer {0},Este Acuerdo de nivel de servicio es específico para el Cliente {0},
This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,Esta acción desvinculará esta cuenta de cualquier servicio externo que integre ERPNext con sus cuentas bancarias. No se puede deshacer. Estas seguro ?,
This bank account is already synchronized,Esta cuenta bancaria ya está sincronizada,
This bank transaction is already fully reconciled,Esta transacción bancaria ya está completamente conciliada,
This page keeps track of items you want to buy from sellers.,Esta página realiza un seguimiento de los artículos que desea comprar a los vendedores.,
This page keeps track of your items in which buyers have showed some interest.,Esta página realiza un seguimiento de sus artículos en los que los compradores han mostrado cierto interés.,
Thursday,Jueves,
Title,Nombre,
"To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.","Para permitir la facturación excesiva, actualice &quot;Asignación de facturación excesiva&quot; en la Configuración de cuentas o el Artículo.",
"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","Para permitir sobre recibo / entrega, actualice &quot;Recibo sobre recibo / entrega&quot; en la Configuración de inventario o en el Artículo.",
Total,Total,
Total Payment Request amount cannot be greater than {0} amount,El monto total de la solicitud de pago no puede ser mayor que el monto de {0},
Total payments amount can't be greater than {},El monto total de los pagos no puede ser mayor que {},
Totals,Totales,
Transactions already retreived from the statement,Transacciones ya retiradas del extracto,
Transfer Material to Supplier,Transferir material a proveedor,
Transport Receipt No and Date are mandatory for your chosen Mode of Transport,El recibo de transporte y la fecha son obligatorios para el modo de transporte elegido,
Tuesday,Martes,
Type,Tipo,
Unable to find the time slot in the next {0} days for the operation {1}.,No se puede encontrar el intervalo de tiempo en los próximos {0} días para la operación {1}.,
Unable to update remote activity,No se puede actualizar la actividad remota,
Unknown Caller,Llamador desconocido,
Unlink external integrations,Desvincular integraciones externas,
Unpublish Item,Artículo no publicado,
Unreconciled,No reconciliado,
Unsupported GST Category for E-Way Bill JSON generation,Categoría GST no compatible para la generación E-Way Bill JSON,
Update,Actualizar,
Update 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,
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 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,
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 students found,No se han encontrado estudiantes,
Not in stock,No disponible en stock,
Not permitted,No permitido,
Open Issues ,Incidencias Abiertas,
Open Projects ,Proyectos abiertos,
Open To Do ,Lista de tareas abiertas,
Operation Id,ID de operación,
Partially ordered,Parcialmente ordenado,
Please select company first,"Por favor, seleccione la empresa primero",
Please select patient,Seleccione Paciente,
Printed On ,Impreso en,
Projected qty,Cantidad proyectada,
Sales person,Vendedores,
Serial No {0} Created,Número de serie {0} creado,
Source Location is required for the Asset {0},La ubicación de origen es obligatoria para el activo {0},
Tax Id,Identificación del impuesto,
To Time,Hasta hora,
To date cannot be before from date,Hasta la fecha no puede ser anterior a la fecha Desde,
Total Taxable value,Valor imponible total,
Upcoming Calendar Events ,Calendario de Eventos Próximos,
Value or Qty,Valor o cantidad,
Variance ,Diferencia,
Variant of,Variante de,
Write off,Desajuste,
hours,horas,
received from,recibido de,
to,a,
Cards,Tarjetas,
Percentage,Porcentaje,
Failed to setup defaults for country {0}. Please contact support@erpnext.com,"Error al configurar los valores predeterminados para el país {0}. Por favor, póngase en contacto con support@erpnext.com",
Row #{0}: Item {1} is not a Serialized/Batched Item. It cannot have a Serial No/Batch No against it.,Fila # {0}: el artículo {1} no es un artículo serializado / en lote. No puede tener un No de serie / No de lote en su contra.,
Please set {0},"Por favor, configure {0}",
Please set {0},Por favor establezca {0},supplier
Draft,Sequía,"docstatus,=,0"
Cancelled,Cancelado,"docstatus,=,2"
Please setup Instructor Naming System in Education > Education Settings,Configure el Sistema de nombres de instructores en Educación&gt; Configuración de educación,
Please set Naming Series for {0} via Setup > Settings > Naming Series,Configure Naming Series para {0} a través de Configuración&gt; Configuración&gt; Naming Series,
UOM Conversion factor ({0} -> {1}) not found for item: {2},Factor de conversión de UOM ({0} -&gt; {1}) no encontrado para el artículo: {2},
Item Code > Item Group > Brand,Código de artículo&gt; Grupo de artículos&gt; Marca,
Customer > Customer Group > Territory,Cliente&gt; Grupo de clientes&gt; Territorio,
Supplier > Supplier Type,Proveedor&gt; Tipo de proveedor,
The value of {0} differs between Items {1} and {2},El valor de {0} difiere entre los elementos {1} y {2},
Auto Fetch,Búsqueda automática,
Fetch Serial Numbers based on FIFO,Obtener números de serie basados en FIFO,
"Outward taxable supplies(other than zero rated, nil rated and exempted)","Suministros sujetos a impuestos en el exterior (distintos a cero, cero y exentos)",
"To allow different rates, disable the {0} checkbox in {1}.","Para permitir diferentes tarifas, inhabilite la casilla de verificación {0} en {1}.",
Asset{} {assets_link} created for {},Activo {} {assets_link} creado para {},
Row {}: Asset Naming Series is mandatory for the auto creation for item {},Fila {}: la serie de nombres de activos es obligatoria para la creación automática del artículo {},
Assets not created for {0}. You will have to create asset manually.,Activos no creados para {0}. Tendrá que crear el activo manualmente.,
{0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} tiene asientos contables en la moneda {2} de la empresa {3}. Seleccione una cuenta por cobrar o por pagar con la moneda {2}.,
Invalid Account,Cuenta no válida,
Purchase Order Required,Orden de compra requerida,
Purchase Receipt Required,Recibo de compra requerido,
Account Missing,Cuenta Faltante,
Requested,Solicitado,
Partially Paid,Parcialmente pagado,
Invalid Account Currency,Moneda de la cuenta no válida,
"Row {0}: The item {1}, quantity must be positive number","Fila {0}: el artículo {1}, la cantidad debe ser un número positivo",
"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Configure {0} para el artículo por lotes {1}, que se utiliza para configurar {2} en Enviar.",
Expiry Date Mandatory,Fecha de caducidad obligatoria,
Variant Item,Elemento variante,
BOM 1 {0} and BOM 2 {1} should not be same,BOM 1 {0} y BOM 2 {1} no deben ser iguales,
Note: Item {0} added multiple times,Nota: elemento {0} agregado varias veces,
YouTube,Youtube,
Vimeo,Vimeo,
Publish Date,Fecha de publicación,
Duration,Duración,
Advanced Settings,Ajustes avanzados,
Path,Camino,
Components,componentes,
Verified By,Verificado por,
Invalid naming series (. missing) for {0},Serie de nombres no válida (falta.) Para {0},
Filter Based On,Filtro basado en,
Reqd by date,Requerido por fecha,
Manufacturer Part Number <b>{0}</b> is invalid,El número de pieza del fabricante <b>{0}</b> no es válido.,
Invalid Part Number,Número de pieza no válido,
Select atleast one Social Media from Share on.,Seleccione al menos una red social de Compartir en.,
Invalid Scheduled Time,Hora programada no válida,
Length Must be less than 280.,La longitud debe ser inferior a 280.,
Error while POSTING {0},Error al PUBLICAR {0},
"Session not valid, Do you want to login?","Sesión no válida, ¿quieres iniciar sesión?",
Session Active,Sesión activa,
Session Not Active. Save doc to login.,Sesión no activa. Guarde el documento para iniciar sesión.,
Error! Failed to get request token.,¡Error! No se pudo obtener el token de solicitud.,
Invalid {0} or {1},{0} o {1} no válido,
Error! Failed to get access token.,¡Error! No se pudo obtener el token de acceso.,
Invalid Consumer Key or Consumer Secret Key,Clave de consumidor o clave secreta de consumidor no válida,
Your Session will be expire in ,Tu sesión vencerá en,
 days.,dias.,
Session is expired. Save doc to login.,La sesión ha caducado. Guarde el documento para iniciar sesión.,
Error While Uploading Image,Error al cargar la imagen,
You Didn't have permission to access this API,No tenías permiso para acceder a esta API,
Valid Upto date cannot be before Valid From date,La fecha válida hasta no puede ser anterior a la fecha válida desde,
Valid From date not in Fiscal Year {0},Válido desde la fecha no en el año fiscal {0},
Valid Upto date not in Fiscal Year {0},Actualización válida no en el año fiscal {0},
Group Roll No,Rol de grupo No,
Maintain Same Rate Throughout Sales Cycle,Mantener mismo precio durante todo el ciclo de ventas,
"Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.","Fila {1}: la cantidad ({0}) no puede ser una fracción. Para permitir esto, deshabilite &#39;{2}&#39; en UOM {3}.",
Must be Whole Number,Debe ser un número entero,
Please setup Razorpay Plan ID,Configure el ID del plan de Razorpay,
Contact Creation Failed,Error al crear el contacto,
Leaves Expired,Hojas caducadas,
Row #{}: {} of {} should be {}. Please modify the account or select a different account.,Fila # {}: {} de {} debe ser {}. Modifique la cuenta o seleccione una cuenta diferente.,
Row #{}: Please asign task to a member.,Fila # {}: asigne una tarea a un miembro.,
Process Failed,Proceso fallido,
Tally Migration Error,Error de migración de Tally,
Please set Warehouse in Woocommerce Settings,Establezca Almacén en la configuración de Woocommerce,
Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Fila {0}: el almacén de entrega ({1}) y el almacén del cliente ({2}) no pueden ser iguales,
Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Fila {0}: la fecha de vencimiento en la tabla de condiciones de pago no puede ser anterior a la fecha de publicación.,
Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,No se puede encontrar {} para el artículo {}. Establezca lo mismo en Item Master o Stock Settings.,
Row #{0}: The batch {1} has already expired.,Fila nº {0}: el lote {1} ya ha caducado.,
Start Year and End Year are mandatory,El año de inicio y el año de finalización son obligatorios,
GL Entry,Entrada GL,
Cannot allocate more than {0} against payment term {1},No se puede asignar más de {0} contra el plazo de pago {1},
The root account {0} must be a group,La cuenta raíz {0} debe ser un grupo.,
Shipping rule not applicable for country {0} in Shipping Address,La regla de envío no se aplica al país {0} en la dirección de envío.,
Get Payments from,Obtener pagos de,
Set Shipping Address or Billing Address,Establecer dirección de envío o dirección de facturación,
Consultation Setup,Configuración de consulta,
Fee Validity,Validez de la Cuota,
Laboratory Setup,Configuración de laboratorio,
Dosage Form,Forma de dosificación,
Records and History,Registros e historia,
Patient Medical Record,Registro Médico del Paciente,
Rehabilitation,Rehabilitación,
Exercise Type,Tipo de ejercicio,
Exercise Difficulty Level,Nivel de dificultad del ejercicio,
Therapy Type,Tipo de terapia,
Therapy Plan,Plan de terapia,
Therapy Session,Sesión de terapia,
Motor Assessment Scale,Escala de evaluación motora,
[Important] [ERPNext] Auto Reorder Errors,[Importante] [ERPNext] Errores de reorden automático,
"Regards,","Saludos,",
The following {0} were created: {1},Se crearon los siguientes {0}: {1},
Work Orders,Órdenes de trabajo,
The {0} {1} created sucessfully,El {0} {1} creado con éxito,
Work Order cannot be created for following reason: <br> {0},No se puede crear una orden de trabajo por el siguiente motivo:<br> {0},
Add items in the Item Locations table,Agregar elementos en la tabla Ubicaciones de elementos,
Update Current Stock,Actualizar stock actual,
"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Retener muestra se basa en el lote, marque Tiene número de lote para retener la muestra del artículo.",
Empty,Vacío,
Currently no stock available in any warehouse,Actualmente no hay stock disponible en ningún almacén,
BOM Qty,Cant. De la lista de materiales,
Time logs are required for {0} {1},Se requieren registros de tiempo para {0} {1},
Total Completed Qty,Cantidad total completada,
Qty to Manufacture,Cantidad para producción,
Social Media Campaigns,Campañas de redes sociales,
From Date can not be greater than To Date,Desde la fecha no puede ser mayor que hasta la fecha,
Please set a Customer linked to the Patient,Establezca un cliente vinculado al paciente,
Customer Not Found,Cliente no encontrado,
Please Configure Clinical Procedure Consumable Item in ,Configure el artículo consumible del procedimiento clínico en,
Missing Configuration,Falta configuración,
Out Patient Consulting Charge Item,Artículo de carga de consultoría para pacientes,
Inpatient Visit Charge Item,Artículo de carga de visita para pacientes hospitalizados,
OP Consulting Charge,Cargo de Consultoría OP,
Inpatient Visit Charge,Cargo de visita para pacientes hospitalizados,
Appointment Status,Estado de la cita,
Test: ,Prueba:,
Collection Details: ,Detalles de la colección:,
{0} out of {1},{0} de {1},
Select Therapy Type,Seleccione el tipo de terapia,
{0} sessions completed,{0} sesiones completadas,
{0} session completed,{0} sesión completada,
 out of {0},de {0},
Therapy Sessions,Sesiones de terapia,
Add Exercise Step,Agregar paso de ejercicio,
Edit Exercise Step,Editar paso de ejercicio,
Patient Appointments,Citas de pacientes,
Item with Item Code {0} already exists,El artículo con el código de artículo {0} ya existe,
Registration Fee cannot be negative or zero,La tarifa de registro no puede ser negativa ni cero,
Configure a service Item for {0},Configurar un elemento de servicio para {0},
Temperature: ,Temperatura:,
Pulse: ,Legumbres:,
Respiratory Rate: ,La frecuencia respiratoria:,
BP: ,BP:,
BMI: ,IMC:,
Note: ,Nota:,
Check Availability,Consultar disponibilidad,
Please select Patient first,Primero seleccione Paciente,
Please select a Mode of Payment first,Primero seleccione una forma de pago,
Please set the Paid Amount first,"Primero, establezca el monto pagado",
Not Therapies Prescribed,No se prescriben terapias,
There are no Therapies prescribed for Patient {0},No se prescriben terapias para el paciente {0},
Appointment date and Healthcare Practitioner are Mandatory,La fecha de la cita y el médico son obligatorios,
No Prescribed Procedures found for the selected Patient,No se encontraron procedimientos recetados para el paciente seleccionado,
Please select a Patient first,Primero seleccione un paciente,
There are no procedure prescribed for ,No hay ningún procedimiento prescrito para,
Prescribed Therapies,Terapias prescritas,
Appointment overlaps with ,La cita se superpone con,
{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} tiene una cita programada con {1} a las {2} que tiene {3} minuto (s) de duración.,
Appointments Overlapping,Superposición de citas,
Consulting Charges: {0},Cargos por consultoría: {0},
Appointment Cancelled. Please review and cancel the invoice {0},Cita cancelada. Revise y cancele la factura {0},
Appointment Cancelled.,Cita cancelada.,
Fee Validity {0} updated.,Se actualizó la validez de la tarifa {0}.,
Practitioner Schedule Not Found,Horario del médico no encontrado,
{0} is on a Half day Leave on {1},{0} tiene medio día de permiso el {1},
{0} is on Leave on {1},{0} está de permiso el {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} no tiene un horario para profesionales de la salud. Agréguelo en Healthcare Practitioner,
Healthcare Service Units,Unidades de servicio sanitario,
Complete and Consume,Completar y consumir,
Complete {0} and Consume Stock?,¿Completar {0} y consumir stock?,
Complete {0}?,¿Completar {0}?,
Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,La cantidad de stock para iniciar el Procedimiento no está disponible en el Almacén {0}. ¿Quieres registrar una entrada de stock?,
{0} as on {1},{0} como en {1},
Clinical Procedure ({0}):,Procedimiento clínico ({0}):,
Please set Customer in Patient {0},Establezca Cliente en Paciente {0},
Item {0} is not active,El elemento {0} no está activo,
Therapy Plan {0} created successfully.,El plan de terapia {0} se creó correctamente.,
Symptoms: ,Síntomas:,
No Symptoms,Sin síntomas,
Diagnosis: ,Diagnóstico:,
No Diagnosis,Sin diagnóstico,
Drug(s) Prescribed.,Medicamentos recetados.,
Test(s) Prescribed.,Prueba (s) prescritas.,
Procedure(s) Prescribed.,Procedimiento (s) prescrito.,
Counts Completed: {0},Recuentos completados: {0},
Patient Assessment,La evaluación del paciente,
Assessments,Evaluaciones,
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Cuentas (o grupos) para el cual los asientos contables se crean y se mantienen los saldos,
Account Name,Nombre de la Cuenta,
Inter Company Account,Cuenta Inter Company,
Parent Account,Cuenta principal,
Setting Account Type helps in selecting this Account in transactions.,Al configurar el tipo de cuenta facilitará la seleccion de la misma en las transacciones,
Chargeable,Devengable,
Rate at which this tax is applied,Valor por el cual el impuesto es aplicado,
Frozen,Congelado(a),
"If the account is frozen, entries are allowed to restricted users.","Si la cuenta está congelado, las entradas estarán permitidas a los usuarios restringidos.",
Balance must be,El balance debe ser,
Lft,Lft,
Rgt,Rgt,
Old Parent,Antiguo Padre,
Include in gross,Incluir en bruto,
Auditor,Auditor,
Accounting Dimension,Dimensión contable,
Dimension Name,Nombre de dimensión,
Dimension Defaults,Valores predeterminados de dimensión,
Accounting Dimension Detail,Detalle de dimensión contable,
Default Dimension,Dimensión predeterminada,
Mandatory For Balance Sheet,Obligatorio para el balance general,
Mandatory For Profit and Loss Account,Obligatorio para la cuenta de pérdidas y ganancias,
Accounting Period,Período Contable,
Period Name,Nombre del Período,
Closed Documents,Documentos Cerrados,
Accounts Settings,Configuración de cuentas,
Settings for Accounts,Ajustes de contabilidad,
Make Accounting Entry For Every Stock Movement,Crear un asiento contable para cada movimiento de stock,
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Los usuarios con este rol pueden establecer cuentas congeladas y crear / modificar los asientos contables para las mismas,
Determine Address Tax Category From,Determinar la categoría de impuestos de la dirección de,
Over Billing Allowance (%),Sobre la asignación de facturación (%),
Credit Controller,Controlador de créditos,
Check Supplier Invoice Number Uniqueness,Comprobar número de factura único por proveedor,
Make Payment via Journal Entry,Hace el pago vía entrada de diario,
Unlink Payment on Cancellation of Invoice,Desvinculación de Pago en la cancelación de la factura,
Book Asset Depreciation Entry Automatically,Entrada de depreciación de activos de libro de forma automática,
Automatically Add Taxes and Charges from Item Tax Template,Agregar automáticamente impuestos y cargos de la plantilla de impuestos de artículos,
Automatically Fetch Payment Terms,Obtener automáticamente las condiciones de pago,
Show Payment Schedule in Print,Mostrar horario de pago en Imprimir,
Currency Exchange Settings,Configuración de Cambio de Moneda,
Allow Stale Exchange Rates,Permitir Tipos de Cambio Obsoletos,
Stale Days,Días Pasados,
Report Settings,Configuración de Reportes,
Use Custom Cash Flow Format,Utilice el Formato de Flujo de Efectivo Personalizado,
Allowed To Transact With,Permitido para realizar Transacciones con,
SWIFT number,Número rápido,
Branch Code,Código de Rama,
Address and Contact,Dirección y contacto,
Address HTML,Dirección HTML,
Contact HTML,HTML de Contacto,
Data Import Configuration,Configuración de importación de datos,
Bank Transaction Mapping,Mapeo de transacciones bancarias,
Plaid Access Token,Token de acceso a cuadros,
Company Account,Cuenta de la compañia,
Account Subtype,Subtipo de cuenta,
Is Default Account,Es cuenta predeterminada,
Is Company Account,Es la Cuenta de la Empresa,
Party Details,Party Details,
Account Details,Detalles de la Cuenta,
IBAN,IBAN,
Bank Account No,Número de Cuenta Bancaria,
Integration Details,Detalles de integración,
Integration ID,ID de integración,
Last Integration Date,Última fecha de integración,
Change this date manually to setup the next synchronization start date,Cambie esta fecha manualmente para configurar la próxima fecha de inicio de sincronización,
Mask,Máscara,
Bank Account Subtype,Subtipo de cuenta bancaria,
Bank Account Type,Tipo de cuenta bancaria,
Bank Guarantee,Garantía Bancaria,
Bank Guarantee Type,Tipo de Garantía Bancaria,
Receiving,Recepción,
Providing,Siempre que,
Reference Document Name,Nombre del Documento de Referencia,
Validity in Days,Validez en Días,
Bank Account Info,Información de la Cuenta Bancaria,
Clauses and Conditions,Cláusulas y Condiciones,
Other Details,Otros detalles,
Bank Guarantee Number,Número de Garantía Bancaria,
Name of Beneficiary,Nombre del Beneficiario,
Margin Money,Dinero de Margen,
Charges Incurred,Cargos Incurridos,
Fixed Deposit Number,Número de Depósito Fijo,
Account Currency,Divisa de cuenta,
Select the Bank Account to reconcile.,Seleccione la cuenta bancaria para conciliar.,
Include Reconciled Entries,Incluir las entradas conciliadas,
Get Payment Entries,Obtener registros de pago,
Payment Entries,Entradas de Pago,
Update Clearance Date,Actualizar fecha de liquidación,
Bank Reconciliation Detail,Detalle de conciliación bancaria,
Cheque Number,Número de cheque,
Cheque Date,Fecha del cheque,
Statement Header Mapping,Encabezado del enunciado,
Statement Headers,Encabezados de estado,
Transaction Data Mapping,Mapeo de datos de Transacción,
Mapped Items,Artículos Mapeados,
Bank Statement Settings Item,Elemento de Configuración de Extracto Bancario,
Mapped Header,Encabezado Mapeado,
Bank Header,Encabezado del Banco,
Bank Statement Transaction Entry,Entrada de Transacción de Extracto Bancario,
Bank Transaction Entries,Entradas de Transacciones Bancarias,
New Transactions,Nuevas Transacciones,
Match Transaction to Invoices,Hacer coincidir la transacción con las facturas,
Create New Payment/Journal Entry,Crear Nuevo Pago / Entrada de Diario,
Submit/Reconcile Payments,Enviar / Conciliar Pagos,
Matching Invoices,Facturas Coincidentes,
Payment Invoice Items,Elementos de la Factura de Pago,
Reconciled Transactions,Transacciones Reconciliadas,
Bank Statement Transaction Invoice Item,Estado de Factura de Transacción de Extracto Bancario,
Payment Description,Descripción de Pago,
Invoice Date,Fecha de factura,
invoice,factura,
Bank Statement Transaction Payment Item,Elemento de Pago de Transacción de Extracto Bancario,
outstanding_amount,outstanding_amount,
Payment Reference,Referencia de Pago,
Bank Statement Transaction Settings Item,Elemento de Configuración de Transacción de Extracto Bancario,
Bank Data,Datos Bancarios,
Mapped Data Type,Tipo de Datos Asignados,
Mapped Data,Datos Mapeados,
Bank Transaction,Transacción bancaria,
ACC-BTN-.YYYY.-,ACC-BTN-.YYYY.-,
Transaction ID,ID de transacción,
Unallocated Amount,Monto sin asignar,
Field in Bank Transaction,Campo en transacción bancaria,
Column in Bank File,Columna en archivo bancario,
Bank Transaction Payments,Pagos de transacciones bancarias,
Control Action,Acción de Control,
Applicable on Material Request,Aplicable en la Solicitud de Material,
Action if Annual Budget Exceeded on MR,Acción si el Presupuesto Anual excedió en MR,
Warn,Advertir,
Ignore,Pasar por alto,
Action if Accumulated Monthly Budget Exceeded on MR,Acción si el Presupuesto Mensual Acumulado excedió en MR,
Applicable on Purchase Order,Aplicable en Orden de Compra,
Action if Annual Budget Exceeded on PO,Acción si se excedió el Presupuesto Anual en Orden de Compra,
Action if Accumulated Monthly Budget Exceeded on PO,Acción si el Presupuesto Mensual Acumuladose excedió en Orden de Compra,
Applicable on booking actual expenses,Aplicable en la reserva de gastos reales,
Action if Annual Budget Exceeded on Actual,Acción si el Presupuesto Anual excedió el Real,
Action if Accumulated Monthly Budget Exceeded on Actual,Acción si el Presupuesto Mensual Acumulado excedió el real,
Budget Accounts,Cuentas de Presupuesto,
Budget Account,Cuenta de Presupuesto,
Budget Amount,Monto de Presupuesto,
C-Form,C - Forma,
ACC-CF-.YYYY.-,ACC-CF-.YYYY.-,
C-Form No,C -Form No,
Received Date,Fecha de recepción,
Quarter,Trimestre,
I,Yo,
II,II,
III,III,
IV,IV,
C-Form Invoice Detail,Detalle C -Form Factura,
Invoice No,Factura No.,
Cash Flow Mapper,Mapeador de Flujo de Caja,
Section Name,Nombre de la Sección,
Section Header,Encabezado de Sección,
Section Leader,Líder de la Sección,
e.g Adjustments for:,"por ejemplo, Ajustes para:",
Section Subtotal,Subtotal de la Sección,
Section Footer,Sección Pie de Página,
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.",
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,
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,
Blood Group,Grupo sanguíneo,
A+,A +,
A-,A-,
B+,B +,
B-,B-,
O+,O +,
O-,O-,
AB+,AB +,
AB-,AB-,
Nationality,Nacionalidad,
Home Address,Direccion de casa,
Guardian Details,Detalles del Tutor,
Guardians,Tutores,
Sibling Details,Detalles de hermanos,
Siblings,Hermanos,
Exit,Salir,
Date of Leaving,Fecha de partida,
Leaving Certificate Number,Número de certificado de salida,
Reason For Leaving,Razón para irse,
Student Admission,Admisión de Estudiantes,
Admission Start Date,Fecha de inicio de la admisión,
Admission End Date,Fecha de finalización de la admisión,
Eligibility and Details,Elegibilidad y Detalles,
Student Admission Program,Programa de Admisión de Estudiantes,
Minimum Age,Edad Mínima,
Maximum Age,Edad Máxima,
Application Fee,Cuota de solicitud,
Naming Series (for Student Applicant),Serie de nomenclatura (por Estudiante Solicitante),
LMS Only,Solo LMS,
EDU-APP-.YYYY.-,EDU-APP-.YYYY.-,
Application Date,Fecha de aplicacion,
Student Attendance Tool,Herramienta de asistencia de los estudiantes,
Group Based On,Grupo basado en,
Students HTML,HTML de Estudiantes,
Group Based on,Grupo Basado En,
Student Group Name,Nombre del grupo de estudiante,
Max Strength,Fuerza Máx,
Set 0 for no limit,Ajuste 0 indica sin límite,
Instructors,Instructores,
Student Group Creation Tool,Herramienta de creación de grupo de alumnos,
Leave blank if you make students groups per year,Deje en blanco si hace grupos de estudiantes por año,
Get Courses,Obtener Cursos,
Separate course based Group for every Batch,Grupo separado basado en el curso para cada lote,
Leave unchecked if you don't want to consider batch while making course based groups. ,Deje sin marcar si no desea considerar el lote mientras hace grupos basados en curso.,
Student Group Creation Tool Course,Curso herramienta de creación de grupo de alumnos,
Course Code,Código del curso,
Student Group Instructor,Instructor de Grupo Estudiantil,
Student Group Student,Estudiante Grupo Estudiantil,
Group Roll Number,Grupo Número de rodillos,
Student Guardian,Tutor del estudiante,
Relation,Relación,
Mother,Madre,
Father,Padre,
Student Language,Idioma del Estudiante,
Student Leave Application,Solicitud de Licencia para Estudiante,
Mark as Present,Marcar como Presente,
Student Log,Bitácora del Estudiante,
Academic,Académico,
Achievement,Logro,
Student Report Generation Tool,Herramienta de Generación de Informes Estudiantiles,
Include All Assessment Group,Incluir todo el Grupo de Evaluación,
Show Marks,Mostrar Marcas,
Add letterhead,Agregar membrete,
Print Section,Imprimir Sección,
Total Parents Teacher Meeting,Reunión total de Padres y Maestros,
Attended by Parents,Asistido por los Padres,
Assessment Terms,Términos de Evaluación,
Student Sibling,Hermano del Estudiante,
Studying in Same Institute,Estudian en el mismo Instituto,
NO,NO,
YES,Sí,
Student Siblings,Hermanos del Estudiante,
Topic Content,Contenido del tema,
Amazon MWS Settings,Configuración de Amazon MWS,
ERPNext Integrations,Integraciones ERPNext,
Enable Amazon,Habilitar Amazon,
MWS Credentials,Credenciales de MWS,
Seller ID,Identificación del Vendedor,
AWS Access Key ID,ID de clave de acceso AWS,
MWS Auth Token,Token de Autenticación MWS,
Market Place ID,Market Place ID,
AE,AE,
AU,AU,
BR,BR,
CA,CA,
CN,CN,
DE,DE,
ES,ES,
FR,FR,
JP,JP,
IT,IT,
MX,MX,
UK,Reino Unido,
US,Estados Unidos,
Customer Type,Tipo de Cliente,
Market Place Account Group,Grupo de cuentas Market Place,
After Date,Después de la Fecha,
Amazon will synch data updated after this date,Amazon sincronizará los datos actualizados después de esta fecha,
Sync Taxes and Charges,Sincronizar impuestos y cargos,
Get financial breakup of Taxes and charges data by Amazon ,Obtener la desintegración financiera de los datos de impuestos y cargos por Amazon,
Sync Products,Productos de sincronización,
Always sync your products from Amazon MWS before synching the Orders details,Sincronice siempre sus productos de Amazon MWS antes de sincronizar los detalles de los pedidos,
Sync Orders,Sincronizar pedidos,
Click this button to pull your Sales Order data from Amazon MWS.,Haga clic en este botón para extraer los datos de su pedido de cliente de Amazon MWS.,
Enable Scheduled Sync,Habilitar sincronización programada,
Check this to enable a scheduled Daily synchronization routine via scheduler,Marque esto para habilitar una rutina programada de sincronización diaria a través del programador,
Max Retry Limit,Límite máximo de reintento,
Exotel Settings,Configuraciones de Exotel,
Account SID,SID de cuenta,
API Token,Token API,
GoCardless Mandate,Mandato GoCardless,
Mandate,Mandato,
GoCardless Customer,Cliente GoCardless,
GoCardless Settings,Configuración de GoCardless,
Webhooks Secret,Webhooks Secret,
Plaid Settings,Configuración de cuadros,
Synchronize all accounts every hour,Sincronice todas las cuentas cada hora,
Plaid Client ID,ID de cliente a cuadros,
Plaid Secret,Secreto a cuadros,
Plaid Environment,Ambiente a cuadros,
sandbox,salvadera,
development,desarrollo,
production,producción,
QuickBooks Migrator,Migrador de QuickBooks,
Application Settings,Configuraciones de la Aplicación,
Token Endpoint,Token Endpoint,
Scope,Alcance,
Authorization Settings,Configuraciones de Autorización,
Authorization Endpoint,Endpoint de Autorización,
Authorization URL,URL de Autorización,
Quickbooks Company ID,ID de la Empresa en Quickbooks,
Company Settings,Configuración de la compañía,
Default Shipping Account,Cuenta de Envío por Defecto,
Default Warehouse,Almacén por defecto,
Default Cost Center,Centro de costos por defecto,
Undeposited Funds Account,Cuenta de Fondos no Depositados,
Shopify Log,Log de Shopify,
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,
Laboratory Settings,Configuración del Laboratorio,
Create Lab Test(s) on Sales Invoice Submission,Crear pruebas de laboratorio en el envío de facturas de ventas,
Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,"Al marcar esto, se crearán las pruebas de laboratorio especificadas en la factura de venta en el momento del envío.",
Create Sample Collection document for Lab Test,Crear documento de colección de muestra para prueba de laboratorio,
Checking this will create a Sample Collection document  every time you create a Lab Test,"Al marcar esto, se creará un documento de Colección de muestras cada vez que cree una prueba de laboratorio",
Employee name and designation in print,Nombre y designación del empleado en la impresión,
Check this if you want the Name and Designation of the Employee associated with the User who submits the document to be printed in the Lab Test Report.,Marque esto si desea que el nombre y la designación del empleado asociado con el usuario que envía el documento se imprima en el informe de prueba de laboratorio.,
Do not print or email Lab Tests without Approval,No imprima ni envíe por correo electrónico pruebas de laboratorio sin aprobación,
Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,Marcar esto restringirá la impresión y el envío por correo electrónico de los documentos de la prueba de laboratorio a menos que tengan el estado Aprobado.,
Custom Signature in Print,Firma Personalizada en la Impresión,
Laboratory SMS Alerts,Alertas SMS de Laboratorio,
Result Printed Message,Mensaje impreso de resultado,
Result Emailed Message,Mensaje de resultado enviado por correo electrónico,
Check In,Registrarse,
Check Out,Check Out,
HLC-INP-.YYYY.-,HLC-INP-.YYYY.-,
A Positive,A Positivo,
A Negative,A Negativo,
AB Positive,AB Positivo,
AB Negative,AB Negativo,
B Positive,B Positivo,
B Negative,B Negativo,
O Positive,O Positivo,
O Negative,O Negativo,
Date of birth,Fecha de Nacimiento,
Admission Scheduled,Admisión Programada,
Discharge Scheduled,Descarga Programada,
Discharged,Descargado,
Admission Schedule Date,Fecha del Programa de Admisión,
Admitted Datetime,Fecha de Entrada Admitida,
Expected Discharge,Descarga esperada,
Discharge Date,Fecha de Alta,
Lab Prescription,Prescripción de Laboratorio,
Lab Test Name,Nombre de la prueba de laboratorio,
Test Created,Prueba Creada,
Submitted Date,Fecha de Envío,
Approved Date,Fecha Aprobada,
Sample ID,Ejemplo de Identificacion,
Lab Technician,Técnico de Laboratorio,
Report Preference,Preferencia de Informe,
Test Name,Nombre de la Prueba,
Test Template,Plantilla de Prueba,
Test Group,Grupo de Pruebas,
Custom Result,Resultado Personalizado,
LabTest Approver,Aprobador de Prueba de Laboratorio,
Add Test,Añadir Prueba,
Normal Range,Rango Normal,
Result Format,Formato del Resultado,
Single,Soltero,
Compound,Compuesto,
Descriptive,Descriptivo,
Grouped,Agrupado,
No Result,Sin resultados,
This value is updated in the Default Sales Price List.,Este valor se actualiza en la Lista de Precios de venta predeterminada.,
Lab Routine,Rutina de Laboratorio,
Result Value,Valor del Resultado,
Require Result Value,Requerir Valor de Resultado,
Normal Test Template,Plantilla de Prueba Normal,
Patient Demographics,Datos Demográficos del Paciente,
HLC-PAT-.YYYY.-,HLC-PAT-.YYYY.-,
Middle Name (optional),Segundo Nombre (Opcional),
Inpatient Status,Estado de paciente hospitalizado,
"If ""Link Customer to Patient"" is checked in Healthcare Settings and an existing Customer is not selected then, a Customer will be created for this Patient for recording transactions in Accounts module.","Si &quot;Vincular cliente a paciente&quot; está marcado en Configuración de atención médica y no se selecciona un Cliente existente, se creará un Cliente para este Paciente para registrar transacciones en el módulo Cuentas.",
Personal and Social History,Historia Personal y Social,
Marital Status,Estado Civil,
Married,Casado,
Divorced,Divorciado,
Widow,Vdo.,
Patient Relation,Relación del Paciente,
"Allergies, Medical and Surgical History","Alergias, Historia Médica y Quirúrgica",
Allergies,Alergias,
Medication,Medicación,
Medical History,Historial Médico,
Surgical History,Historia Quirúrgica,
Risk Factors,Factores de Riesgo,
Occupational Hazards and Environmental Factors,Riesgos Laborales y Factores Ambientales,
Other Risk Factors,Otros Factores de Riesgo,
Patient Details,Detalles del Paciente,
Additional information regarding the patient,Información adicional sobre el paciente,
HLC-APP-.YYYY.-,HLC-APP-.YYYY.-,
Patient Age,Edad del Paciente,
Get Prescribed Clinical Procedures,Obtenga procedimientos clínicos recetados,
Therapy,Terapia,
Get Prescribed Therapies,Obtenga terapias recetadas,
Appointment Datetime,Fecha y hora de la cita,
Duration (In Minutes),Duración (en minutos),
Reference Sales Invoice,Factura de venta de referencia,
More Info,Más información,
Referring Practitioner,Practicante de Referencia,
HLC-PA-.YYYY.-,HLC-PA-.YYYY.-,
Assessment Template,Plantilla de evaluación,
Assessment Datetime,Fecha y hora de evaluación,
Assessment Description,Descripción de la evaluación,
Assessment Sheet,Hoja de evaluación,
Total Score Obtained,Puntaje total obtenido,
Scale Min,Escala mínima,
Scale Max,Escala Max,
Patient Assessment Detail,Detalle de la evaluación del paciente,
Assessment Parameter,Parámetro de evaluación,
Patient Assessment Parameter,Parámetro de evaluación del paciente,
Patient Assessment Sheet,Hoja de evaluación del paciente,
Patient Assessment Template,Plantilla de evaluación del paciente,
Assessment Parameters,Parámetros de evaluación,
Parameters,Parámetros,
Assessment Scale,Escala de evaluación,
Scale Minimum,Escala mínima,
Scale Maximum,Escala máxima,
HLC-ENC-.YYYY.-,HLC-ENC-.YYYY.-,
Encounter Date,Fecha de Encuentro,
Encounter Time,Tiempo de Encuentro,
Encounter Impression,Encuentro de la Impresión,
Symptoms,Síntomas,
In print,En la impresión,
Medical Coding,Codificación Médica,
Procedures,Procedimientos,
Therapies,Terapias,
Review Details,Detalles de la Revisión,
Patient Encounter Diagnosis,Diagnóstico de encuentro con el paciente,
Patient Encounter Symptom,Síntoma de encuentro con el paciente,
HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
Attach Medical Record,Adjuntar historial médico,
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,
HR,HR,
Date on which this component is applied,Fecha en que se aplica este componente,
Salary Slip,Nómina salarial,
HR User,Usuario de recursos humanos,
Job Applicant,Solicitante de empleo,
Body,Cuerpo,
Appraisal Template,Plantilla de evaluación,
Parent Department,Departamento de Padres,
Leave Block List,Dejar lista de bloqueo,
Days for which Holidays are blocked for this department.,Días en que las vacaciones / permisos se bloquearan para este departamento.,
Leave Approver,Supervisor de ausencias,
Expense Approver,Supervisor de gastos,
Required Skills,Habilidades requeridas,
Skills,Habilidades,
Driver,Conductor,
HR-DRI-.YYYY.-,HR-DRI-.YYYY.-,
Suspended,Suspendido,
Transporter,Transportador,
Applicable for external driver,Aplicable para controlador externo.,
Cellphone Number,Número Celular,
License Details,Detalles de Licencia,
License Number,Número de Licencia,
Issuing Date,Fecha de Emisión,
Driving License Categories,Categorías de Licencia de Conducir,
Driving License Category,Categoría de Licencia de Conducir,
Fleet Manager,Gerente de Fota,
Driver licence class,Clase de licencia de conducir,
HR-EMP-,HR-EMP-,
Employment Type,Tipo de empleo,
Emergency Contact,Contacto de emergencia,
Emergency Contact Name,nombre del contacto de emergencia,
Emergency Phone,Teléfono de Emergencia,
ERPNext User,Usuario ERPNext,
"System User (login) ID. If set, it will become default for all HR forms.","Si se define el ID de usuario 'Login', este sera el predeterminado para todos los documentos de recursos humanos (RRHH)",
Create User Permission,Crear Permiso de Usuario,
This will restrict user access to other employee records,Esto restringirá el acceso del usuario a otros registros de empleados,
Joining Details,Detalles de Unión,
Offer Date,Fecha de oferta,
Confirmation Date,Fecha de confirmación,
Contract End Date,Fecha de finalización de contrato,
Notice (days),Aviso (días),
Date Of Retirement,Fecha de jubilación,
Department and Grade,Departamento y Grado,
Reports to,Enviar Informes a,
Attendance and Leave Details,Asistencia y detalles de licencia,
Attendance Device ID (Biometric/RF tag ID),ID de dispositivo de asistencia (ID de etiqueta biométrica / RF),
Applicable Holiday List,Lista de días Festivos,
Default Shift,Shift predeterminado,
Salary Mode,Modo de pago,
Bank A/C No.,Núm. de cta. bancaria,
Health Insurance,Seguro de Salud,
Health Insurance Provider,Proveedor de Seguro de Salud,
Health Insurance No,Seguro de Salud Nro,
Prefered Email,Correo electrónico  preferido,
Personal Email,Correo electrónico personal,
Permanent Address Is,La dirección permanente es,
Rented,Arrendado,
Owned,Propiedad,
Permanent Address,Dirección permanente,
Prefered Contact Email,Correo electrónico de contacto preferida,
Company Email,Email de la compañía,
Provide Email Address registered in company,Proporcionar dirección de correo electrónico registrada en la compañía,
Current Address Is,La Dirección Actual es,
Current Address,Dirección Actual,
Personal Bio,Biografía Personal,
Bio / Cover Letter,Bio / Carta de Presentación,
Short biography for website and other publications.,Breve biografía para la página web y otras publicaciones.,
Passport Number,Número de pasaporte,
Date of Issue,Fecha de Emisión.,
Place of Issue,Lugar de emisión.,
Widowed,Viudo,
Family Background,Antecedentes familiares,
"Here you can maintain family details like name and occupation of parent, spouse and children","Aquí usted puede ingresar los detalles de la familia como el nombre y ocupación de los padres, cónyuge e hijos",
Health Details,Detalles de salud,
"Here you can maintain height, weight, allergies, medical concerns etc","Aquí usted puede ingresar la altura, el peso, alergias, problemas médicos, etc.",
Educational Qualification,Formación académica,
Previous Work Experience,Experiencia laboral previa,
External Work History,Historial de trabajos externos,
History In Company,Historia en la Compañia,
Internal Work History,Historial de trabajo interno,
Resignation Letter Date,Fecha de carta de renuncia,
Relieving Date,Fecha de relevo,
Reason for Leaving,Razones de renuncia,
Leave Encashed?,Vacaciones pagadas?,
Encashment Date,Fecha de Cobro,
New Workplace,Nuevo lugar de trabajo,
Returned Amount,Cantidad devuelta,
Advance Account,Cuenta anticipada,
Benefits Applied,Beneficios Aplicados,
Benefit Type and Amount,Tipo de Beneficio y Cantidad,
Task Weight,Peso de la Tarea,
Employee Education,Educación del empleado,
School/University,Escuela / Universidad.,
Graduate,Graduado,
Post Graduate,Postgrado,
Under Graduate,Estudiante,
Year of Passing,Año de Finalización,
Class / Percentage,Clase / Porcentaje,
Major/Optional Subjects,Principales / Asignaturas Optativas,
Employee External Work History,Historial de de trabajos anteriores,
Total Experience,Experiencia total,
Default Leave Policy,Política de Licencia Predeterminada,
Employee Group Table,Tabla de grupo de empleados,
ERPNext User ID,ERP ID de usuario siguiente,
Employee Internal Work History,Historial de trabajo del empleado,
Activities,Actividades,
Employee Onboarding Activity,Actividad de Incorporación del Empleado,
Employee Promotion Detail,Detalle de la Promoción del Empleado,
Employee Transfer Property,Propiedad de Transferencia del Empleado,
Unclaimed amount,Cantidad no Reclamada,
Holiday List Name,Nombre de festividad,
Total Holidays,Vacaciones Totales,
Add Weekly Holidays,Añadir Vacaciones Semanales,
Weekly Off,Semanal Desactivado,
Add to Holidays,Agregar a Vacaciones,
Holidays,Vacaciones,
Clear Table,Borrar tabla,
Retirement Age,Edad de retiro,
Enter retirement age in years,Introduzca la edad de jubilación en años,
Stop Birthday Reminders,Detener recordatorios de cumpleaños.,
Leave Settings,Configuración de Vacaciones,
Accepted,Aceptado,
Printing Details,Detalles de impresión,
Job Title,Título del trabajo,
Allocation,Asignación,
Select Employees,Seleccione los empleados,
Allocate,Asignar,
Max Leaves Allowed,Max Licencias Permitidas,
Maximum Continuous Days Applicable,Máximo de días continuos aplicables,
Select Payroll Period,Seleccione el Período de Nómina,
Abbr,Abreviatura,
Condition and Formula,Condición y Fórmula,
Total Working Hours,Horas de trabajo total,
Hour Rate,Salario por hora,
Bank Account No.,Cta. bancaria núm.,
Earning & Deduction,Ingresos y Deducciones,
Loan repayment,Pago de prestamo,
Employee Loan,Préstamo de Empleado,
Total Principal Amount,Monto Principal Total,
Total Interest Amount,Monto Total de Interés,
Total Loan Repayment,Amortización total del préstamo,
net pay info,información de pago neto,
Gross Pay - Total Deduction - Loan Repayment,Pago Bruto - Deducción total - Pago de Préstamos,
Net Pay (in words) will be visible once you save the Salary Slip.,Pago neto (en palabras) será visible una vez que guarde la nómina salarial.,
Staffing Plan Details,Detalles del plan de dotación de personal,
Optional,Opcional,
Costing,Presupuesto,
Vehicle,Vehículo,
License Plate,Matrículas,
Odometer Value (Last),Valor del cuentakilómetros (Última),
Acquisition Date,Fecha de Adquisición,
Chassis No,N° de Chasis,
Vehicle Value,El valor del vehículo,
Insurance Details,Detalles de Seguros,
Insurance Company,Compañía de seguros,
Policy No,N° de Política,
Additional Details,Detalles adicionales,
Fuel Type,Tipo de Combustible,
Petrol,Gasolina,
Diesel,Diesel,
Natural Gas,Gas natural,
Electric,Eléctrico,
Fuel UOM,UOM de Combustible,
Last Carbon Check,Último control de Carbono,
Wheels,Ruedas,
Doors,puertas,
last Odometer Value ,último valor del cuentakilómetros,
Service Detail,Detalle del servicio,
Hub Tracked Item,Artículo rastreado Hub,
Hub Node,Nodo del centro de actividades,
Image List,Lista de Omágenes,
Item Manager,Administración de artículos,
Hub User,Usuario de Hub,
Hub Password,Contraseña del concentrador,
Hub Users,Usuarios de Hub,
Marketplace Settings,Configuración del Mercado,
Disable Marketplace,Deshabilitar Marketplace,
Marketplace URL (to hide and update label),URL del mercado (para ocultar y actualizar la etiqueta),
Registered,Registrado,
Sync in Progress,Sincronización en Progreso,
Hub Seller Name,Nombre del vendedor de Hub,
Custom Data,Datos Personalizados,
Repay From Salary,Reembolso del Salario,
Regular Payment,Pago regular,
Loan Closure,Cierre de préstamo,
Rate of Interest (%) Yearly,Tasa de interés (%) Anual,
MAT-MSH-.YYYY.-,MAT-MSH-.YYYY.-,
Generate Schedule,Generar planificación,
Schedules,Programas,
Maintenance Schedule Detail,Detalles del calendario de mantenimiento,
Scheduled Date,Fecha prevista.,
Actual Date,Fecha Real,
Maintenance Schedule Item,Programa de mantenimiento de artículos,
Random,Aleatorio,
No of Visits,Número de visitas,
MAT-MVS-.YYYY.-,MAT-MVS-.YYYY.-,
Maintenance Date,Fecha de Mantenimiento,
Maintenance Time,Tiempo del Mantenimiento,
Completion Status,Estado de finalización,
Partially Completed,Parcialmente completado,
Fully Completed,Terminado completamente,
Unscheduled,Sin programación,
Breakdown,Desglose,
Purposes,Propósitos,
Customer Feedback,Comentarios de cliente,
Maintenance Visit Purpose,Propósito de Visita de Mantenimiento,
Work Done,Trabajo Realizado,
Against Document No,Contra el Documento No,
Against Document Detail No,Contra documento No.,
MFG-BLR-.YYYY.-,MFG-BLR-.YYYY.-,
Order Type,Tipo de orden,
Blanket Order Item,Artículo de Orden Combinado,
Ordered Quantity,Cantidad ordenada,
Item to be manufactured or repacked,Producto a manufacturar o re-empacar,
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Cantidad del producto obtenido después de la fabricación / empaquetado desde las cantidades determinadas de materia prima,
Set rate of sub-assembly item based on BOM,Fijar tipo de posición de submontaje basado en la lista de materiales,
Allow Alternative Item,Permitir Elemento Alternativo,
Item UOM,Unidad de medida (UdM) del producto,
Conversion Rate,Tasa de conversión,
Rate Of Materials Based On,Valor de materiales basado en,
With Operations,Con Operaciones,
Manage cost of operations,Administrar costo de las operaciones,
Transfer Material Against,Transferir material contra,
Routing,Enrutamiento,
Materials,Materiales,
Quality Inspection Required,Inspección de calidad requerida,
Quality Inspection Template,Plantilla de Inspección de Calidad,
Scrap,Desecho,
Scrap Items,Items de Desecho,
Operating Cost,Costo de Operación,
Raw Material Cost,Costo de materia prima,
Scrap Material Cost,Costo de Material de Desecho,
Operating Cost (Company Currency),Costo de funcionamiento (Divisa de la Compañia),
Raw Material Cost (Company Currency),Costo de materia prima (moneda de la empresa),
Scrap Material Cost(Company Currency),Costo de Material de Desecho (Moneda de la Compañia),
Total Cost,Coste total,
Total Cost (Company Currency),Costo total (moneda de la compañía),
Materials Required (Exploded),Materiales Necesarios (Despiece),
Exploded Items,Artículos explotados,
Show in Website,Mostrar en sitio web,
Item Image (if not slideshow),Imagen del producto (si no son diapositivas),
Thumbnail,Miniatura,
Website Specifications,Especificaciones del sitio web,
Show Items,Mostrar elementos,
Show Operations,Mostrar Operaciones,
Website Description,Descripción del Sitio Web,
BOM Explosion Item,Desplegar lista de materiales (LdM) del producto,
Qty Consumed Per Unit,Cantidad consumida por unidad,
Include Item In Manufacturing,Incluir artículo en fabricación,
BOM Item,Lista de materiales (LdM) del producto,
Item operation,Operación del artículo,
Rate & Amount,Tasa y Cantidad,
Basic Rate (Company Currency),Precio base (Divisa por defecto),
Scrap %,Desecho %,
Original Item,Artículo Original,
BOM Operation,Operación de la lista de materiales (LdM),
Operation Time ,Tiempo de operacion,
In minutes,En minutos,
Batch Size,Tamaño del lote,
Base Hour Rate(Company Currency),La tarifa básica de Hora (divisa de la Compañía),
Operating Cost(Company Currency),Costo de funcionamiento (Divisa de la Compañia),
BOM Scrap Item,BOM de Artículo  de Desguace,
Basic Amount (Company Currency),Importe Básico (divisa de la Compañía),
BOM Update Tool,Herramienta de actualización de Lista de Materiales (BOM),
"Replace a particular BOM in all other BOMs where it is used. It will replace the old BOM link, update cost and regenerate ""BOM Explosion Item"" table as per new BOM.\nIt also updates latest price in all the BOMs.","Reemplazar una lista de materiales determinada en todas las demás listas de materiales donde se utiliza. Reemplazará el enlace de la lista de materiales antigua, actualizará el coste y regenerará la tabla ""Posición de explosión de la lista de materiales"" según la nueva lista de materiales. También actualiza el precio más reciente en todas las listas de materiales.",
Replace BOM,Sustituir la Lista de Materiales (BOM),
Current BOM,Lista de materiales (LdM) actual,
The BOM which will be replaced,La lista de materiales que será sustituida,
The new BOM after replacement,Nueva lista de materiales después de la sustitución,
Replace,Reemplazar,
Update latest price in all BOMs,Actualizar el último precio en todas las listas de materiales,
BOM Website Item,BOM de artículo del sitio web,
BOM Website Operation,Operación de Página Web de lista de materiales,
Operation Time,Tiempo de Operación,
PO-JOB.#####,PO-JOB. #####,
Timing Detail,Detalle de Sincronización,
Time Logs,Gestión de tiempos,
Total Time in Mins,Tiempo total en minutos,
Operation ID,ID de operación,
Transferred Qty,Cantidad Transferida,
Job Started,Trabajo comenzó,
Started Time,Hora de inicio,
Current Time,Tiempo actual,
Job Card Item,Artículo de Tarjeta de Trabajo,
Job Card Time Log,Registro de tiempo de tarjeta de trabajo,
Time In Mins,Tiempo en Minutos,
Completed Qty,Cantidad completada,
Manufacturing Settings,Ajustes de Producción,
Raw Materials Consumption,Consumo de materias primas,
Allow Multiple Material Consumption,Permitir el Consumo de Material Múltiple,
Backflush Raw Materials Based On,Adquisición retroactiva de materia prima basada en,
Material Transferred for Manufacture,Material Transferido para Manufacturar,
Capacity Planning,Planificación de capacidad,
Disable Capacity Planning,Desactivar planificación de capacidad,
Allow Overtime,Permitir horas extraordinarias,
Allow Production on Holidays,Permitir producción en días festivos,
Capacity Planning For (Days),Planificación de capacidad para (Días),
Default Warehouses for Production,Almacenes predeterminados para producción,
Default Work In Progress Warehouse,Almacén predeterminado de trabajos en proceso,
Default Finished Goods Warehouse,Almacén predeterminado de productos terminados,
Default Scrap Warehouse,Almacén de chatarra predeterminado,
Overproduction Percentage For Sales Order,Porcentaje de Sobreproducción para Orden de Venta,
Overproduction Percentage For Work Order,Porcentaje de Sobreproducción para Orden de Trabajo,
Other Settings,Otros ajustes,
Update BOM Cost Automatically,Actualizar automáticamente el coste de la lista de materiales,
Material Request Plan Item,Artículo de Plan de Solicitud de Material,
Material Request Type,Tipo de Requisición,
Material Issue,Expedición de Material,
Customer Provided,Proporcionado por el cliente,
Minimum Order Quantity,Cantidad Mínima de Pedido,
Default Workstation,Estación de Trabajo por defecto,
Production Plan,Plan de Producción,
MFG-PP-.YYYY.-,MFG-PP-.YYYY.-,
Get Items From,Obtener artículos de,
Get Sales Orders,Obtener ordenes de venta,
Material Request Detail,Detalle de Solicitud de Material,
Get Material Request,Obtener Solicitud de materiales,
Material Requests,Solicitudes de Material,
Get Items For Work Order,Obtener artículos para la Órden de Trabajo,
Material Request Planning,Planificación de Solicitud de Material,
Include Non Stock Items,Incluir Elementos no Disponibles,
Include Subcontracted Items,Incluir Artículos Subcontratados,
Ignore Existing Projected Quantity,Ignorar la cantidad proyectada existente,
"To know more about projected quantity, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">click here</a>.","Para saber más sobre la cantidad proyectada, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">haga clic aquí</a> .",
Download Required Materials,Descargar materiales requeridos,
Get Raw Materials For Production,Obtener Materias Primas para Producción,
Total Planned Qty,Cantidad Total Planificada,
Total Produced Qty,Cantidad Total Producida,
Material Requested,Material Solicitado,
Production Plan Item,Plan de producción de producto,
Make Work Order for Sub Assembly Items,Hacer una orden de trabajo para los elementos del subconjunto,
"If enabled, system will create the work order for the exploded items against which BOM is available.","Si está habilitado, el sistema creará la orden de trabajo para los elementos explotados en los que BOM está disponible.",
Planned Start Date,Fecha prevista de inicio,
Quantity and Description,Cantidad y descripción,
material_request_item,material_request_item,
Product Bundle Item,Artículo del conjunto de productos,
Production Plan Material Request,Solicitud de Material del Plan de Producción,
Production Plan Sales Order,Plan de producción de ordenes de venta,
Sales Order Date,Fecha de las órdenes de venta,
Routing Name,Nombre de Enrutamiento,
MFG-WO-.YYYY.-,MFG-WO-.YYYY.-,
Item To Manufacture,Producto para Manufactura,
Material Transferred for Manufacturing,Material Transferido para la Producción,
Manufactured Qty,Cantidad Producida,
Use Multi-Level BOM,Utilizar Lista de Materiales (LdM)  Multi-Nivel,
Plan material for sub-assemblies,Plan de materiales para los subconjuntos,
Skip Material Transfer to WIP Warehouse,Saltar transferencia de material al almacén de WIP,
Check if material transfer entry is not required,Compruebe si la entrada de transferencia de material no es necesaria,
Backflush Raw Materials From Work-in-Progress Warehouse,Retroceda las materias primas del almacén de trabajo en progreso,
Update Consumed Material Cost In Project,Actualizar el costo del material consumido en el proyecto,
Warehouses,Almacenes,
This is a location where raw materials are available.,Esta es una ubicación donde hay materias primas disponibles.,
Work-in-Progress Warehouse,Almacén de trabajos en proceso,
This is a location where operations are executed.,Esta es una ubicación donde se ejecutan las operaciones.,
This is a location where final product stored.,Esta es una ubicación donde se almacena el producto final.,
Scrap Warehouse,Almacén de chatarra,
This is a location where scraped materials are stored.,Esta es una ubicación donde se almacenan los materiales raspados.,
Required Items,Artículos Requeridos,
Actual Start Date,Fecha de inicio real,
Planned End Date,Fecha de finalización planeada,
Actual End Date,Fecha Real de Finalización,
Operation Cost,Costo de operación,
Planned Operating Cost,Costos operativos planeados,
Actual Operating Cost,Costo de operación real,
Additional Operating Cost,Costos adicionales de operación,
Total Operating Cost,Costo Total de Funcionamiento,
Manufacture against Material Request,Fabricación contra Pedido de Material,
Work Order Item,Artículo de Órden de Trabajo,
Available Qty at Source Warehouse,Cantidad Disponible en Almacén Fuente,
Available Qty at WIP Warehouse,Cantidad Disponible en Almacén WIP,
Work Order Operation,Operación de Órden de Trabajo,
Operation Description,Descripción de la operación,
Operation completed for how many finished goods?,¿Operación completada para cuántos productos terminados?,
Work in Progress,Trabajo en proceso,
Estimated Time and Cost,Tiempo estimado y costo,
Planned Start Time,Hora prevista de inicio,
Planned End Time,Tiempo de finalización planeado,
in Minutes,En minutos,
Actual Time and Cost,Tiempo y costo reales,
Actual Start Time,Hora de inicio real,
Actual End Time,Hora final real,
Updated via 'Time Log',Actualizado a través de la gestión de tiempos,
Actual Operation Time,Hora de operación real,
in Minutes\nUpdated via 'Time Log',en minutos actualizado a través de bitácora (gestión de tiempo),
(Hour Rate / 60) * Actual Operation Time,(Tarifa por hora / 60) * Tiempo real de la operación,
Workstation Name,Nombre de la estación de trabajo,
Production Capacity,Capacidad de producción,
Operating Costs,Costos operativos,
Electricity Cost,Costos de Energía Eléctrica,
per hour,por hora,
Consumable Cost,Coste de consumibles,
Rent Cost,Costo de arrendamiento,
Wages,Salarios,
Wages per hour,Salarios por hora,
Net Hour Rate,Tasa neta por hora,
Workstation Working Hour,Horario de la estación de trabajo,
Certification Application,Solicitud de Certificación,
Name of Applicant,Nombre del Solicitante,
Certification Status,Estado de Certificación,
Yet to appear,Por aparecer,
Certified,Certificado,
Not Certified,No Certificado,
USD,USD,
INR,INR,
Certified Consultant,Consultor Certificado,
Name of Consultant,Nombre de la Consultora,
Certification Validity,Validez de Certificación,
Discuss ID,Discuss ID,
GitHub ID,ID de GitHub,
Non Profit Manager,Gerente sin Fines de Lucro,
Chapter Head,Jefe de Capítulo,
Meetup Embed HTML,Meetup Embed HTML,
chapters/chapter_name\nleave blank automatically set after saving chapter.,Los capítulos / nombre del capítulo dejan en blanco y se configuran automáticamente después de guardar el capítulo.,
Chapter Members,Miembros del Capítulo,
Members,Miembros,
Chapter Member,Miembro del Capítulo,
Website URL,URL del Sitio Web,
Leave Reason,Deja la Razón,
Donor Name,Nombre del Donante,
Donor Type,Tipo de Donante,
Withdrawn,Retirado,
Grant Application Details ,Detalles de Solicitud de Subvención,
Grant Description,Descripción de la Concesión,
Requested Amount,Monto Requerido,
Has any past Grant Record,Tiene algún registro de subvención anterior,
Show on Website,Mostrar en el Sitio Web,
Assessment  Mark (Out of 10),Marca de evaluación (de 10),
Assessment  Manager,Gerente de evaluación,
Email Notification Sent,Notificación de Correo Electrónico Enviada,
NPO-MEM-.YYYY.-,NPO-MEM-.YYYY.-,
Membership Expiry Date,Fecha de Vencimiento de Membresía,
Razorpay Details,Detalles de Razorpay,
Subscription ID,ID de suscripción,
Customer ID,Identificación del cliente,
Subscription Activated,Suscripción activada,
Subscription Start ,Inicio de suscripción,
Subscription End,Fin de suscripción,
Non Profit Member,Miembro sin Fines de Lucro,
Membership Status,Estado de Membresía,
Member Since,Miembro Desde,
Payment ID,ID de pago,
Membership Settings,Configuración de membresía,
Enable RazorPay For Memberships,Habilitar RazorPay para membresías,
RazorPay Settings,Configuración de RazorPay,
Billing Cycle,Ciclo de facturación,
Billing Frequency,Frecuencia de facturación,
"The number of billing cycles for which the customer should be charged. For example, if a customer is buying a 1-year membership that should be billed on a monthly basis, this value should be 12.","El número de ciclos de facturación por los que se le debe cobrar al cliente. Por ejemplo, si un cliente está comprando una membresía de 1 año que debe facturarse mensualmente, este valor debe ser 12.",
Razorpay Plan ID,ID del plan de Razorpay,
Volunteer Name,Nombre del Voluntario,
Volunteer Type,Tipo de Voluntario,
Availability and Skills,Disponibilidad y Habilidades,
Availability,Disponibilidad,
Weekends,Fines de Semana,
Availability Timeslot,Intervalo de tiempo de disponibilidad,
Morning,Mañana,
Afternoon,Tarde,
Evening,Noche,
Anytime,En cualquier momento,
Volunteer Skills,Habilidades del Voluntario,
Volunteer Skill,Habilidad del Voluntario,
Homepage,Página Principal,
Hero Section Based On,Sección de héroe basada en,
Homepage Section,Sección de la página de inicio,
Hero Section,Sección de héroe,
Tag Line,tag Line,
Company Tagline for website homepage,Lema de la empresa para la página de inicio de la página web,
Company Description for website homepage,Descripción de la empresa para la página de inicio página web,
Homepage Slideshow,Presentación de diapositivas,
"URL for ""All Products""",URL de &quot;Todos los productos&quot;,
Products to be shown on website homepage,Productos que se muestran en la página de inicio de la página web,
Homepage Featured Product,Producto destacado en página de inicio,
route,ruta,
Section Based On,Sección basada en,
Section Cards,Tarjetas de sección,
Number of Columns,Número de columnas,
Number of columns for this section. 3 cards will be shown per row if you select 3 columns.,Número de columnas para esta sección. Se mostrarán 3 cartas por fila si selecciona 3 columnas.,
Section HTML,HTML de sección,
Use this field to render any custom HTML in the section.,Use este campo para representar cualquier HTML personalizado en la sección.,
Section Order,Orden de sección,
"Order in which sections should appear. 0 is first, 1 is second and so on.","Orden en el que deben aparecer las secciones. 0 es primero, 1 es segundo y así sucesivamente.",
Homepage Section Card,Tarjeta de sección de página de inicio,
Subtitle,Subtitular,
Products Settings,Ajustes de Productos,
Home Page is Products,La página de inicio son los productos,
"If checked, the Home page will be the default Item Group for the website","Si se selecciona, la página de inicio será el grupo por defecto del artículo para el sitio web",
Show Availability Status,Mostrar Estado de Disponibilidad,
Product Page,Página del producto,
Products per Page,Productos por Pagina,
Enable Field Filters,Habilitar filtros de campo,
Item Fields,Campos de artículos,
Enable Attribute Filters,Habilitar filtros de atributos,
Attributes,Atributos,
Hide Variants,Ocultar variantes,
Website Attribute,Atributo del sitio web,
Attribute,Atributo,
Website Filter Field,Campo de filtro del sitio web,
Activity Cost,Costo de Actividad,
Billing Rate,Monto de facturación,
Costing Rate,Costo calculado,
title,título,
Projects User,Usuario de proyectos,
Default Costing Rate,Precio de costo predeterminado,
Default Billing Rate,Monto de facturación predeterminada,
Dependent Task,Tarea dependiente,
Project Type,Tipo de proyecto,
% Complete Method,% Método completado,
Task Completion,Completitud de Tarea,
Task Progress,Progreso de Tarea,
% Completed,% Completado,
From Template,De la plantilla,
Project will be accessible on the website to these users,Proyecto será accesible en la página web de estos usuarios,
Copied From,Copiado de,
Start and End Dates,Fechas de Inicio y Fin,
Actual Time in Hours (via Timesheet),Tiempo real (en horas),
Costing and Billing,Cálculo de Costos y Facturación,
Total Costing Amount (via Timesheet),Monto Total de Costos (a través de Partes de Horas),
Total Expense Claim (via Expense Claim),Total reembolso (Vía reembolsos de gastos),
Total Purchase Cost (via Purchase Invoice),Costo total de compra (vía facturas de compra),
Total Sales Amount (via Sales Order),Importe de Ventas Total (a través de Ordenes de Venta),
Total Billable Amount (via Timesheet),Monto Total Facturable (a través de Partes de Horas),
Total Billed Amount (via Sales Invoice),Importe Total Facturado (a través de Facturas de Ventas),
Total Consumed Material Cost (via Stock Entry),Costo total del Material Consumido (a través de la Entrada de Stock),
Gross Margin,Margen bruto,
Gross Margin %,Margen bruto %,
Monitor Progress,Monitorear el Progreso,
Collect Progress,Recoge el Progreso,
Frequency To Collect Progress,Frecuencia para Recoger el Progreso,
Twice Daily,Dos veces al día,
First Email,Primer Correo Electrónico,
Second Email,Segundo Correo Electrónico,
Time to send,Hora de Enviar,
Day to Send,Día para Enviar,
Message will be sent to the users to get their status on the Project,Se enviará un mensaje a los usuarios para conocer su estado en el Proyecto.,
Projects Manager,Gerente de Proyectos,
Project Template,Plantilla de proyecto,
Project Template Task,Tarea de plantilla de proyecto,
Begin On (Days),Comience el (días),
Duration (Days),Duración (Días),
Project Update,Actualización del Proyecto,
Project User,usuario proyecto,
View attachments,Ver Adjuntos,
Projects Settings,Configuración de Proyectos,
Ignore Workstation Time Overlap,Ignorar la Superposición de Tiempo de la Estación de Trabajo,
Ignore User Time Overlap,Ignorar Superposición de Tiempo del Usuario,
Ignore Employee Time Overlap,Ignorar la Superposición de Tiempo del Empleado,
Weight,Peso,
Parent Task,Tarea Padre,
Timeline,Cronograma,
Expected Time (in hours),Tiempo previsto (en horas),
% Progress,% Progreso,
Is Milestone,Es un Hito,
Task Description,Descripción de la tarea,
Dependencies,Dependencias,
Dependent Tasks,Tareas dependientes,
Depends on Tasks,Depende de Tareas,
Actual Start Date (via Timesheet),Fecha de inicio real (a través de hoja de horas),
Actual Time in Hours (via Timesheet),Tiempo real (en horas),
Actual End Date (via Timesheet),Fecha de finalización real (a través de hoja de horas),
Total Expense Claim (via Expense Claim),Total reembolso (Vía reembolso de gastos),
Review Date,Fecha de Revisión,
Closing Date,Fecha de cierre,
Task Depends On,Tarea depende de,
Task Type,Tipo de tarea,
TS-.YYYY.-,TS-.YYYY.-,
Employee Detail,Detalle de los Empleados,
Billing Details,Detalles de facturación,
Total Billable Hours,Total de Horas Facturables,
Total Billed Hours,Total de Horas Facturadas,
Total Costing Amount,Importe total del cálculo del coste,
Total Billable Amount,Monto Total Facturable,
Total Billed Amount,Monto total Facturado,
% Amount Billed,% importe facturado,
Hrs,Horas,
Costing Amount,Costo acumulado,
Corrective/Preventive,Correctivo / preventivo,
Corrective,Correctivo,
Preventive,Preventivo,
Resolution,Resolución,
Resolutions,Resoluciones,
Quality Action Resolution,Resolución de acción de calidad,
Quality Feedback Parameter,Parámetro de retroalimentación de calidad,
Quality Feedback Template Parameter,Parámetro de plantilla de comentarios de calidad,
Quality Goal,Objetivo de calidad,
Monitoring Frequency,Frecuencia de monitoreo,
Weekday,Día laborable,
Objectives,Objetivos,
Quality Goal Objective,Objetivo de calidad Objetivo,
Objective,Objetivo,
Agenda,Agenda,
Minutes,Minutos,
Quality Meeting Agenda,Agenda de reuniones de calidad,
Quality Meeting Minutes,Actas de reuniones de calidad,
Minute,Minuto,
Parent Procedure,Procedimiento para padres,
Processes,Procesos,
Quality Procedure Process,Proceso de procedimiento de calidad,
Process Description,Descripción del proceso,
Link existing Quality Procedure.,Enlace Procedimiento de calidad existente.,
Additional Information,Información Adicional,
Quality Review Objective,Objetivo de revisión de calidad,
DATEV Settings,Configuraciones de DATEV,
Regional,Regional,
Consultant ID,ID del consultor,
GST HSN Code,Código GST HSN,
HSN Code,Código HSN,
GST Settings,Configuración de GST,
GST Summary,Resumen de GST,
GSTIN Email Sent On,Se envía el correo electrónico de GSTIN,
GST Accounts,Cuentas de GST,
B2C Limit,Límite B2C,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Establezca el valor de factura para B2C. B2CL y B2CS calculados en base a este valor de factura.,
GSTR 3B Report,Informe GSTR 3B,
January,enero,
February,febrero,
March,marzo,
April,abril,
August,agosto,
September,septiembre,
October,octubre,
November,noviembre,
December,diciembre,
JSON Output,Salida JSON,
Invoices with no Place Of Supply,Facturas sin lugar de suministro,
Import Supplier Invoice,Factura de proveedor de importación,
Invoice Series,Serie de facturas,
Upload XML Invoices,Subir facturas XML,
Zip File,Archivo zip,
Import Invoices,Importar facturas,
Click on Import Invoices button once the zip file has been attached to the document. Any errors related to processing will be shown in the Error Log.,Haga clic en el botón Importar facturas una vez que el archivo zip se haya adjuntado al documento. Cualquier error relacionado con el procesamiento se mostrará en el Registro de errores.,
Lower Deduction Certificate,Certificado de deducción más baja,
Certificate Details,Detalles del certificado,
194A,194A,
194C,194C,
194D,194D,
194H,194H,
194I,194I,
194J,194J,
194LA,194LA,
194LBB,194LBB,
194LBC,194LBC,
Certificate No,Certificado no,
Deductee Details,Detalles del deducible,
PAN No,PAN No,
Validity Details,Detalles de validez,
Rate Of TDS As Per Certificate,Tasa de TDS según certificado,
Certificate Limit,Límite de certificado,
Invoice Series Prefix,Prefijo de la Serie de Facturas,
Active Menu,Menú Activo,
Restaurant Menu,Menú del Restaurante,
Price List (Auto created),Lista de Precios (Creada Automáticamente),
Restaurant Manager,Gerente del Restaurante,
Restaurant Menu Item,Elemento del Menú del Restaurante,
Restaurant Order Entry,Entrada de Orden de Restaurante,
Restaurant Table,Mesa de Restaurante,
Click Enter To Add,Haga clic en Entrar para Agregar,
Last Sales Invoice,Última Factura de Venta,
Current Order,Orden actual,
Restaurant Order Entry Item,Elemento de Entrada de Pedido de Restaurante,
Served,Servido,
Restaurant Reservation,Reserva de Restaurante,
Waitlisted,En Lista de Espera,
No Show,No Mostrar,
No of People,Nro de Personas,
Reservation Time,Tiempo de Reserva,
Reservation End Time,Hora de finalización de la Reserva,
No of Seats,Nro de Asientos,
Minimum Seating,Asientos Mínimos,
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Lleve un registro de las campañas de venta. Lleve un registro de conductores, Citas, pedidos de venta, etc de Campañas para medir retorno de la inversión.",
SAL-CAM-.YYYY.-,SAL-CAM-.YYYY.-,
Campaign Schedules,Horarios de campaña,
Buyer of Goods and Services.,Consumidor de productos y servicios.,
CUST-.YYYY.-,CUST-.YYYY.-,
Default Company Bank Account,Cuenta bancaria predeterminada de la empresa,
From Lead,Desde Iniciativa,
Account Manager,Gerente de cuentas,
Allow Sales Invoice Creation Without Sales Order,Permitir la creación de facturas de venta sin orden de venta,
Allow Sales Invoice Creation Without Delivery Note,Permitir la creación de facturas de venta sin nota de entrega,
Default Price List,Lista de precios por defecto,
Primary Address and Contact Detail,Dirección Principal y Detalle de Contacto,
"Select, to make the customer searchable with these fields","Seleccione, para que el usuario pueda buscar con estos campos",
Customer Primary Contact,Contacto Principal del Cliente,
"Reselect, if the chosen contact is edited after save","Vuelva a seleccionar, si el contacto elegido se edita después de guardar",
Customer Primary Address,Dirección Principal del Cliente,
"Reselect, if the chosen address is edited after save","Vuelva a seleccionar, si la dirección elegida se edita después de guardar",
Primary Address,Dirección Primaria,
Mention if non-standard receivable account,Indique si utiliza una cuenta por cobrar distinta a la predeterminada,
Credit Limit and Payment Terms,Límite de Crédito y Condiciones de Pago,
Additional information regarding the customer.,Información adicional referente al cliente.,
Sales Partner and Commission,Comisiones y socios de ventas,
Commission Rate,Comisión de ventas,
Sales Team Details,Detalles del equipo de ventas.,
Customer POS id,ID de POS del cliente,
Customer Credit Limit,Límite de crédito del cliente,
Bypass Credit Limit Check at Sales Order,Evitar el control de límite de crédito en la Orden de Venta,
Industry Type,Tipo de industria,
MAT-INS-.YYYY.-,MAT-INS-.YYYY.-,
Installation Date,Fecha de Instalación,
Installation Time,Tiempo de Instalación,
Installation Note Item,Nota de instalación de elementos,
Installed Qty,Cantidad Instalada,
Lead Source,Fuente de de la Iniciativa,
Period Start Date,Fecha de Inicio del Período,
Period End Date,Fecha de Finalización del Período,
Cashier,Cajero,
Difference,Diferencia,
Modes of Payment,Modos de Pago,
Linked Invoices,Facturas Vinculadas,
POS Closing Voucher Details,Detalles del cupón de cierre de POS,
Collected Amount,Cantidad Cobrada,
Expected Amount,Monto Esperado,
POS Closing Voucher Invoices,Facturas de cupones de cierre de POS,
Quantity of Items,Cantidad de Artículos,
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. \n\nThe package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".\n\nFor Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Product Bundle Item.\n\nNote: BOM = Bill of Materials","Grupo Global de la ** ** Los productos que en otro artículo ** **. Esto es útil si usted está empaquetando unas determinadas Artículos ** ** en un paquete y mantener un balance de los ** Los productos envasados ** y no el agregado ** ** Artículo. El paquete ** ** Artículo tendrá &quot;Es el archivo de artículos&quot; como &quot;No&quot; y &quot;¿Es artículo de ventas&quot; como &quot;Sí&quot;. Por ejemplo: Si usted está vendiendo ordenadores portátiles y Mochilas por separado y tienen un precio especial si el cliente compra a la vez, entonces el ordenador portátil + Mochila será un nuevo paquete de productos de artículos. Nota: BOM = Lista de materiales",
Parent Item,Producto padre / principal,
List items that form the package.,Lista de tareas que forman el paquete .,
SAL-QTN-.YYYY.-,SAL-QTN-.YYYY.-,
Quotation To,Presupuesto para,
Rate at which customer's currency is converted to company's base currency,Tasa por la cual la divisa es convertida como moneda base de la compañía,
Rate at which Price list currency is converted to company's base currency,Tasa por la cual la lista de precios es convertida como base de la compañía,
Additional Discount and Coupon Code,Descuento adicional y código de cupón,
Referral Sales Partner,Socio de ventas de referencia,
In Words will be visible once you save the Quotation.,'En palabras' será visible una vez guarde el Presupuesto,
Term Details,Detalles de términos y condiciones,
Quotation Item,Ítem de Presupuesto,
Against Doctype,Contra 'DocType',
Against Docname,Contra Docname,
Additional Notes,Notas adicionales,
SAL-ORD-.YYYY.-,SAL-ORD-.YYYY.-,
Skip Delivery Note,Saltar nota de entrega,
In Words will be visible once you save the Sales Order.,En palabras serán visibles una vez que guarde el pedido de ventas.,
Track this Sales Order against any Project,Monitorear esta órden de venta sobre cualquier proyecto,
Billing and Delivery Status,Estado de facturación y entrega,
Not Delivered,No entregado,
Fully Delivered,Entregado completamente,
Partly Delivered,Parcialmente entregado,
Not Applicable,No aplicable,
%  Delivered,% Entregado,
% of materials delivered against this Sales Order,% de materiales entregados para esta orden de venta,
% of materials billed against this Sales Order,% de materiales facturados contra esta orden de venta,
Not Billed,No facturado,
Fully Billed,Totalmente Facturado,
Partly Billed,Parcialmente facturado,
Ensure Delivery Based on Produced Serial No,Garantizar la entrega en función del número de serie producido,
Supplier delivers to Customer,Proveedor entrega al Cliente,
Delivery Warehouse,Almacén de entrega,
Planned Quantity,Cantidad planificada,
For Production,Por producción,
Work Order Qty,Cantidad de Órdenes de Trabajo,
Produced Quantity,Cantidad Producida,
Used for Production Plan,Se utiliza para el plan de producción,
Sales Partner Type,Tipo de Socio de Ventas,
Contact No.,Contacto No.,
Contribution (%),Margen (%),
Contribution to Net Total,Contribución neta total,
Selling Settings,Configuración de ventas,
Settings for Selling Module,Ajustes para módulo de ventas,
Customer Naming By,Ordenar cliente por,
Campaign Naming By,Nombrar campañas por,
Default Customer Group,Categoría de cliente predeterminada,
Default Territory,Territorio predeterminado,
Close Opportunity After Days,Cerrar Oportunidad Después Días,
Default Quotation Validity Days,Días de Validez de Cotizaciones Predeterminados,
Sales Update Frequency,Frecuencia de Actualización de Ventas,
Each Transaction,Cada Transacción,
SMS Center,Centro SMS,
Send To,Enviar a,
All Contact,Todos los Contactos,
All Customer Contact,Todos Contactos de Clientes,
All Supplier Contact,Todos Contactos de Proveedores,
All Sales Partner Contact,Listado de todos los socios de ventas,
All Lead (Open),Todas las Oportunidades (Abiertas),
All Employee (Active),Todos los Empleados (Activos),
All Sales Person,Todos los vendedores,
Create Receiver List,Crear Lista de Receptores,
Receiver List,Lista de receptores,
Messages greater than 160 characters will be split into multiple messages,Los mensajes con más de 160 caracteres se dividirá en varios envios,
Total Characters,Total Caracteres,
Total Message(s),Total Mensage(s),
Authorization Control,Control de Autorización,
Authorization Rule,Regla de Autorización,
Average Discount,Descuento Promedio,
Customerwise Discount,Descuento de Cliente,
Itemwise Discount,Descuento de Producto,
Customer or Item,Cliente o artículo,
Customer / Item Name,Cliente / Nombre de Artículo,
Authorized Value,Valor Autorizado,
Applicable To (Role),Aplicable a (Rol),
Applicable To (Employee),Aplicable a ( Empleado ),
Applicable To (User),Aplicable a (Usuario),
Applicable To (Designation),Aplicables a (Puesto),
Approving Role (above authorized value),Aprobar Rol (por encima del valor autorizado),
Approving User  (above authorized value),Aprobar usuario (por encima del valor autorizado),
Brand Defaults,Valores predeterminados de marca,
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Entidad Legal / Subsidiario con un Catalogo de Cuentas separado que pertenece a la Organización.,
Change Abbreviation,Cambiar abreviación,
Parent Company,Empresa Matriz,
Default Values,Valores predeterminados,
Default Holiday List,Lista de vacaciones / festividades predeterminadas,
Default Selling Terms,Términos de venta predeterminados,
Default Buying Terms,Términos de compra predeterminados,
Create Chart Of Accounts Based On,Crear plan de cuentas basado en,
Standard Template,Plantilla estándar,
Existing Company,Empresa existente,
Chart Of Accounts Template,Plantilla del catálogo de cuentas,
Existing Company ,Compañía existente,
Date of Establishment,Fecha de Fundación,
Sales Settings,Configuraciones de ventas,
Monthly Sales Target,Objetivo Mensual de Ventas,
Sales Monthly History,Historial Mensual de Ventas,
Transactions Annual History,Historial Anual de Transacciones,
Total Monthly Sales,Total de Ventas Mensuales,
Default Cash Account,Cuenta de efectivo por defecto,
Default Receivable Account,Cuenta por cobrar por defecto,
Round Off Cost Center,Centro de costos por defecto (redondeo),
Discount Allowed Account,Cuenta de descuento permitida,
Discount Received Account,Cuenta de descuento recibida,
Exchange Gain / Loss Account,Cuenta de Ganancias / Pérdidas en Cambio,
Unrealized Exchange Gain/Loss Account,Cuenta de Ganancia / Pérdida de Canje no Realizada,
Allow Account Creation Against Child Company,Permitir creación de cuenta contra empresa infantil,
Default Payable Account,Cuenta por pagar por defecto,
Default Employee Advance Account,Cuenta Predeterminada de Anticipo de Empleado,
Default Cost of Goods Sold Account,Cuenta de costos (venta) por defecto,
Default Income Account,Cuenta de ingresos por defecto,
Default Deferred Revenue Account,Cuenta de Ingresos Diferidos Predeterminada,
Default Deferred Expense Account,Cuenta de Gastos Diferidos Predeterminada,
Default Payroll Payable Account,La nómina predeterminada de la cuenta por pagar,
Default Expense Claim Payable Account,Cuenta Pagadera por Reclamación de Gastos Predeterminada,
Stock Settings,Configuración de inventarios,
Enable Perpetual Inventory,Habilitar Inventario Perpetuo,
Default Inventory Account,Cuenta de Inventario Predeterminada,
Stock Adjustment Account,Cuenta de ajuste de existencias,
Fixed Asset Depreciation Settings,Configuración de Depreciación de los Activos Fijos,
Series for Asset Depreciation Entry (Journal Entry),Series para la Entrada de Depreciación de Activos (Entrada de Diario),
Gain/Loss Account on Asset Disposal,Cuenta de ganancias/pérdidas por enajenación de activos fijos,
Asset Depreciation Cost Center,Centro de la amortización del coste de los activos,
Budget Detail,Detalle del Presupuesto,
Exception Budget Approver Role,Rol de aprobación de presupuesto de excepción,
Company Info,Información de la compañía,
For reference only.,Sólo para referencia.,
Company Logo,Logo de la Compañía,
Date of Incorporation,Fecha de Incorporación,
Date of Commencement,Fecha de Comienzo,
Phone No,Teléfono No.,
Company Description,Descripción de la Compañía,
Registration Details,Detalles de registro,
Company registration numbers for your reference. Tax numbers etc.,"Los números de registro de la compañía para su referencia. Números fiscales, etc",
Delete Company Transactions,Eliminar las transacciones de la compañía,
Currency Exchange,Cambio de Divisas,
Specify Exchange Rate to convert one currency into another,Especificar el tipo de cambio para convertir una moneda a otra,
From Currency,Desde Moneda,
To Currency,A moneda,
For Buying,Por Comprar,
For Selling,Para la Venta,
Customer Group Name,Nombre de la categoría de cliente,
Parent Customer Group,Categoría principal de cliente,
Only leaf nodes are allowed in transaction,Sólo las sub-cuentas son permitidas en una transacción,
Mention if non-standard receivable account applicable,Indique si una cuenta por cobrar no estándar es  aplicable,
Credit Limits,Límites de crédito,
Email Digest,Boletín por correo electrónico,
Send regular summary reports via Email.,Enviar informes resumidos periódicamente por correo electrónico.,
Email Digest Settings,Configuración del boletín de correo electrónico,
How frequently?,¿Con qué frecuencia?,
Next email will be sent on:,El siguiente correo electrónico será enviado el:,
Note: Email will not be sent to disabled users,Nota: El correo electrónico no se enviará a los usuarios deshabilitados,
Profit & Loss,Perdidas & Ganancias,
New Income,Nuevo Ingreso,
New Expenses,Los nuevos gastos,
Annual Income,Ingresos anuales,
Annual Expenses,Gastos Anuales,
Bank Balance,Saldo Bancario,
Bank Credit Balance,Saldo de crédito bancario,
Receivables,Cuentas por cobrar,
Payables,Cuentas por pagar,
Sales Orders to Bill,Órdenes de Ventas a Facturar,
Purchase Orders to Bill,Órdenes de compra a Bill,
New Sales Orders,Nueva orden de venta (OV),
New Purchase Orders,Nueva órdén de compra,
Sales Orders to Deliver,Órdenes de Ventas para Enviar,
Purchase Orders to Receive,Órdenes de compra para recibir,
New Purchase Invoice,Nueva factura de compra,
New Quotations,Nuevas Cotizaciones,
Open Quotations,Cotizaciones Abiertas,
Open Issues,Problemas abiertos,
Open Projects,Proyectos abiertos,
Purchase Orders Items Overdue,Órdenes de compra Artículos vencidos,
Upcoming Calendar Events,Próximos eventos del calendario,
Open To Do,Abierto para hacer,
Add Quote,Añadir Cita,
Global Defaults,Predeterminados globales,
Default Company,Compañía predeterminada,
Current Fiscal Year,Año fiscal actual,
Default Distance Unit,Unidad de distancia predeterminada,
Hide Currency Symbol,Ocultar el símbolo de moneda,
Do not show any symbol like $ etc next to currencies.,No volver a mostrar cualquier símbolo como $ u otro junto a las monedas.,
"If disable, 'Rounded Total' field will not be visible in any transaction","si es desactivado,  el campo 'Total redondeado' no será visible en ninguna transacción",
Disable In Words,Desactivar en palabras,
"If disable, 'In Words' field will not be visible in any transaction","Si se desactiva, el campo 'En Palabras' no será visible en ninguna transacción.",
Item Classification,Clasificación de Producto,
General Settings,Configuración General,
Item Group Name,Nombre del grupo de productos,
Parent Item Group,Grupo principal de productos,
Item Group Defaults,Valores predeterminados del grupo de artículos,
Item Tax,Impuestos del Producto,
Check this if you want to show in website,Seleccione esta opción si desea mostrarlo en el sitio web,
Show this slideshow at the top of the page,Mostrar esta presentación de diapositivas en la parte superior de la página,
HTML / Banner that will show on the top of product list.,HTML / Banner que aparecerá en la parte superior de la lista de productos.,
Set prefix for numbering series on your transactions,Establezca los prefijos de las numeraciones en sus transacciones,
Setup Series,Configurar secuencias,
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,
Batch Item Expiry Status,Estado de Caducidad de Lote de Productos,
Batch-Wise Balance History,Historial de Saldo por Lotes,
BOM Explorer,BOM Explorer,
BOM Search,Buscar listas de materiales (LdM),
BOM Stock Calculated,BOM Stock Calculado,
BOM Variance Report,Informe de varianza BOM,
Campaign Efficiency,Eficiencia de la Campaña,
Cash Flow,Flujo de fondos,
Completed Work Orders,Órdenes de Trabajo completadas,
To Produce,Producir,
Produced,Producido,
Consolidated Financial Statement,Estado Financiero Consolidado,
Course wise Assessment Report,Informe de Evaluación del Curso,
Customer Acquisition and Loyalty,Compras y Lealtad de Clientes,
Customer Credit Balance,Saldo de Clientes,
Customer Ledger Summary,Resumen del Libro mayor de clientes,
Customer-wise Item Price,Precio del artículo sabio para el cliente,
Customers Without Any Sales Transactions,Clientes sin ninguna Transacción de Ventas,
Daily Timesheet Summary,Resumen Diario de Horas,
DATEV,DATEV,
Delayed Item Report,Informe de artículo retrasado,
Delayed Order Report,Informe de pedido retrasado,
Delivered Items To Be Billed,Envios por facturar,
Delivery Note Trends,Evolución de las notas de entrega,
Electronic Invoice Register,Registro Electrónico de Facturas,
Employee Billing Summary,Resumen de facturación de empleados,
Employee Birthday,Cumpleaños del empleado,
Employee Information,Información del empleado,
Employee Leave Balance,Balance de ausencias de empleado,
Employee Leave Balance Summary,Resumen de saldo de licencia de empleado,
Eway Bill,Eway Bill,
Expiring Memberships,Membresías Expiradas,
Fichier des Ecritures Comptables [FEC],Fichier des Ecritures Comptables [FEC],
Final Assessment Grades,Grados de Evaluación Final,
Fixed Asset Register,Registro de activos fijos,
Gross and Net Profit Report,Informe de ganancias brutas y netas,
GST Itemised Purchase Register,Registro detallado de la TPS,
GST Itemised Sales Register,Registro detallado de ventas de GST,
GST Purchase Register,Registro de Compra de TPS,
GST Sales Register,Registro de ventas de GST,
GSTR-1,GSTR-1,
GSTR-2,GSTR-2,
Hotel Room Occupancy,Ocupación de la Habitación del Hotel,
HSN-wise-summary of outward supplies,HSN-wise-sumario de los suministros exteriores,
Inactive Customers,Clientes Inactivos,
Inactive Sales Items,Artículos de venta inactivos,
IRS 1099,IRS 1099,
Issued Items Against Work Order,Artículos Emitidos contra Orden de Trabajo,
Projected Quantity as Source,Cantidad proyectada como Fuente,
Item Balance (Simple),Balance del Artículo (Simple),
Item Price Stock,Artículo Stock de Precios,
Item Prices,Precios de los productos,
Item Shortage Report,Reporte de productos con stock bajo,
Item Variant Details,Detalles de la Variante del Artículo,
Item-wise Price List Rate,Detalle del listado de precios,
Item-wise Purchase History,Historial de Compras,
Item-wise Purchase Register,Detalle de compras,
Item-wise Sales History,Detalle de las Ventas,
Item-wise Sales Register,Detalle de Ventas,
Items To Be Requested,Solicitud de Productos,
Reserved,Reservado,
Itemwise Recommended Reorder Level,Nivel recomendado de reabastecimiento de producto,
Lead Details,Detalle de Iniciativas,
Lead Owner Efficiency,Eficiencia del Propietario de la Iniciativa,
Lost Opportunity,Oportunidad perdida,
Maintenance Schedules,Programas de Mantenimiento,
Material Requests for which Supplier Quotations are not created,Solicitudes de Material para los que no hay Presupuestos de Proveedor creados,
Open Work Orders,Abrir Órdenes de Trabajo,
Qty to Deliver,Cantidad a entregar,
Patient Appointment Analytics,Análisis de citas de pacientes,
Payment Period Based On Invoice Date,Periodos de pago según facturas,
Pending SO Items For Purchase Request,A la espera de la orden de compra (OC) para crear solicitud de compra (SC),
Procurement Tracker,Rastreador de compras,
Product Bundle Balance,Balance de paquete de productos,
Production Analytics,Análisis de Producción,
Profit and Loss Statement,Cuenta de pérdidas y ganancias,
Profitability Analysis,Cuenta de Resultados,
Project Billing Summary,Resumen de facturación del proyecto,
Project wise Stock Tracking,Seguimiento de stock por proyecto,
Project wise Stock Tracking ,Seguimiento preciso del stock--,
Prospects Engaged But Not Converted,Perspectivas comprometidas pero no convertidas,
Purchase Analytics,Analítico de compras,
Purchase Invoice Trends,Tendencias de compras,
Qty to Receive,Cantidad a Recibir,
Received Qty Amount,Cantidad recibida Cantidad,
Billed Qty,Cantidad facturada,
Purchase Order Trends,Tendencias de ordenes de compra,
Purchase Receipt Trends,Tendencias de recibos de compra,
Purchase Register,Registro de compras,
Quotation Trends,Tendencias de Presupuestos,
Received Items To Be Billed,Recepciones por facturar,
Qty to Order,Cantidad a Solicitar,
Requested Items To Be Transferred,Artículos solicitados para ser transferidos,
Qty to Transfer,Cantidad a Transferir,
Sales Analytics,Análisis de ventas,
Sales Invoice Trends,Tendencias de ventas,
Sales Order Trends,Tendencias de ordenes de ventas,
Sales Partner Commission Summary,Resumen de la comisión del socio de ventas,
Sales Partner Target Variance based on Item Group,Variación objetivo del socio de ventas según el grupo de artículos,
Sales Partner Transaction Summary,Resumen de transacciones del socio de ventas,
Sales Partners Commission,Comisiones de socios de ventas,
Invoiced Amount (Exclusive Tax),Importe facturado (impuesto exclusivo),
Average Commission Rate,Tasa de Comisión Promedio,
Sales Payment Summary,Resumen de Pago de Ventas,
Sales Person Commission Summary,Resumen de la Comisión de Personas de Ventas,
Sales Person Target Variance Based On Item Group,Varianza objetivo del vendedor basada en el grupo de artículos,
Sales Person-wise Transaction Summary,Resumen de transacciones por vendedor,
Sales Register,Registro de ventas,
Serial No Service Contract Expiry,Número de serie de expiracion del contrato de servicios,
Serial No Status,Estado del número serie,
Serial No Warranty Expiry,Garantía de caducidad del numero de serie,
Stock Ageing,Antigüedad de existencias,
Stock and Account Value Comparison,Comparación de acciones y valor de cuenta,
Stock Projected Qty,Cantidad de inventario proyectado,
Student and Guardian Contact Details,Detalles de Contacto de Alumno y Tutor,
Student Batch-Wise Attendance,Asistencia de Estudiantes por Lote,
Student Fee Collection,Cobro del Cuotas del Estudiante,
Student Monthly Attendance Sheet,Hoja de Asistencia Mensual de Estudiante,
Subcontracted Item To Be Received,Artículo subcontratado a recibir,
Subcontracted Raw Materials To Be Transferred,Materias primas subcontratadas para ser transferidas,
Supplier Ledger Summary,Resumen del libro mayor de proveedores,
Supplier-Wise Sales Analytics,Análisis de ventas (Proveedores),
Support Hour Distribution,Soporte de distribución de horas,
TDS Computation Summary,Resumen de Computación TDS,
TDS Payable Monthly,TDS pagables Mensualmente,
Territory Target Variance Based On Item Group,Variación objetivo del territorio basada en el grupo de artículos,
Territory-wise Sales,Ventas por territorio,
Total Stock Summary,Resumen de stock total,
Trial Balance,Balanza de Comprobación,
Trial Balance (Simple),Balance de Sumas y Saldos (Simple),
Trial Balance for Party,Balance de Terceros,
Warehouse wise Item Balance Age and Value,Balance de Edad y Valor de Item por Almacén,
Work Order Stock Report,Informe de stock de Órden de Trabajo,
Work Orders in Progress,Órdenes de Trabajo en progreso,
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},
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.-,
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,
Feedback By,Comentarios de,
Manufacturing Section,Sección de fabricación,
"By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ","De forma predeterminada, el nombre del cliente se establece según el nombre completo introducido. Si desea que los Clientes sean nombrados por un",
Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,Configure la lista de precios predeterminada al crear una nueva transacción de ventas. Los precios de los artículos se obtendrán de esta lista de precios.,
"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice or Delivery Note without creating a Sales Order first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Sales Order' checkbox in the Customer master.","Si esta opción está configurada como &#39;Sí&#39;, ERPNext le impedirá crear una factura de venta o una nota de entrega sin crear primero una orden de venta. Esta configuración se puede anular para un cliente en particular activando la casilla de verificación &#39;Permitir la creación de facturas de venta sin orden de venta&#39; en el maestro de clientes.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice without creating a Delivery Note first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Delivery Note' checkbox in the Customer master.","Si esta opción está configurada como &#39;Sí&#39;, ERPNext le impedirá crear una Factura de venta sin crear primero una Nota de entrega. Esta configuración se puede anular para un cliente en particular activando la casilla de verificación &#39;Permitir la creación de facturas de venta sin nota de entrega&#39; en el maestro de clientes.",
Default Warehouse for Sales Return,Almacén predeterminado para devolución de ventas,
Default In Transit Warehouse,Almacén de tránsito predeterminado,
Enable Perpetual Inventory For Non Stock Items,Habilitar el inventario permanente para artículos que no están en stock,
HRA Settings,Configuración de HRA,
Basic Component,Componente básico,
HRA Component,Componente HRA,
Arrear Component,Componente atrasado,
Please enter the company name to confirm,Ingrese el nombre de la empresa para confirmar,
Quotation Lost Reason Detail,Detalle de motivo de pérdida de cotización,
Enable Variants,Habilitar variantes,
Save Quotations as Draft,Guardar cotizaciones como borrador,
MAT-DN-RET-.YYYY.-,MAT-DN-RET-.YYYY.-,
Please Select a Customer,Seleccione un cliente,
Against Delivery Note Item,Contra el artículo de la nota de entrega,
Is Non GST ,No es GST,
Image Description,Descripción de la imagen,
Transfer Status,Estado de transferencia,
MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
Track this Purchase Receipt against any Project,Seguimiento de este recibo de compra contra cualquier proyecto,
Please Select a Supplier,Seleccione un proveedor,
Add to Transit,Agregar al tránsito,
Set Basic Rate Manually,Establecer tarifa básica manualmente,
"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ","De forma predeterminada, el Nombre del artículo se establece según el Código de artículo ingresado. Si desea que los elementos tengan un nombre",
Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Establecer un almacén predeterminado para transacciones de inventario. Esto se obtendrá en el Almacén predeterminado en el maestro de artículos.,
"This will allow stock items to be displayed in negative values. Using this option depends on your use case. With this option unchecked, the system warns before obstructing a transaction that is causing negative stock.","Esto permitirá que los artículos de stock se muestren en valores negativos. El uso de esta opción depende de su caso de uso. Con esta opción desmarcada, el sistema advierte antes de obstruir una transacción que está provocando un stock negativo.",
Choose between FIFO and Moving Average Valuation Methods. Click ,Elija entre los métodos de valoración FIFO y de media móvil. Hacer clic,
 to know more about them.,para saber más sobre ellos.,
Show 'Scan Barcode' field above every child table to insert Items with ease.,Muestre el campo &#39;Escanear código de barras&#39; encima de cada tabla secundaria para insertar elementos con facilidad.,
"Serial numbers for stock will be set automatically based on the Items entered based on first in first out in transactions like Purchase/Sales Invoices, Delivery Notes, etc.","Los números de serie para las existencias se establecerán automáticamente en función de los artículos ingresados según el primero en entrar, primero en salir en transacciones como facturas de compra / venta, notas de entrega, etc.",
"If blank, parent Warehouse Account or company default will be considered in transactions","Si está en blanco, la cuenta de almacén principal o el incumplimiento de la empresa se considerarán en las transacciones",
Service Level Agreement Details,Detalles del acuerdo de nivel de servicio,
Service Level Agreement Status,Estado del acuerdo de nivel de servicio,
On Hold Since,En espera desde,
Total Hold Time,Tiempo total de espera,
Response Details,Detalles de respuesta,
Average Response Time,Tiempo promedio de respuesta,
User Resolution Time,Tiempo de resolución de usuario,
SLA is on hold since {0},El SLA está en espera desde {0},
Pause SLA On Status,Pausar SLA en estado,
Pause SLA On,Pausar SLA activado,
Greetings Section,Sección de saludos,
Greeting Title,Título de saludo,
Greeting Subtitle,Subtítulo de saludo,
Youtube ID,ID de Youtube,
Youtube Statistics,Estadísticas de Youtube,
Views,Puntos de vista,
Dislikes,No me gusta,
Video Settings,Ajustes de video,
Enable YouTube Tracking,Habilitar el seguimiento de YouTube,
30 mins,30 minutos,
1 hr,1 hora,
6 hrs,6 horas,
Patient Progress,Progreso del paciente,
Targetted,Destinado,
Score Obtained,Puntuación obtenida,
Sessions,Sesiones,
Average Score,Puntuación media,
Select Assessment Template,Seleccionar plantilla de evaluación,
 out of ,fuera de,
Select Assessment Parameter,Seleccionar parámetro de evaluación,
Gender: ,Género:,
Contact: ,Contacto:,
Total Therapy Sessions: ,Sesiones de terapia totales:,
Monthly Therapy Sessions: ,Sesiones de terapia mensuales:,
Patient Profile,Perfil del paciente,
Point Of Sale,Punto de venta,
Email sent successfully.,Correo electrónico enviado correctamente.,
Search by invoice id or customer name,Buscar por ID de factura o nombre de cliente,
Invoice Status,Estado de la factura,
Filter by invoice status,Filtrar por estado de factura,
Select item group,Seleccionar grupo de artículos,
No items found. Scan barcode again.,No se encontraron artículos. Escanee el código de barras nuevamente.,
"Search by customer name, phone, email.","Busque por nombre de cliente, teléfono, correo electrónico.",
Enter discount percentage.,Ingrese el porcentaje de descuento.,
Discount cannot be greater than 100%,El descuento no puede ser superior al 100%,
Enter customer's email,Ingrese el correo electrónico del cliente,
Enter customer's phone number,Ingrese el número de teléfono del cliente,
Customer contact updated successfully.,El contacto del cliente se actualizó correctamente.,
Item will be removed since no serial / batch no selected.,El artículo se eliminará ya que no se seleccionó ningún número de serie / lote.,
Discount (%),Descuento (%),
You cannot submit the order without payment.,No puede enviar el pedido sin pago.,
You cannot submit empty order.,No puede enviar un pedido vacío.,
To Be Paid,A pagar,
Create POS Opening Entry,Crear entrada de apertura de punto de venta,
Please add Mode of payments and opening balance details.,Agregue el modo de pago y los detalles del saldo inicial.,
Toggle Recent Orders,Alternar pedidos recientes,
Save as Draft,Guardar como borrador,
You must add atleast one item to save it as draft.,Debe agregar al menos un elemento para guardarlo como borrador.,
There was an error saving the document.,Hubo un error al guardar el documento.,
You must select a customer before adding an item.,Debe seleccionar un cliente antes de agregar un artículo.,
Please Select a Company,Seleccione una empresa,
Active Leads,Leads activos,
Please Select a Company.,Seleccione una empresa.,
BOM Operations Time,Tiempo de operaciones de la lista de materiales,
BOM ID,ID de lista de materiales,
BOM Item Code,Código de artículo de lista de materiales,
Time (In Mins),Tiempo (en minutos),
Sub-assembly BOM Count,Recuento de listas de materiales de subensamblaje,
View Type,Tipo de vista,
Total Delivered Amount,Importe total entregado,
Downtime Analysis,Análisis de tiempo de inactividad,
Machine,Máquina,
Downtime (In Hours),Tiempo de inactividad (en horas),
Employee Analytics,Análisis de empleados,
"""From date"" can not be greater than or equal to ""To date""",&quot;Desde la fecha&quot; no puede ser mayor o igual que &quot;Hasta la fecha&quot;,
Exponential Smoothing Forecasting,Pronóstico de suavizado exponencial,
First Response Time for Issues,Tiempo de primera respuesta para problemas,
First Response Time for Opportunity,Tiempo de primera respuesta para la oportunidad,
Depreciatied Amount,Monto depreciado,
Period Based On,Periodo basado en,
Date Based On,Fecha basada en,
{0} and {1} are mandatory,{0} y {1} son obligatorios,
Consider Accounting Dimensions,Considere las dimensiones contables,
Reserved Quantity for Production,Cantidad reservada para producción,
Projected Quantity,Cantidad proyectada,
 Total Sales Amount,Monto total de ventas,
Job Card Summary,Resumen de la tarjeta de trabajo,
Id,Carné de identidad,
Time Required (In Mins),Tiempo requerido (en minutos),
From Posting Date,Desde la fecha de publicación,
To Posting Date,Hasta la fecha de publicación,
No records found,No se encontraron registros,
Customer/Lead Name,Nombre del cliente / cliente potencial,
Production Planning Report,Informe de planificación de producción,
Order Qty,Cantidad,
Raw Material Code,Código de materia prima,
Raw Material Name,Nombre de la materia prima,
Allotted Qty,Cantidad asignada,
Expected Arrival Date,Fecha prevista de llegada,
Arrival Quantity,Cantidad de llegada,
Raw Material Warehouse,Almacén de materia prima,
Order By,Ordenar por,
Include Sub-assembly Raw Materials,Incluir materias primas de subensamblaje,
Program wise Fee Collection,Cobro de tarifas por programa,
Fees Collected,Tarifas cobradas,
Project Summary,Resumen del proyecto,
Total Tasks,Tareas totales,
Tasks Completed,Tareas completadas,
Tasks Overdue,Tareas vencidas,
Completion,Terminación,
Purchase Order Analysis,Análisis de órdenes de compra,
From and To Dates are required.,Las fechas desde y hasta son obligatorias.,
To Date cannot be before From Date.,Hasta la fecha no puede ser anterior a Desde la fecha.,
Qty to Bill,Cantidad a facturar,
Group by Purchase Order,Agrupar por orden de compra,
 Purchase Value,Valor de la compra,
Total Received Amount,Monto total recibido,
Quality Inspection Summary,Resumen de inspección de calidad,
 Quoted Amount,Monto cotizado,
Lead Time (Days),Plazo de ejecución (días),
Include Expired,Incluir caducado,
Requested Items to Order and Receive,Artículos solicitados para ordenar y recibir,
Sales Order Analysis,Análisis de órdenes de venta,
Amount Delivered,Cantidad entregada,
Delay (in Days),Retraso (en días),
Group by Sales Order,Agrupar por orden de venta,
 Sales Value,Valor de las ventas,
Stock Qty vs Serial No Count,Cantidad de stock vs serie sin recuento,
Serial No Count,Serie sin recuento,
Work Order Summary,Resumen de la orden de trabajo,
Produce Qty,Producir Cant.,
Lead Time (in mins),Plazo de ejecución (en minutos),
Charts Based On,Gráficos basados en,
YouTube Interactions,Interacciones de YouTube,
Published Date,Fecha de Publicación,
Barnch,Barnch,
Select a Company,Seleccione una empresa,
Opportunity {0} created,Oportunidad {0} creada,
Kindly select the company first,Por favor seleccione primero la empresa,
Please enter From Date and To Date to generate JSON,Ingrese la fecha desde y hasta la fecha para generar JSON,
Download DATEV File,Descargar archivo DATEV,
Numero has not set in the XML file,Numero no se ha establecido en el archivo XML,
Inward Supplies(liable to reverse charge),Suministros internos (sujeto a cargo revertido),
This is based on the course schedules of this Instructor,Esto se basa en los horarios de los cursos de este Instructor.,
Course and Assessment,Curso y evaluación,
Course {0} has been added to all the selected programs successfully.,El curso {0} se ha añadido correctamente a todos los programas seleccionados.,
Programs updated,Programas actualizados,
Program and Course,Programa y curso,
{0} or {1} is mandatory,{0} o {1} es obligatorio,
Mandatory Fields,Campos obligatorios,
Student {0}: {1} does not belong to Student Group {2},Estudiante {0}: {1} no pertenece al grupo de estudiantes {2},
Student Attendance record {0} already exists against the Student {1},El registro de asistencia del estudiante {0} ya existe contra el estudiante {1},
Course and Fee,Curso y tarifa,
Not eligible for the admission in this program as per Date Of Birth,No elegible para la admisión en este programa según la fecha de nacimiento,
Topic {0} has been added to all the selected courses successfully.,El tema {0} se ha agregado correctamente a todos los cursos seleccionados.,
Courses updated,Cursos actualizados,
{0} {1} has been added to all the selected topics successfully.,{0} {1} se agregó correctamente a todos los temas seleccionados.,
Topics updated,Temas actualizados,
Academic Term and Program,Término académico y programa,
Please remove this item and try to submit again or update the posting time.,Elimine este elemento e intente enviarlo de nuevo o actualice la hora de publicación.,
Failed to Authenticate the API key.,Error al autenticar la clave de API.,
Invalid Credentials,Credenciales no válidas,
URL can only be a string,La URL solo puede ser una cadena,
"Here is your webhook secret, this will be shown to you only once.","Aquí está su secreto de webhook, esto se le mostrará solo una vez.",
The payment for this membership is not paid. To generate invoice fill the payment details,El pago de esta membresía no se paga. Para generar factura complete los detalles de pago,
An invoice is already linked to this document,Ya hay una factura vinculada a este documento,
No customer linked to member {},Ningún cliente vinculado al miembro {},
You need to set <b>Debit Account</b> in Membership Settings,<b>Debe</b> configurar una <b>cuenta de débito</b> en la configuración de membresía,
You need to set <b>Default Company</b> for invoicing in Membership Settings,Debe configurar la <b>empresa predeterminada</b> para la facturación en la configuración de membresía,
You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Debe habilitar <b>Enviar correo electrónico</b> de confirmación en la configuración de membresía,
Error creating membership entry for {0},Error al crear la entrada de membresía para {0},
A customer is already linked to this Member,Un cliente ya está vinculado a este miembro,
End Date must not be lesser than Start Date,La fecha de finalización no debe ser menor que la fecha de inicio,
Employee {0} already has Active Shift {1}: {2},El empleado {0} ya tiene turno activo {1}: {2},
 from {0},de {0},
 to {0},a {0},
Please set {0} for the Employee or for Department: {1},Configure {0} para el empleado o para el departamento: {1},
Employee Onboarding: {0} is already for Job Applicant: {1},Incorporación de empleados: {0} ya es para el solicitante de empleo: {1},
Asset Value Analytics,Análisis de valor de activos,
Category-wise Asset Value,Valor del activo por categoría,
Total Assets,Los activos totales,
New Assets (This Year),Nuevos activos (este año),
Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Fila # {}: la fecha de contabilización de la depreciación no debe ser igual a la fecha de disponibilidad para uso.,
Incorrect Date,Fecha incorrecta,
Invalid Gross Purchase Amount,Importe de compra bruta no válido,
There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Hay mantenimiento activo o reparaciones contra el activo. Debes completarlos todos antes de cancelar el activo.,
% Complete,% Completo,
Back to Course,De vuelta al curso,
Finish Topic,Terminar tema,
Mins,Minutos,
by,por,
Back to,De regreso,
Enrolling...,Inscribiéndose ...,
You have successfully enrolled for the program ,Te has inscrito con éxito en el programa,
Enrolled,Inscrito,
Watch Intro,Ver introducción,
We're here to help!,¡Estamos aquí para ayudar!,
Frequently Read Articles,Artículos leídos con frecuencia,
Please set a default company address,Establezca una dirección de empresa predeterminada,
{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} no es un estado válido. Busque errores tipográficos o ingrese el código ISO de su estado.,
Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,Se produjo un error al analizar el plan de cuentas: asegúrese de que no haya dos cuentas con el mismo nombre,
Plaid invalid request error,Error de solicitud de tela escocesa no válida,
Please check your Plaid client ID and secret values,Verifique su ID de cliente de Plaid y sus valores secretos,
Bank transaction creation error,Error de creación de transacción bancaria,
Unit of Measurement,Unidad de medida,
Fiscal Year {0} Does Not Exist,El año fiscal {0} no existe,
Row # {0}: Returned Item {1} does not exist in {2} {3},Fila n.º {0}: el artículo devuelto {1} no existe en {2} {3},
Valuation type charges can not be marked as Inclusive,Los cargos por tipo de valoración no se pueden marcar como inclusivos,
You do not have permissions to {} items in a {}.,No tienes permisos para {} elementos en un {}.,
Insufficient Permissions,Permisos insuficientes,
You are not allowed to update as per the conditions set in {} Workflow.,No se le permite actualizar según las condiciones establecidas en {} Flujo de trabajo.,
Expense Account Missing,Falta la cuenta de gastos,
{0} is not a valid Value for Attribute {1} of Item {2}.,{0} no es un valor válido para el atributo {1} del artículo {2}.,
Invalid Value,Valor no válido,
The value {0} is already assigned to an existing Item {1}.,El valor {0} ya está asignado a un artículo existente {1}.,
"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","Para continuar con la edición de este valor de atributo, habilite {0} en Configuración de variantes de artículo.",
Edit Not Allowed,Editar no permitido,
Row #{0}: Item {1} is already fully received in Purchase Order {2},Fila n.º {0}: el artículo {1} ya se recibió en su totalidad en la orden de compra {2},
You cannot create or cancel any accounting entries with in the closed Accounting Period {0},No puede crear ni cancelar ningún asiento contable dentro del período contable cerrado {0},
POS Invoice should have {} field checked.,La factura de POS debe tener el campo {} marcado.,
Invalid Item,Artículo no válido,
Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Fila # {}: no puede agregar cantidades positivas en una factura de devolución. Quite el artículo {} para completar la devolución.,
The selected change account {} doesn't belongs to Company {}.,La cuenta de cambio seleccionada {} no pertenece a la empresa {}.,
Atleast one invoice has to be selected.,Se debe seleccionar al menos una factura.,
Payment methods are mandatory. Please add at least one payment method.,Los métodos de pago son obligatorios. Agregue al menos un método de pago.,
Please select a default mode of payment,Seleccione una forma de pago predeterminada,
You can only select one mode of payment as default,Solo puede seleccionar un modo de pago por defecto,
Missing Account,Cuenta faltante,
Customers not selected.,Clientes no seleccionados.,
Statement of Accounts,Estado de cuentas,
Ageing Report Based On ,Informe de envejecimiento basado en,
Please enter distributed cost center,Ingrese el centro de costos distribuido,
Total percentage allocation for distributed cost center should be equal to 100,La asignación porcentual total para el centro de costos distribuido debe ser igual a 100,
Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,No se puede habilitar el centro de costos distribuido para un centro de costos ya asignado en otro centro de costos distribuido,
Parent Cost Center cannot be added in Distributed Cost Center,El centro de costos principal no se puede agregar en el centro de costos distribuido,
A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,No se puede agregar un centro de costos distribuidos en la tabla de asignación de centros de costos distribuidos.,
Cost Center with enabled distributed cost center can not be converted to group,El centro de costos con el centro de costos distribuido habilitado no se puede convertir en grupo,
Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,El centro de coste ya asignado en un centro de coste distribuido no se puede convertir a grupo,
Trial Period Start date cannot be after Subscription Start Date,La fecha de inicio del período de prueba no puede ser posterior a la fecha de inicio de la suscripción,
Subscription End Date must be after {0} as per the subscription plan,La fecha de finalización de la suscripción debe ser posterior al {0} según el plan de suscripción.,
Subscription End Date is mandatory to follow calendar months,La fecha de finalización de la suscripción es obligatoria para seguir los meses calendario,
Row #{}: POS Invoice {} is not against customer {},Fila # {}: Factura de punto de venta {} no es contra el cliente {},
Row #{}: POS Invoice {} is not submitted yet,Fila # {}: la factura de POS {} aún no se envió,
Row #{}: POS Invoice {} has been {},Fila # {}: Factura de punto de venta {} ha sido {},
No Supplier found for Inter Company Transactions which represents company {0},No se encontró ningún proveedor para transacciones entre empresas que represente a la empresa {0},
No Customer found for Inter Company Transactions which represents company {0},No se encontró ningún cliente para transacciones entre empresas que representen a la empresa {0},
Invalid Period,Período no válido,
Selected POS Opening Entry should be open.,La entrada de apertura de POS seleccionada debe estar abierta.,
Invalid Opening Entry,Entrada de apertura no válida,
Please set a Company,Establezca una empresa,
"Sorry, this coupon code's validity has not started","Lo sentimos, la validez de este código de cupón no ha comenzado",
"Sorry, this coupon code's validity has expired","Lo sentimos, la validez de este código de cupón ha expirado",
"Sorry, this coupon code is no longer valid","Lo sentimos, este código de cupón ya no es válido",
For the 'Apply Rule On Other' condition the field {0} is mandatory,"Para la condición &quot;Aplicar regla a otros&quot;, el campo {0} es obligatorio.",
{1} Not in Stock,{1} No disponible,
Only {0} in Stock for item {1},Solo {0} en stock para el artículo {1},
Please enter a coupon code,Ingrese un código de cupón,
Please enter a valid coupon code,Ingrese un código de cupón válido,
Invalid Child Procedure,Procedimiento de niño no válido,
Import Italian Supplier Invoice.,Importar factura de proveedor italiano.,
"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.","Tasa de valoración para el artículo {0}, se requiere para realizar asientos contables para {1} {2}.",
 Here are the options to proceed:,Estas son las opciones para continuar:,
"If the item is transacting as a Zero Valuation Rate item in this entry, please enable 'Allow Zero Valuation Rate' in the {0} Item table.","Si el artículo está realizando transacciones como un artículo de tasa de valoración cero en esta entrada, habilite &quot;Permitir tasa de valoración cero&quot; en la {0} tabla de artículos.",
"If not, you can Cancel / Submit this entry ","De lo contrario, puede cancelar / enviar esta entrada",
 performing either one below:,realizando cualquiera de los siguientes:,
Create an incoming stock transaction for the Item.,Cree una transacción de stock entrante para el artículo.,
Mention Valuation Rate in the Item master.,Mencione Tasa de valoración en el maestro de artículos.,
Valuation Rate Missing,Falta la tasa de valoración,
Serial Nos Required,Se requieren números de serie,
Quantity Mismatch,Discrepancia de cantidad,
"Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.","Reponga artículos y actualice la lista de selección para continuar. Para descontinuar, cancele la Lista de selección.",
Out of Stock,Agotado,
{0} units of Item {1} is not available.,Las {0} unidades del artículo {1} no están disponibles.,
Item for row {0} does not match Material Request,El artículo de la fila {0} no coincide con la solicitud de material,
Warehouse for row {0} does not match Material Request,El almacén de la fila {0} no coincide con la solicitud de material,
Accounting Entry for Service,Entrada contable para servicio,
All items have already been Invoiced/Returned,Todos los artículos ya han sido facturados / devueltos,
All these items have already been Invoiced/Returned,Todos estos artículos ya han sido facturados / devueltos,
Stock Reconciliations,Reconciliaciones de stock,
Merge not allowed,Fusionar no permitido,
The following deleted attributes exist in Variants but not in the Template. You can either delete the Variants or keep the attribute(s) in template.,Los siguientes atributos eliminados existen en las variantes pero no en la plantilla. Puede eliminar las variantes o mantener los atributos en la plantilla.,
Variant Items,Elementos variantes,
Variant Attribute Error,Error de atributo de variante,
The serial no {0} does not belong to item {1},El número de serie {0} no pertenece al artículo {1},
There is no batch found against the {0}: {1},No se ha encontrado ningún lote en {0}: {1},
Completed Operation,Operación completada,
Work Order Analysis,Análisis de órdenes de trabajo,
Quality Inspection Analysis,Análisis de inspección de calidad,
Pending Work Order,Orden de trabajo pendiente,
Last Month Downtime Analysis,Análisis del tiempo de inactividad del mes pasado,
Work Order Qty Analysis,Análisis de cantidad de órdenes de trabajo,
Job Card Analysis,Análisis de la tarjeta de trabajo,
Monthly Total Work Orders,Órdenes de trabajo totales mensuales,
Monthly Completed Work Orders,Órdenes de trabajo mensuales completadas,
Ongoing Job Cards,Tarjetas de trabajo en curso,
Monthly Quality Inspections,Inspecciones de calidad mensuales,
(Forecast),(Pronóstico),
Total Demand (Past Data),Demanda total (datos anteriores),
Total Forecast (Past Data),Pronóstico total (datos anteriores),
Total Forecast (Future Data),Pronóstico total (datos futuros),
Based On Document,Basado en documento,
Based On Data ( in years ),Basado en datos (en años),
Smoothing Constant,Constante de suavizado,
Please fill the Sales Orders table,Por favor complete la tabla de Órdenes de Venta,
Sales Orders Required,Órdenes de venta requeridas,
Please fill the Material Requests table,Complete la tabla de solicitudes de material,
Material Requests Required,Solicitudes de material requeridas,
Items to Manufacture are required to pull the Raw Materials associated with it.,Los artículos a fabricar están obligados a extraer las materias primas asociadas.,
Items Required,Elementos requeridos,
Operation {0} does not belong to the work order {1},La operación {0} no pertenece a la orden de trabajo {1},
Print UOM after Quantity,Imprimir UOM después de Cantidad,
Set default {0} account for perpetual inventory for non stock items,Establecer la cuenta {0} predeterminada para el inventario permanente de los artículos que no están en stock,
Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Fila n.º {0}: el elemento secundario no debe ser un paquete de productos. Elimine el elemento {1} y guarde,
Credit limit reached for customer {0},Se alcanzó el límite de crédito para el cliente {0},
Could not auto create Customer due to the following missing mandatory field(s):,No se pudo crear automáticamente el Cliente debido a que faltan los siguientes campos obligatorios:,
Please create Customer from Lead {0}.,Cree un cliente a partir de un cliente potencial {0}.,
Mandatory Missing,Falta obligatoria,
From Date can not be greater than To Date.,Desde la fecha no puede ser mayor que hasta la fecha.,
Row #{0}: Please enter the result value for {1},Fila # {0}: ingrese el valor de resultado para {1},
Mandatory Results,Resultados obligatorios,
Sales Invoice or Patient Encounter is required to create Lab Tests,Se requiere una factura de venta o un encuentro con el paciente para crear pruebas de laboratorio,
Insufficient Data,Datos insuficientes,
Lab Test(s) {0} created successfully,Las pruebas de laboratorio {0} se crearon correctamente,
Test :,Prueba :,
Sample Collection {0} has been created,Se ha creado la colección de muestra {0},
Normal Range: ,Rango normal:,
Row #{0}: Check Out datetime cannot be less than Check In datetime,Fila # {0}: la fecha y hora de salida no puede ser menor que la fecha y hora de entrada,
"Missing required details, did not create Inpatient Record","Faltan detalles obligatorios, no se creó el registro de paciente hospitalizado",
Unbilled Invoices,Facturas no facturadas,
Standard Selling Rate should be greater than zero.,La tasa de venta estándar debe ser mayor que cero.,
Conversion Factor is mandatory,El factor de conversión es obligatorio,
Row #{0}: Conversion Factor is mandatory,Fila # {0}: el factor de conversión es obligatorio,
Sample Quantity cannot be negative or 0,La cantidad de muestra no puede ser negativa o 0,
Invalid Quantity,Cantidad inválida,
"Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Establezca los valores predeterminados para el grupo de clientes, el territorio y la lista de precios de venta en la configuración de ventas.",
{0} on {1},{0} en {1},
{0} with {1},{0} con {1},
Appointment Confirmation Message Not Sent,Mensaje de confirmación de cita no enviado,
"SMS not sent, please check SMS Settings","SMS no enviado, compruebe la configuración de SMS",
Healthcare Service Unit Type cannot have both {0} and {1},El tipo de unidad de servicio sanitario no puede tener {0} y {1},
Healthcare Service Unit Type must allow atleast one among {0} and {1},El tipo de unidad de servicio sanitario debe permitir al menos uno entre {0} y {1},
Set Response Time and Resolution Time for Priority {0} in row {1}.,Establezca el tiempo de respuesta y el tiempo de resolución para la prioridad {0} en la fila {1}.,
Response Time for {0} priority in row {1} can't be greater than Resolution Time.,El tiempo de respuesta para la {0} prioridad en la fila {1} no puede ser mayor que el tiempo de resolución.,
{0} is not enabled in {1},{0} no está habilitado en {1},
Group by Material Request,Agrupar por solicitud de material,
Email Sent to Supplier {0},Correo electrónico enviado al proveedor {0},
"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","El acceso a la solicitud de cotización del portal está deshabilitado. Para permitir el acceso, habilítelo en la configuración del portal.",
Supplier Quotation {0} Created,Cotización de proveedor {0} creada,
Valid till Date cannot be before Transaction Date,La fecha válida hasta la fecha no puede ser anterior a la fecha de la transacción,
Unlink Advance Payment on Cancellation of Order,Desvincular el pago por adelantado en la cancelación de un pedido,
"Simple Python Expression, Example: territory != 'All Territories'","Expresión simple de Python, ejemplo: territorio! = &#39;Todos los territorios&#39;",
Sales Contributions and Incentives,Contribuciones e incentivos de ventas,
Sourced by Supplier,Obtenido por proveedor,
Total weightage assigned should be 100%.<br>It is {0},El peso total asignado debe ser del 100%.<br> Es {0},
Account {0} exists in parent company {1}.,La cuenta {0} existe en la empresa matriz {1}.,
"To overrule this, enable '{0}' in company {1}","Para anular esto, habilite &quot;{0}&quot; en la empresa {1}",
Invalid condition expression,Expresión de condición no válida,
Please Select a Company First,Primero seleccione una empresa,
Please Select Both Company and Party Type First,Primero seleccione tanto la empresa como el tipo de partido,
Provide the invoice portion in percent,Proporcione la parte de la factura en porcentaje,
Give number of days according to prior selection,Dar número de días según selección previa,
Email Details,Detalles de correo electrónico,
"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Seleccione un saludo para el receptor. Por ejemplo, Sr., Sra., Etc.",
Preview Email,Vista previa del correo electrónico,
Please select a Supplier,Seleccione un proveedor,
Supplier Lead Time (days),Plazo de ejecución del proveedor (días),
"Home, Work, etc.","Hogar, trabajo, etc.",
Exit Interview Held On,Entrevista de salida retenida,
Sets 'Target Warehouse' in each row of the Items table.,Establece &#39;Almacén de destino&#39; en cada fila de la tabla Artículos.,
Sets 'Source Warehouse' in each row of the Items table.,Establece &#39;Almacén de origen&#39; en cada fila de la tabla Artículos.,
POS Register,Registro POS,
"Can not filter based on POS Profile, if grouped by POS Profile","No se puede filtrar según el perfil de POS, si está agrupado por perfil de POS",
"Can not filter based on Customer, if grouped by Customer","No se puede filtrar según el Cliente, si está agrupado por Cliente",
"Can not filter based on Cashier, if grouped by Cashier","No se puede filtrar según el cajero, si está agrupado por cajero",
Payment Method,Método de pago,
"Can not filter based on Payment Method, if grouped by Payment Method","No se puede filtrar según el método de pago, si está agrupado por método de pago",
Supplier Quotation Comparison,Comparación de cotizaciones de proveedores,
Price per Unit (Stock UOM),Precio por unidad (UOM de stock),
Group by Supplier,Agrupar por proveedor,
Group by Item,Agrupar por artículo,
Remember to set {field_label}. It is required by {regulation}.,Recuerde configurar {field_label}. Es requerido por {regulación}.,
Enrollment Date cannot be before the Start Date of the Academic Year {0},La fecha de inscripción no puede ser anterior a la fecha de inicio del año académico {0},
Enrollment Date cannot be after the End Date of the Academic Term {0},La fecha de inscripción no puede ser posterior a la fecha de finalización del período académico {0},
Enrollment Date cannot be before the Start Date of the Academic Term {0},La fecha de inscripción no puede ser anterior a la fecha de inicio del período académico {0},
Future Posting Not Allowed,Publicaciones futuras no permitidas,
"To enable Capital Work in Progress Accounting, ","Para habilitar la contabilidad del trabajo de capital en curso,",
you must select Capital Work in Progress Account in accounts table,debe seleccionar Cuenta Capital Work in Progress en la tabla de cuentas,
You can also set default CWIP account in Company {},También puede configurar una cuenta CWIP predeterminada en la empresa {},
The Request for Quotation can be accessed by clicking on the following button,Se puede acceder a la Solicitud de Cotización haciendo clic en el siguiente botón,
Regards,Saludos,
Please click on the following button to set your new password,Haga clic en el siguiente botón para establecer su nueva contraseña,
Update Password,Actualiza contraseña,
Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Fila # {}: la tasa de venta del artículo {} es menor que su {}. La venta {} debe ser al menos {},
You can alternatively disable selling price validation in {} to bypass this validation.,"Alternativamente, puede deshabilitar la validación del precio de venta en {} para omitir esta validación.",
Invalid Selling Price,Precio de venta no válido,
Address needs to be linked to a Company. Please add a row for Company in the Links table.,La dirección debe estar vinculada a una empresa. Agregue una fila para Compañía en la tabla Vínculos.,
Company Not Linked,Empresa no vinculada,
Import Chart of Accounts from CSV / Excel files,Importar plan de cuentas desde archivos CSV / Excel,
Completed Qty cannot be greater than 'Qty to Manufacture',La cantidad completa no puede ser mayor que la &#39;Cantidad para fabricar&#39;,
"Row {0}: For Supplier {1}, Email Address is Required to send an email","Fila {0}: para el proveedor {1}, se requiere la dirección de correo electrónico para enviar un correo electrónico.",
"If enabled, the system will post accounting entries for inventory automatically","Si está habilitado, el sistema registrará entradas contables para el inventario automáticamente",
Accounts Frozen Till Date,Cuentas congeladas hasta la fecha,
Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Los asientos contables están congelados hasta esta fecha. Nadie puede crear o modificar entradas excepto los usuarios con el rol especificado a continuación,
Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Función permitida para configurar cuentas congeladas y editar entradas congeladas,
Address used to determine Tax Category in transactions,Dirección utilizada para determinar la categoría fiscal en las transacciones,
"The percentage you are allowed to bill more against the amount ordered. For example, if the order value is $100 for an item and tolerance is set as 10%, then you are allowed to bill up to $110 ","El porcentaje que se le permite facturar más contra la cantidad solicitada. Por ejemplo, si el valor del pedido es de $ 100 para un artículo y la tolerancia se establece en el 10%, entonces puede facturar hasta $ 110",
This role is allowed to submit transactions that exceed credit limits,Este rol puede enviar transacciones que excedan los límites de crédito.,
"If ""Months"" is selected, a fixed amount will be booked as deferred revenue or expense for each month irrespective of the number of days in a month. It will be prorated if deferred revenue or expense is not booked for an entire month","Si se selecciona &quot;Meses&quot;, se registrará una cantidad fija como ingreso o gasto diferido para cada mes, independientemente de la cantidad de días en un mes. Se prorrateará si los ingresos o gastos diferidos no se registran durante un mes completo.",
"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Si no se marca esta opción, se crearán entradas directas de libro mayor para registrar los ingresos o gastos diferidos",
Show Inclusive Tax in Print,Mostrar impuestos incluidos en la impresión,
Only select this if you have set up the Cash Flow Mapper documents,Solo seleccione esta opción si ha configurado los documentos de Cash Flow Mapper,
Payment Channel,Canal de pago,
Is Purchase Order Required for Purchase Invoice & Receipt Creation?,¿Se requiere una orden de compra para la creación de facturas y recibos de compra?,
Is Purchase Receipt Required for Purchase Invoice Creation?,¿Se requiere un recibo de compra para la creación de una factura de compra?,
Maintain Same Rate Throughout the Purchase Cycle,Mantenga la misma tasa durante todo el ciclo de compra,
Allow Item To Be Added Multiple Times in a Transaction,Permitir que el artículo se agregue varias veces en una transacción,
Suppliers,Proveedores,
Send Emails to Suppliers,Enviar correos electrónicos a proveedores,
Select a Supplier,Seleccione un proveedor,
Cannot mark attendance for future dates.,No se puede marcar la asistencia para fechas futuras.,
Do you want to update attendance? <br> Present: {0} <br> Absent: {1},¿Quieres actualizar la asistencia?<br> Presente: {0}<br> Ausente: {1},
Mpesa Settings,Configuración de Mpesa,
Initiator Name,Nombre del iniciador,
Till Number,Hasta el número,
Sandbox,Salvadera,
 Online PassKey,PassKey en línea,
Security Credential,Credencial de seguridad,
Get Account Balance,Obtener saldo de cuenta,
Please set the initiator name and the security credential,Establezca el nombre del iniciador y la credencial de seguridad,
Inpatient Medication Entry,Entrada de medicación para pacientes hospitalizados,
HLC-IME-.YYYY.-,HLC-IME-.YYYY.-,
Item Code (Drug),Código de artículo (medicamento),
Medication Orders,Órdenes de medicación,
Get Pending Medication Orders,Obtenga pedidos de medicamentos pendientes,
Inpatient Medication Orders,Órdenes de medicamentos para pacientes hospitalizados,
Medication Warehouse,Almacén de medicamentos,
Warehouse from where medication stock should be consumed,Almacén desde donde se debe consumir el stock de medicamentos,
Fetching Pending Medication Orders,Obtención de pedidos de medicamentos pendientes,
Inpatient Medication Entry Detail,Detalle de entrada de medicación para pacientes hospitalizados,
Medication Details,Detalles de la medicación,
Drug Code,Código de drogas,
Drug Name,Nombre de la droga,
Against Inpatient Medication Order,Contra la orden de medicación para pacientes hospitalizados,
Against Inpatient Medication Order Entry,Contra la entrada de pedidos de medicamentos para pacientes hospitalizados,
Inpatient Medication Order,Orden de medicación para pacientes hospitalizados,
HLC-IMO-.YYYY.-,HLC-IMO-.YYYY.-,
Total Orders,Pedidos totales,
Completed Orders,Pedidos completados,
Add Medication Orders,Agregar pedidos de medicamentos,
Adding Order Entries,Agregar entradas de pedido,
{0} medication orders completed,{0} pedidos de medicamentos completados,
{0} medication order completed,{0} pedido de medicamentos completado,
Inpatient Medication Order Entry,Entrada de pedidos de medicamentos para pacientes hospitalizados,
Is Order Completed,¿Se completó el pedido?,
Employee Records to Be Created By,Registros de empleados que serán creados por,
Employee records are created using the selected field,Los registros de empleados se crean utilizando el campo seleccionado,
Don't send employee birthday reminders,No envíe recordatorios de cumpleaños a los empleados,
Restrict Backdated Leave Applications,Restringir las solicitudes de permisos retroactivos,
Sequence ID,ID de secuencia,
Sequence Id,ID de secuencia,
Allow multiple material consumptions against a Work Order,Permitir múltiples consumos de material contra una orden de trabajo,
Plan time logs outside Workstation working hours,Planifique registros de tiempo fuera del horario laboral de la estación de trabajo,
Plan operations X days in advance,Planifique las operaciones con X días de anticipación,
Time Between Operations (Mins),Tiempo entre operaciones (minutos),
Default: 10 mins,Predeterminado: 10 minutos,
Overproduction for Sales and Work Order,Sobreproducción para ventas y órdenes de trabajo,
"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Actualice el costo de la lista de materiales automáticamente a través del programador, según la última tasa de valoración / tasa de lista de precios / tasa de última compra de materias primas",
Purchase Order already created for all Sales Order items,Orden de compra ya creada para todos los artículos de orden de venta,
Select Items,Seleccionar articulos,
Against Default Supplier,Contra proveedor predeterminado,
Auto close Opportunity after the no. of days mentioned above,Oportunidad de cierre automático después del no. de los días mencionados anteriormente,
Is Sales Order Required for Sales Invoice & Delivery Note Creation?,¿Se requiere una orden de venta para la creación de facturas de venta y notas de entrega?,
Is Delivery Note Required for Sales Invoice Creation?,¿Se requiere una nota de entrega para la creación de facturas de venta?,
How often should Project and Company be updated based on Sales Transactions?,¿Con qué frecuencia se deben actualizar el proyecto y la empresa en función de las transacciones de ventas?,
Allow User to Edit Price List Rate in Transactions,Permitir al usuario editar la tarifa de lista de precios en las transacciones,
Allow Item to Be Added Multiple Times in a Transaction,Permitir que el artículo se agregue varias veces en una transacción,
Allow Multiple Sales Orders Against a Customer's Purchase Order,Permitir múltiples órdenes de venta contra la orden de compra de un cliente,
Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Validar el precio de venta del artículo frente a la tasa de compra o la tasa de valoración,
Hide Customer's Tax ID from Sales Transactions,Ocultar el número de identificación fiscal del cliente de las transacciones de ventas,
"The percentage you are allowed to receive or deliver more against the quantity ordered. For example, if you have ordered 100 units, and your Allowance is 10%, then you are allowed to receive 110 units.","El porcentaje que se le permite recibir o entregar más en comparación con la cantidad solicitada. Por ejemplo, si ha pedido 100 unidades y su asignación es del 10%, se le permite recibir 110 unidades.",
Action If Quality Inspection Is Not Submitted,Acción si no se envía la inspección de calidad,
Auto Insert Price List Rate If Missing,Tarifa de lista de precios de inserción automática si falta,
Automatically Set Serial Nos Based on FIFO,Establecer números de serie automáticamente basados en FIFO,
Set Qty in Transactions Based on Serial No Input,Establecer la cantidad en transacciones según la entrada sin serie,
Raise Material Request When Stock Reaches Re-order Level,Aumente la solicitud de material cuando el stock alcance el nivel de pedido,
Notify by Email on Creation of Automatic Material Request,Notificar por correo electrónico sobre la creación de una solicitud de material automática,
Allow Material Transfer from Delivery Note to Sales Invoice,Permitir transferencia de material de la nota de entrega a la factura de venta,
Allow Material Transfer from Purchase Receipt to Purchase Invoice,Permitir la transferencia de material desde el recibo de compra a la factura de compra,
Freeze Stocks Older Than (Days),Congelar existencias anteriores a (días),
Role Allowed to Edit Frozen Stock,Función permitida para editar stock congelado,
The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,La cantidad no asignada de Entrada de pago {0} es mayor que la cantidad no asignada de la transacción bancaria,
Payment Received,Pago recibido,
Attendance cannot be marked outside of Academic Year {0},La asistencia no se puede marcar fuera del año académico {0},
Student is already enrolled via Course Enrollment {0},El estudiante ya está inscrito a través de la inscripción al curso {0},
Attendance cannot be marked for future dates.,La asistencia no se puede marcar para fechas futuras.,
Please add programs to enable admission application.,Agregue programas para habilitar la solicitud de admisión.,
The following employees are currently still reporting to {0}:,Los siguientes empleados todavía están reportando a {0}:,
Please make sure the employees above report to another Active employee.,Asegúrese de que los empleados anteriores denuncien a otro empleado activo.,
Cannot Relieve Employee,No se puede relevar al empleado,
Please enter {0},Ingrese {0},
Please select another payment method. Mpesa does not support transactions in currency '{0}',Seleccione otro método de pago. Mpesa no admite transacciones en la moneda &#39;{0}&#39;,
Transaction Error,Error de transacción,
Mpesa Express Transaction Error,Error de transacción de Mpesa Express,
"Issue detected with Mpesa configuration, check the error logs for more details","Problema detectado con la configuración de Mpesa, consulte los registros de errores para obtener más detalles",
Mpesa Express Error,Error de Mpesa Express,
Account Balance Processing Error,Error de procesamiento del saldo de la cuenta,
Please check your configuration and try again,Verifique su configuración e intente nuevamente,
Mpesa Account Balance Processing Error,Error de procesamiento del saldo de la cuenta de Mpesa,
Balance Details,Detalles del saldo,
Current Balance,Saldo actual,
Available Balance,Saldo disponible,
Reserved Balance,Saldo reservado,
Uncleared Balance,Saldo no liquidado,
Payment related to {0} is not completed,El pago relacionado con {0} no se completó,
Row #{}: Item Code: {} is not available under warehouse {}.,Fila # {}: Código de artículo: {} no está disponible en el almacén {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Fila # {}: la cantidad de existencias no es suficiente para el código de artículo: {} debajo del almacén {}. Cantidad disponible {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Fila # {}: seleccione un número de serie y un lote contra el artículo: {} o elimínelo para completar la transacción.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Fila # {}: No se ha seleccionado ningún número de serie para el artículo: {}. Seleccione uno o elimínelo para completar la transacción.,
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Fila # {}: No se seleccionó ningún lote para el artículo: {}. Seleccione un lote o elimínelo para completar la transacción.,
Payment amount cannot be less than or equal to 0,El monto del pago no puede ser menor o igual a 0,
Please enter the phone number first,Primero ingrese el número de teléfono,
Row #{}: {} {} does not exist.,Fila # {}: {} {} no existe.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Fila # {0}: {1} es obligatorio para crear las {2} facturas de apertura.,
You had {} errors while creating opening invoices. Check {} for more details,Tuvo {} errores al crear facturas de apertura. Consulte {} para obtener más detalles,
Error Occured,Ocurrió un error,
Opening Invoice Creation In Progress,Creación de factura de apertura en curso,
Creating {} out of {} {},Creando {} a partir de {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,(Número de serie: {0}) no se puede consumir ya que está reservado para cumplir con el pedido de venta {1}.,
Item {0} {1},Elemento {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,La última transacción de existencias para el artículo {0} en el almacén {1} fue el {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Las transacciones de stock para el artículo {0} en el almacén {1} no se pueden contabilizar antes de esta hora.,
Posting future stock transactions are not allowed due to Immutable Ledger,No se permite la contabilización de transacciones de stock futuras debido al Libro mayor inmutable,
A BOM with name {0} already exists for item {1}.,Ya existe una lista de materiales con el nombre {0} para el artículo {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} ¿Cambió el nombre del elemento? Póngase en contacto con el administrador / soporte técnico,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},En la fila n.º {0}: el ID de secuencia {1} no puede ser menor que el ID de secuencia de fila anterior {2},
The {0} ({1}) must be equal to {2} ({3}),El {0} ({1}) debe ser igual a {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, complete la operación {1} antes de la operación {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,No se puede garantizar la entrega por número de serie ya que el artículo {0} se agrega con y sin Asegurar entrega por número de serie,
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,El artículo {0} no tiene un número de serie. Solo los artículos serializados pueden tener una entrega basada en el número de serie.,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,No se encontró ninguna lista de materiales activa para el artículo {0}. No se puede garantizar la entrega por número de serie,
No pending medication orders found for selected criteria,No se encontraron pedidos de medicamentos pendientes para los criterios seleccionados,
From Date cannot be after the current date.,Desde la fecha no puede ser posterior a la fecha actual.,
To Date cannot be after the current date.,Hasta la fecha no puede ser posterior a la fecha actual.,
From Time cannot be after the current time.,Desde la hora no puede ser posterior a la hora actual.,
To Time cannot be after the current time.,Hasta la hora no puede ser posterior a la hora actual.,
Stock Entry {0} created and ,Entrada de stock {0} creada y,
Inpatient Medication Orders updated successfully,Los pedidos de medicamentos para pacientes hospitalizados se actualizaron correctamente,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Fila {0}: no se puede crear una entrada de medicación para pacientes hospitalizados contra una orden de medicación para pacientes hospitalizados cancelada {1},
Row {0}: This Medication Order is already marked as completed,Fila {0}: este pedido de medicamento ya está marcado como completado,
Quantity not available for {0} in warehouse {1},Cantidad no disponible para {0} en el almacén {1},
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,Habilite Permitir stock negativo en la configuración de stock o cree Entrada de stock para continuar.,
No Inpatient Record found against patient {0},No se encontraron registros de pacientes hospitalizados del paciente {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Ya existe una orden de medicación para pacientes hospitalizados {0} contra el encuentro con el paciente {1}.,
Allow In Returns,Permitir devoluciones,
Hide Unavailable Items,Ocultar elementos no disponibles,
Apply Discount on Discounted Rate,Aplicar descuento sobre tarifa con descuento,
Therapy Plan Template,Plantilla de plan de terapia,
Fetching Template Details,Obteniendo detalles de la plantilla,
Linked Item Details,Detalles del artículo vinculado,
Therapy Types,Tipos de terapia,
Therapy Plan Template Detail,Detalle de la plantilla del plan de terapia,
Non Conformance,No conformidad,
Process Owner,Dueño del proceso,
Corrective Action,Acción correctiva,
Preventive Action,Acción preventiva,
Problem,Problema,
Responsible,Responsable,
Completion By,Finalización por,
Process Owner Full Name,Nombre completo del propietario del proceso,
Right Index,Índice derecho,
Left Index,Índice izquierdo,
Sub Procedure,Subprocedimiento,
Passed,Aprobado,
Print Receipt,Imprimir el recibo,
Edit Receipt,Editar recibo,
Focus on search input,Centrarse en la entrada de búsqueda,
Focus on Item Group filter,Centrarse en el filtro de grupo de artículos,
Checkout Order / Submit Order / New Order,Realizar pedido / Enviar pedido / Nuevo pedido,
Add Order Discount,Agregar descuento de pedido,
Item Code: {0} is not available under warehouse {1}.,Código de artículo: {0} no está disponible en el almacén {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Los números de serie no están disponibles para el artículo {0} en almacén {1}. Intente cambiar de almacén.,
Fetched only {0} available serial numbers.,Solo se obtuvieron {0} números de serie disponibles.,
Switch Between Payment Modes,Cambiar entre modos de pago,
Enter {0} amount.,Ingrese {0} monto.,
You don't have enough points to redeem.,No tienes suficientes puntos para canjear.,
You can redeem upto {0}.,Puede canjear hasta {0}.,
Enter amount to be redeemed.,Ingrese el monto a canjear.,
You cannot redeem more than {0}.,No puede canjear más de {0}.,
Open Form View,Abrir vista de formulario,
POS invoice {0} created succesfully,Factura de punto de venta {0} creada correctamente,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,La cantidad de existencias no es suficiente para el código de artículo: {0} en el almacén {1}. Cantidad disponible {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,Número de serie: {0} ya se ha transferido a otra factura de punto de venta.,
Balance Serial No,No de serie de la balanza,
Warehouse: {0} does not belong to {1},Almacén: {0} no pertenece a {1},
Please select batches for batched item {0},Seleccione lotes para el artículo por lotes {0},
Please select quantity on row {0},Seleccione la cantidad en la fila {0},
Please enter serial numbers for serialized item {0},Ingrese los números de serie del artículo serializado {0},
Batch {0} already selected.,Lote {0} ya seleccionado.,
Please select a warehouse to get available quantities,Seleccione un almacén para obtener las cantidades disponibles,
"For transfer from source, selected quantity cannot be greater than available quantity","Para la transferencia desde la fuente, la cantidad seleccionada no puede ser mayor que la cantidad disponible",
Cannot find Item with this Barcode,No se puede encontrar el artículo con este código de barras,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} es obligatorio. Quizás no se crea el registro de cambio de moneda para {1} a {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} ha enviado elementos vinculados a él. Debe cancelar los activos para crear una devolución de compra.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,No se puede cancelar este documento porque está vinculado con el activo enviado {0}. Cancele para continuar.,
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Fila # {}: el número de serie {} ya se ha transferido a otra factura de punto de venta. Seleccione un número de serie válido.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Fila # {}: Los números de serie {} ya se han transferido a otra factura de punto de venta. Seleccione un número de serie válido.,
Item Unavailable,Artículo no disponible,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},Fila # {}: No de serie {} no se puede devolver porque no se tramitó en la factura original {},
Please set default Cash or Bank account in Mode of Payment {},Establezca una cuenta bancaria o en efectivo predeterminada en el modo de pago {},
Please set default Cash or Bank account in Mode of Payments {},Establezca la cuenta bancaria o en efectivo predeterminada en el modo de pago {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,Asegúrese de que la cuenta {} sea una cuenta de balance. Puede cambiar la cuenta principal a una cuenta de balance o seleccionar una cuenta diferente.,
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,Asegúrese de que la {} cuenta sea una cuenta a pagar. Cambie el tipo de cuenta a Pagable o seleccione una cuenta diferente.,
Row {}: Expense Head changed to {} ,Fila {}: la cabeza de gastos cambió a {},
because account {} is not linked to warehouse {} ,porque la cuenta {} no está vinculada al almacén {},
or it is not the default inventory account,o no es la cuenta de inventario predeterminada,
Expense Head Changed,Cabeza de gastos cambiada,
because expense is booked against this account in Purchase Receipt {},porque el gasto se registra en esta cuenta en el recibo de compra {},
as no Purchase Receipt is created against Item {}. ,ya que no se crea ningún recibo de compra para el artículo {}.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,Esto se hace para manejar la contabilidad de los casos en los que el recibo de compra se crea después de la factura de compra.,
Purchase Order Required for item {},Se requiere orden de compra para el artículo {},
To submit the invoice without purchase order please set {} ,"Para enviar la factura sin orden de compra, configure {}",
as {} in {},como en {},
Mandatory Purchase Order,Orden de compra obligatoria,
Purchase Receipt Required for item {},Se requiere recibo de compra para el artículo {},
To submit the invoice without purchase receipt please set {} ,"Para enviar la factura sin el recibo de compra, configure {}",
Mandatory Purchase Receipt,Recibo de compra obligatorio,
POS Profile {} does not belongs to company {},El perfil de POS {} no pertenece a la empresa {},
User {} is disabled. Please select valid user/cashier,El usuario {} está inhabilitado. Seleccione un usuario / cajero válido,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Fila # {}: la factura original {} de la factura de devolución {} es {}.,
Original invoice should be consolidated before or along with the return invoice.,La factura original debe consolidarse antes o junto con la factura de devolución.,
You can add original invoice {} manually to proceed.,Puede agregar la factura original {} manualmente para continuar.,
Please ensure {} account is a Balance Sheet account. ,Asegúrese de que la cuenta {} sea una cuenta de balance.,
You can change the parent account to a Balance Sheet account or select a different account.,Puede cambiar la cuenta principal a una cuenta de balance o seleccionar una cuenta diferente.,
Please ensure {} account is a Receivable account. ,Asegúrese de que la {} cuenta sea una cuenta por cobrar.,
Change the account type to Receivable or select a different account.,Cambie el tipo de cuenta a Cobrar o seleccione una cuenta diferente.,
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},{} no se puede cancelar ya que se canjearon los puntos de fidelidad ganados. Primero cancele el {} No {},
already exists,ya existe,
POS Closing Entry {} against {} between selected period,Entrada de cierre de POS {} contra {} entre el período seleccionado,
POS Invoice is {},La factura de POS es {},
POS Profile doesn't matches {},El perfil de POS no coincide {},
POS Invoice is not {},La factura de POS no es {},
POS Invoice isn't created by user {},La factura de punto de venta no la crea el usuario {},
Row #{}: {},Fila #{}: {},
Invalid POS Invoices,Facturas POS no válidas,
Please add the account to root level Company - {},Agregue la cuenta a la empresa de nivel raíz - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","Al crear la cuenta para la empresa secundaria {0}, no se encontró la cuenta principal {1}. Cree la cuenta principal en el COA correspondiente",
Account Not Found,Cuenta no encontrada,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.","Al crear una cuenta para la empresa secundaria {0}, la cuenta principal {1} se encontró como una cuenta contable.",
Please convert the parent account in corresponding child company to a group account.,Convierta la cuenta principal de la empresa secundaria correspondiente en una cuenta de grupo.,
Invalid Parent Account,Cuenta principal no válida,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.","Solo se permite cambiar el nombre a través de la empresa matriz {0}, para evitar discrepancias.",
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Si {0} {1} cantidades del artículo {2}, el esquema {3} se aplicará al artículo.",
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Si {0} {1} vale el artículo {2}, el esquema {3} se aplicará al artículo.",
"As the field {0} is enabled, the field {1} is mandatory.","Como el campo {0} está habilitado, el campo {1} es obligatorio.",
"As the field {0} is enabled, the value of the field {1} should be more than 1.","Como el campo {0} está habilitado, el valor del campo {1} debe ser superior a 1.",
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},No se puede entregar el número de serie {0} del artículo {1} ya que está reservado para cumplir con el pedido de cliente {2},
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","Pedido de venta {0} tiene reserva para el artículo {1}, solo puede entregar reservado {1} contra {0}.",
{0} Serial No {1} cannot be delivered,No se puede entregar el {0} número de serie {1},
Row {0}: Subcontracted Item is mandatory for the raw material {1},Fila {0}: el artículo subcontratado es obligatorio para la materia prima {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Como hay suficientes materias primas, la Solicitud de material no es necesaria para Almacén {0}.",
" If you still want to proceed, please enable {0}.","Si aún desea continuar, habilite {0}.",
The item referenced by {0} - {1} is already invoiced,El artículo al que hace referencia {0} - {1} ya está facturado,
Therapy Session overlaps with {0},La sesión de terapia se superpone con {0},
Therapy Sessions Overlapping,Superposición de sesiones de terapia,
Therapy Plans,Planes de terapia,
"Item Code, warehouse, quantity are required on row {0}","El código de artículo, el almacén y la cantidad son obligatorios en la fila {0}",
Get Items from Material Requests against this Supplier,Obtener artículos de solicitudes de material contra este proveedor,
Enable European Access,Habilitar el acceso europeo,
Creating Purchase Order ...,Creando orden de compra ...,
"Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Seleccione un proveedor de los proveedores predeterminados de los artículos a continuación. En la selección, se realizará una orden de compra contra los artículos que pertenecen al proveedor seleccionado únicamente.",
Row #{}: You must select {} serial numbers for item {}.,Fila # {}: debe seleccionar {} números de serie para el artículo {}.,
