"""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 enough Loyalty Points to redeem,No tienes suficientes puntos de lealtad para canjear,
You have already assessed for the assessment criteria {}.,Ya ha evaluado los criterios de evaluación {}.,
You have already selected items from {0} {1},Ya ha seleccionado artículos de {0} {1},
You have been invited to collaborate on the project: {0},Se le ha invitado a colaborar en el proyecto: {0},
You have entered duplicate items. Please rectify and try again.,Ha introducido elementos duplicados . Por favor rectifique y vuelva a intentarlo .,
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,"Para poder registrarse en Marketplace, debe ser un usuario que no sea Administrador con funciones de Administrador del Sistema y Administrador de Artículos.",
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Debe ser un usuario con funciones de Administrador del sistema y Administrador de artículos para agregar usuarios a Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Debe ser un usuario con funciones de Administrador del sistema y Administrador de artículos para registrarse en Marketplace.,
You need to 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 {}.,
