 (Half Day),(Medio día)
 against sales order,contra la orden de venta
 against same operation,contra la misma operación
 already marked,ya marcada
 and year: ,y el año:
 as it is stock Item or packing item,ya que es la acción del artículo o elemento de embalaje
 at warehouse: ,en el almacén:
 by Role ,por función
 can not be made.,no puede ser hecho.
 can not be marked as a ledger as it has existing child,"no puede ser marcado como un libro de contabilidad, ya que tiene menor existente"
 cannot be 0,no puede ser 0
 cannot be deleted.,no se puede eliminar.
 does not belong to the company,no pertenece a la empresa
 has already been submitted.,ya se ha presentado.
 has been freezed. ,ha sido freezed.
 has been freezed. \				Only Accounts Manager can do transaction against this account,ha sido congelado. \ Sólo Administrador de cuentas puede hacer en contra de esta transacción cuenta
" is less than equals to zero in the system, \						valuation rate is mandatory for this item","es menor que es igual a cero en el sistema, \ tasa de valoración es obligatoria para este artículo"
 is mandatory,es obligatorio
 is mandatory for GL Entry,Es obligatorio para la entrada GL
 is not a ledger,no es un libro de contabilidad
 is not active,no está activa
 is not set,no se ha establecido
 is now the default Fiscal Year. \			Please refresh your browser for the change to take effect.,"Ahora es el Año Fiscal defecto. \ Por favor, actualiza tu navegador para que los cambios surtan efecto."
 is present in one or many Active BOMs,está presente en una o varias listas de materiales activos
 not active or does not exists in the system,no activa o no se existe en el sistema
 not submitted,no presentado
 or the BOM is cancelled or inactive,o la lista de materiales se cancela o inactivo
 should be 'Yes'. As Item: ,debería ser &quot;sí&quot;. Como artículo:
 should be same as that in ,debe ser el mismo que el de
 was on leave on ,estaba en situación de excedencia
 will be ,será
 will be over-billed against mentioned ,sobre-será facturado contra la mencionada
 will become ,se convertirá
"""Company History""",&quot;Historia de la empresa&quot;
"""Team Members"" or ""Management""",&quot;Miembros del equipo&quot; o &quot;gestión&quot;
%  Delivered,Entregado%
% Amount Billed,Importe% Anunciada
% Billed,Anunciado%
% Completed,% Completado
% Installed,Instalado%
% Received,Recibido%
% of materials billed against this Purchase Order.,% De los materiales facturados en contra de esta Orden de Compra.
% of materials billed against this Sales Order,% De los materiales facturados en contra de esta orden de venta
% of materials delivered against this Delivery Note,% De los materiales entregados en contra de esta nota de entrega
% of materials delivered against this Sales Order,% De los materiales entregados en contra de esta orden de venta
% of materials ordered against this Material Request,% De materiales ordenó en contra de esta solicitud de material
% of materials received against this Purchase Order,% Del material recibido en contra de esta Orden de Compra
"' can not be managed using Stock Reconciliation.\					You can add/delete Serial No directly, \					to modify stock of this item.","&#39;No puede gestionarse a través de la reconciliación de Valores. \ Puede añadir / eliminar Serial No directamente, \ para modificar existencias de este artículo."
' in Company: ,&quot;En la empresa:
'To Case No.' cannot be less than 'From Case No.',&#39;Para el caso núm&#39; no puede ser inferior a &#39;De Caso No.&#39;
* Will be calculated in the transaction.,* Se calcula de la transacción.
"**Budget Distribution** helps you distribute your budget across months if you have seasonality in your business.To distribute a budget using this distribution, set this **Budget Distribution** in the **Cost Center**","Distribución del presupuesto ** ** le ayuda a distribuir su presupuesto a través de meses, si usted tiene la estacionalidad en su business.To distribuir un presupuesto utilizando esta distribución, establezca esta distribución del presupuesto ** ** en el centro de coste ** **"
**Currency** Master,Moneda ** ** Maestro
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,Año Fiscal ** ** representa un ejercicio. Los asientos contables y otras transacciones importantes se siguen contra ** Ejercicio **.
. Outstanding cannot be less than zero. \				 	Please match exact outstanding.,. Pendiente no puede ser inferior a cero. \ Por favor coincidir exactamente excepcional.
. Please set status of the employee as 'Left',". Por favor, establecer el estado del empleado como de &quot;izquierda&quot;"
. You can not mark his attendance as 'Present',. No se puede marcar su asistencia como &quot;presente&quot;
"000 is black, fff is white","000 es negro, es blanco fff"
1 Currency = [?] FractionFor e.g. 1 USD = 100 Cent,"1 Moneda = [?] FractionFor por ejemplo, 1 USD = 100 Cent"
1. To maintain the customer wise item code and to make them searchable based on their code use this option,"1. Para mantener el código de artículo del cliente racional, y efectuar búsquedas en ellos sobre la base de su código de usar esta opción"
12px,12px
13px,13px
14px,14px
15px,15px
16px,16px
2 days ago,Hace 2 días
: Duplicate row from same ,: Duplicar fila del mismo
: It is linked to other active BOM(s),: Está vinculado a otro BOM activo (s)
: Mandatory for a Recurring Invoice.,: Obligatorio para una factura recurrente.
"<a href=""#!Sales Browser/Customer Group"">To manage Customer Groups, click here</a>","<a href=""#!Sales Browser/Customer Group"">Para administrar grupos de clientes, haga clic aquí</a>"
"<a href=""#!Sales Browser/Item Group"">Manage Item Groups</a>","<a href=""#!Sales Browser/Item Group"">Gestionar grupos de artículos</a>"
"<a href=""#!Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#!Sales Browser/Territory"">Para gestionar Territorio, haga clic aquí</a>"
"<a href=""#Sales Browser/Customer Group"">Manage Customer Groups</a>","<a href=""#Sales Browser/Customer Group"">Gestionar grupos de clientes</a>"
"<a href=""#Sales Browser/Customer Group"">To manage Territory, click here</a>","<a href=""#Sales Browser/Customer Group"">Para gestionar Territorio, haga clic aquí</a>"
"<a href=""#Sales Browser/Item Group"">Manage Item Groups</a>","<a href=""#Sales Browser/Item Group"">Administrar los grupos de artículos</a>"
"<a href=""#Sales Browser/Territory"">Territory</a>","<a href=""#Sales Browser/Territory"">Territorio</a>"
"<a href=""#Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#Sales Browser/Territory"">Para gestionar Territorio, haga clic aquí</a>"
"<a onclick=""msgprint('<ol>\<li><b>field:[fieldname]</b> - By Field\<li><b>naming_series:</b> - By Naming Series (field called naming_series must be present\<li><b>eval:[expression]</b> - Evaluate an expression in python (self is doc)\<li><b>Prompt</b> - Prompt user for a name\<li><b>[series]</b> - Series by prefix (separated by a dot); for example PRE.#####\</ol>')"">Naming Options</a>","<a onclick=""msgprint('<ol>\<li><b>field:[fieldname]</b> - By Field\<li><b>naming_series:</b> - By Naming Series (field called naming_series must be present\<li><b>eval:[expression]</b> - Evaluate an expression in python (self is doc)\<li><b>Prompt</b> - Prompt user for a name\<li><b>[series]</b> - Series by prefix (separated by a dot); for example PRE.#####\</ol>')"">Opciones de nombre</a>"
<b>Cancel</b> allows you change Submitted documents by cancelling them and amending them.,<b>Cancel</b> le permite cambiar los documentos presentados por cancelarlos y enmendarlos.
"<span class=""sys_manager"">To setup, please go to Setup > Naming Series</span>","<span class=""sys_manager"">Para configurar, por favor, vaya a Configuración&gt; Serie de nombres</span>"
A Customer exists with same name,Un cliente que existe con el mismo nombre
A Lead with this email id should exist,Un cable con este correo electrónico de identificación debe existir
"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 mantienen en stock."
A Supplier exists with same name,Un Proveedor existe con el mismo nombre
A condition for a Shipping Rule,Una condición para una regla de envío
A logical Warehouse against which stock entries are made.,Un almacen de depósito lógico en el que las entradas en existencias están hechos.
A new popup will open that will ask you to select further conditions.,Una ventana se abrirá que le pedirá que seleccione otras condiciones.
A symbol for this currency. For e.g. $,"Un símbolo de esta moneda. Por ejemplo, $"
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distribuidor tercero / dealer / comisionista / filial / distribuidor que vende los productos de las empresas de una comisión.
A user can have multiple values for a property.,Un usuario puede tener varios valores para una propiedad.
A+,A +
A-,A-
AB+,AB +
AB-,AB-
AMC Expiry Date,AMC Fecha de Caducidad
ATT,ATT
Abbr,Abbr
About,Sobre
About Us Settings,La Empresa Ajustes
About Us Team Member,Acerca de Nosotros Miembro del Equipo
Above Value,Por encima del valor
Absent,Ausente
Acceptance Criteria,Criterios de Aceptación
Accepted,Aceptado
Accepted Quantity,Cantidad aceptada
Accepted Warehouse,Almacén Aceptado
Account,Cuenta
Account Balance,Saldo de la cuenta
Account Details,Detalles de la cuenta
Account Head,Cuenta Head
Account Id,ID de la cuenta
Account Name,Nombre de la cuenta
Account Type,Tipo de Cuenta
Account for this ,Cuenta para este
Accounting,Contabilidad
Accounting Year.,Ejercicio contable.
"Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.","Asiento contable congelado hasta la fecha, nadie puede hacer / modificar la entrada, excepto el papel se especifica a continuación."
Accounting journal entries.,Contabilidad entradas del diario.
Accounts,Cuentas
Accounts Frozen Upto,Hasta que las cuentas congeladas
Accounts Payable,Cuentas por pagar
Accounts Receivable,Cuentas por cobrar
Accounts Settings,Configuración de cuentas
Action,Acción
Active,Activo
Active: Will extract emails from ,Activo: Will extraer correos electrónicos de
Activity,Actividad
Activity Log,Registro de actividad
Activity Type,Tipo de actividad
Actual,Real
Actual Budget,Presupuesto Real
Actual Completion Date,Fecha de Terminación del Real
Actual Date,Fecha Actual
Actual End Date,Fecha de finalización real
Actual Invoice Date,Actual Fecha de la factura
Actual Posting Date,Actual Fecha de Publicación
Actual Qty,Cantidad real
Actual Qty (at source/target),Cantidad real (en origen / destino)
Actual Qty After Transaction,Cantidad real después de la transacción
Actual Quantity,Cantidad real
Actual Start Date,Fecha real de inicio
Add,Añadir
Add / Edit Taxes and Charges,Agregar / Editar Impuestos y Cargos
Add A New Rule,Agregar una nueva regla
Add A Property,Agregue una propiedad
Add Attachments,Adición de archivos adjuntos
Add Bookmark,Añadir a Favoritos
Add CSS,Añadir CSS
Add Column,Añadir columna
Add Comment,Añadir comentario
Add Google Analytics ID: eg. UA-89XXX57-1. Please search help on Google Analytics for more information.,"Añadir Google Analytics ID: por ejemplo. UA-89XXX57-1. Por favor, ayudar a buscar en Google Analytics para obtener más información."
Add Message,Agregar mensaje
Add New Permission Rule,Añadir regla Nuevo permiso
Add Reply,Añadir respuesta
Add Terms and Conditions for the Material Request. You can also prepare a Terms and Conditions Master and use the Template,Añadir Términos y Condiciones para la solicitud de materiales. También puede preparar un documento de Términos y Condiciones dominar y utilizar la plantilla
Add Terms and Conditions for the Purchase Receipt. You can also prepare a Terms and Conditions Master and use the Template.,Añadir Términos y Condiciones para el recibo de compra. También se puede preparar a un Maestro Términos y Condiciones y el uso de la plantilla.
"Add Terms and Conditions for the Quotation like Payment Terms, Validity of Offer etc. You can also prepare a Terms and Conditions Master and use the Template","Añadir Términos y Condiciones de la Oferta como condiciones de pago, la validez de una oferta, etc También se puede preparar a un Maestro Términos y Condiciones y el uso de la plantilla"
Add Total Row,Añadir fila total
Add a banner to the site. (small banners are usually good),Añadir un banner en el sitio. (Pequeños banners son generalmente buenos)
Add attachment,Añadir adjunto
Add code as &lt;script&gt;,Agregue código como &lt;script&gt;
Add new row,Añadir nueva fila
Add or Deduct,Agregar o deducir
Add rows to set annual budgets on Accounts.,Añada filas para fijar presupuestos anuales de Cuentas.
"Add the name of <a href=""http://google.com/webfonts"" target=""_blank"">Google Web Font</a> e.g. ""Open Sans""","Añadir el nombre de <a href=""http://google.com/webfonts"" target=""_blank"">Google Web Font</a> ejemplo &quot;Open Sans&quot;"
Add to To Do,Añadir a To Do
Add to To Do List of,Agregar a la lista de tareas de
Add/Remove Recipients,Agregar / Quitar destinatarios
Additional Info,Información adicional
Address,Dirección
Address & Contact,Dirección y contacto
Address & Contacts,Dirección y contactos
Address Desc,Abordar la descripción
Address Details,Detalles de las direcciones
Address HTML,Dirección HTML
Address Line 1,Dirección Línea 1
Address Line 2,Dirección Línea 2
Address Title,Título Dirección
Address Type,Tipo de dirección
Address and other legal information you may want to put in the footer.,Dirección y otra información legal es posible que desee poner en el pie de página.
Address to be displayed on the Contact Page,Dirección que se mostrará en la página de contacto
Adds a custom field to a DocType,Agrega un campo personalizado a un tipo de documento
Adds a custom script (client or server) to a DocType,Añade un script personalizado (cliente o servidor) a un tipo de documento
Advance Amount,Avance Importe
Advance amount,Avance cantidad
Advanced Scripting,Advanced Scripting
Advanced Settings,Configuración avanzada
Advances,Insinuaciones
Advertisement,Anuncio
After Sale Installations,Después Instalaciones Venta
Against,Contra
Against Account,Contra Cuenta
Against Docname,Contra DocNombre
Against Doctype,Contra Doctype
Against Document Date,Contra Fecha del Documento
Against Document Detail No,Contra Detalle documento n
Against Document No,Contra el documento n º
Against Expense Account,Contra la Cuenta de Gastos
Against Income Account,Contra la Cuenta de Ingresos
Against Journal Voucher,Contra del diario de comprobantes
Against Purchase Invoice,Contra la factura de compra
Against Sales Invoice,Contra la factura de venta
Against Voucher,Contra Voucher
Against Voucher Type,Contra el tipo de comprobante
Agent,Agente
"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**. The package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".For 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 Sales BOM Item.Note: BOM = Bill of Materials","Grupo global de productos ** ** en otro artículo **. ** Esto es útil si usted está empaquetando un cierto ** ** Los productos en un paquete y usted mantiene un balance de los artículos envasados ​​** ** y no el agregado del artículo **. ** El paquete ** artículo ** habrá &quot;es el tema de&quot; como &quot;No&quot; y &quot;¿Sales Item&quot; como &quot;Sí&quot;, por ejemplo:. Si usted está vendiendo computadoras portátiles y Mochilas por separado y recibir un descuento si el cliente compra a la vez , entonces el ordenador portátil + Mochila será una nueva lista de materiales de ventas Item.Note: BOM = Bill de Materiales"
Aging Date,Fecha de antigüedad
All Addresses.,Todas las direcciones.
All Contact,Todo contacto
All Contacts.,Todos los contactos.
All Customer Contact,Todo servicio al cliente
All Day,Todo el día
All Employee (Active),Todos los empleados (Activo)
All Lead (Open),Todos Plomo (Abierto)
All Products or Services.,Todos los Productos o Servicios.
All Sales Partner Contact,Todo contacto Sales Partner
All Sales Person,Todas Ventas Persona
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Todas las transacciones de ventas pueden ser marcados en contra de varias personas de ventas ** ** por lo que puede establecer y supervisar los objetivos.
All Supplier Contact,Todo contacto Proveedor
"All account columns should be after \							standard columns and on the right.							If you entered it properly, next probable reason \							could be wrong account name.							Please rectify it in the file and try again.","Todas las columnas de cuentas deben ser posterior al \ columnas estándar y el de la derecha. Si ha introducido correctamente, junto razón \ probable podría ser el nombre de cuenta equivocado. Por favor, rectificarla en el archivo y vuelva a intentarlo."
"All export related fields like currency, conversion rate, export total, export grand total etc are available in <br>Delivery Note, POS, Quotation, Sales Invoice, Sales Order etc.","Todos los campos relacionados, como la exportación de moneda, tasa de conversión, el total de las exportaciones, exportación, etc total general están disponibles en <br> Nota de entrega, puntos de venta, cotización, factura de compra, órdenes de venta, etc"
"All import related fields like currency, conversion rate, import total, import grand total etc are available in <br>Purchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.","Todos los campos relacionados, como la importación de moneda, tasa de conversión, el total de las importaciones, importación, etc total general están disponibles en <br> Recibo de compra, cotización del proveedor, factura de compra, orden de compra, etc"
All items have already been transferred \				for this Production Order.,Todos los artículos han sido ya traspasada \ para esta orden de producción.
"All possible Workflow States and roles of the workflow. <br>Docstatus Options: 0 is""Saved"", 1 is ""Submitted"" and 2 is ""Cancelled""","Todos los Estados de flujo de trabajo y roles posibles del flujo de trabajo. <br> Opciones DocStatus: 0 El &quot;Salvados&quot;, 1 es &quot;enviado&quot; y 2 es &quot;Cancelado&quot;"
All posts by,Todos los mensajes de
Allocate,Asignar
Allocate leaves for the year.,Asignar las hojas para el año.
Allocated Amount,Monto Asignado
Allocated Budget,Presupuesto asignado
Allocated amount,Cantidad asignada
Allow Attach,Permitir Adjuntar
Allow Bill of Materials,Permitir Lista de materiales
Allow Dropbox Access,Permitir Dropbox acceso
Allow Editing of Frozen Accounts For,Permitir edición de cuentas congeladas con
Allow Google Drive Access,Permitir acceso Google Drive
Allow Import,Permitir la importación
Allow Import via Data Import Tool,Permitir la importación a través de herramientas de importación de datos
Allow Negative Balance,Permitir balance negativo
Allow Negative Stock,Permitir Stock Negativo
Allow Production Order,Permitir orden de producción
Allow Rename,Permitir Renombre
Allow Samples,Deje que las muestras
Allow User,Permitir al usuario
Allow Users,Permitir que los usuarios
Allow on Submit,Deje en Enviar
Allow the following users to approve Leave Applications for block days.,Permitir que los usuarios siguientes para aprobar solicitudes Dejar de días de bloque.
Allow user to edit Price List Rate in transactions,Permitir al usuario editar Lista de precios Tarifa en transacciones
Allow user to login only after this hour (0-24),Permitir al usuario iniciar sesión sólo después de esta hora (0-24)
Allow user to login only before this hour (0-24),Permitir al usuario iniciar sesión sólo antes de esta hora (0-24)
Allowance Percent,Asignación porcentual
Allowed,Animales
Already Registered,Ya está registrado
Always use Login Id as sender,Utilice siempre Id Entrar como remitente
Amend,Enmendar
Amended From,De modificada
Amount,Cantidad
Amount (Company Currency),Importe (moneda Company)
Amount <=,Importe &lt;=
Amount >=,Monto&gt; =
"An icon file with .ico extension. Should be 16 x 16 px. Generated using a favicon generator. [<a href=""http://favicon-generator.org/"" target=""_blank"">favicon-generator.org</a>]","Un archivo con el icono. Ico. En caso de ser de 16 x 16 px. Generado utilizando un generador de favicon. [ <a href=""http://favicon-generator.org/"" target=""_blank"">favicon-generator.org</a> ]"
Analytics,Analítica
Another Salary Structure '%s' is active for employee '%s'. 				Please make its status 'Inactive' to proceed.,Otra estructura salarial &#39;% s&#39; es empleado activo para &#39;% s&#39;. Por favor haga su estado &quot;Inactivo&quot; para proceder.
"Any other comments, noteworthy effort that should go in the records.","Cualquier otro comentario, el esfuerzo notable que debe ir en los registros."
Applicable Holiday List,Lista Casas aplicable
Applicable To (Designation),Aplicable a (Designación)
Applicable To (Employee),Aplicable a (Empleado)
Applicable To (Role),Aplicable a (Función)
Applicable To (User),Aplicable a (Usuario)
Applicant Name,Nombre del solicitante
Applicant for a Job,Pretendiente a un puesto
Applicant for a Job.,Solicitante de empleo.
Applications for leave.,Las solicitudes de licencia.
Applies to Company,Corresponde a la Empresa
Apply / Approve Leaves,Aplicar / Aprobar Hojas
Apply Shipping Rule,Aplicar la regla del envío
Apply Taxes and Charges Master,Aplicar impuestos y las cargas Maestro
Appraisal,Evaluación
Appraisal Goal,Evaluación Meta
Appraisal Goals,Objetivos Apreciación
Appraisal Template,Evaluación de plantilla
Appraisal Template Goal,Evaluación Meta plantilla
Appraisal Template Title,Evaluación título de la plantilla
Approval Status,Estado de aprobación
Approved,Aprobado
Approver,Aprobador
Approving Role,La aprobación de Papel
Approving User,Aprobación de Usuario
Are you sure you want to delete the attachment?,¿Está seguro que desea eliminar el archivo adjunto?
Arial,Arial
Arrear Amount,Monto de los atrasos
"As a best practice, do not assign the same set of permission rule to different Roles instead set multiple Roles to the User","Como práctica recomendada, no asigne el mismo conjunto de reglas permiso a roles diferentes en lugar establecer funciones múltiples para el usuario"
As existing qty for item: ,Como Cantidad existentes para el artículo:
As per Stock UOM,Según de la UOM
"As there are existing stock transactions for this \							item, you can not change the values of 'Has Serial No', \							'Is Stock Item' and 'Valuation Method'","Como hay transacciones de acciones existentes para este artículo \, no se puede cambiar los valores de &#39;tiene de serie n&#39;, \ &#39;¿Está Stock Item&#39; y &#39;Método de valoración&#39;"
Ascending,Ascendente
Assign To,Asignar a
Assigned By,Asignado por
Assignment,Asignación
Assignments,Asignaciones
Associate a DocType to the Print Format,Asociar un tipo de documento al formato de impresión
Atleast one warehouse is mandatory,Atleast un almacén es obligatorio
Attach,Adjuntar
Attach Document Print,Adjuntar Print Document
Attached To DocType,Se adjunta a DOCTYPE
Attached To Name,Atribuida al apellido
Attachment,Accesorio
Attachments,Archivos adjuntos
Attempted to Contact,Intentó establecer contacto con
Attendance,Asistencia
Attendance Date,Asistencia Fecha
Attendance Details,Datos de asistencia
Attendance From Date,Desde la fecha de Asistencia
Attendance To Date,Asistencia hasta la fecha
Attendance can not be marked for future dates,La asistencia no se puede marcar para fechas futuras
Attendance for the employee: ,La asistencia para el empleado:
Attendance record.,Asistencia récord.
Attributions,Atribuciones
Authorization Control,Autorización de Control
Authorization Rule,Autorización Regla
Auto Email Id,Auto Identificación del email
Auto Inventory Accounting,Contabilidad del inventario Auto
Auto Inventory Accounting Settings,Configuración de la contabilidad del inventario Auto
Auto Material Request,Auto Solicite material
Auto Name,Nombre Auto
Auto generated,Generado automáticamente
Auto-raise Material Request if quantity goes below re-order level in a warehouse,Auto-raise Solicitud de material si la cantidad está por debajo de nivel de re-orden en un almacén
Automatically updated via Stock Entry of type Manufacture/Repack,Se actualiza automáticamente a través de la entrada de Fabricación tipo / Repack
Autoreply when a new mail is received,Respuesta automática cuando un nuevo correo se recibe
Available Qty at Warehouse,Cantidad Disponible en almacén
Available Stock for Packing Items,Stock disponible para embalaje Artículos
"Available in BOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet","Disponible en la lista de materiales, albarán, factura de compra, orden de fabricación, orden de compra, recibo de compra, factura de venta, pedidos de venta, Entrada de Valores, parte de horas"
Avatar,Avatar
Average Discount,Descuento medio
B+,B +
B-,B-
BILL,BILL
BILLJ,BILLJ
BOM,BOM
BOM Detail No,BOM Detalle Desierto
BOM Explosion Item,Artículo BOM Explosion
BOM Item,Artículo BOM
BOM No,No BOM
BOM No. for a Finished Good Item,No. BOM para un buen artículo terminado
BOM Operation,BOM Operación
BOM Operations,Operaciones de la lista de materiales
BOM Replace Tool,BOM Tool Reemplazar
BOM replaced,BOM reemplazado
Background Color,Color de fondo
Background Image,Imagen de fondo
Backup Manager,Backup Manager
Backup Right Now,Copia de seguridad ahora mismo
Backups will be uploaded to,Las copias de seguridad se pueden cargar en
"Balances of Accounts of type ""Bank or Cash""",Los saldos de las cuentas de &quot;Banco o Efectivo&quot; tipo
Bank,Banco
Bank A/C No.,Bank A / C No.
Bank Account,Cuenta bancaria
Bank Account No.,Banco Número de cuenta
Bank Clearance Summary,Resumen de Liquidación del Banco
Bank Name,Nombre del banco
Bank Reconciliation,Conciliación Bancaria
Bank Reconciliation Detail,Banco Detalle Reconciliación
Bank Reconciliation Statement,Estado de conciliación bancaria
Bank Voucher,Banco Voucher
Bank or Cash,Banco o Caja
Bank/Cash Balance,Banco / Saldo de caja
Banner,Bandera
Banner HTML,Banner HTML
Banner Image,Imagen del Anuncio
Banner is above the Top Menu Bar.,Banner está por encima de la barra de menú superior.
Barcode,Código de barras
Based On,Basado en el
Basic Info,Información básica
Basic Information,Información Básica
Basic Rate,Tasa Básica
Basic Rate (Company Currency),De acceso básico (Empresa moneda)
Batch,Lote
Batch (lot) of an Item.,Batch (lote) de un elemento.
Batch Finished Date,Terminado batch Fecha
Batch ID,Identificación de lote
Batch No,Lote n º
Batch Started Date,Iniciado Fecha de lotes
Batch Time Logs for Billing.,Tiempo lotes los registros de facturación.
Batch Time Logs for billing.,Tiempo lotes los registros de facturación.
Batch-Wise Balance History,Wise lotes Historia Equilibrio
Batched for Billing,Lotes de facturación
Be the first one to comment,Sé el primero en comentar
Begin this page with a slideshow of images,Comience esta página con un pase de diapositivas de imágenes
Better Prospects,Mejores perspectivas
Bill Date,Bill Fecha
Bill No,Bill no
Bill of Material to be considered for manufacturing,Lista de materiales para ser considerado para la fabricación
Bill of Materials,Lista de materiales
Bill of Materials (BOM),Lista de Materiales (BOM)
Billable,Facturable
Billed,Anunciada
Billed Amt,Billed Amt
Billing,Facturación
Billing Address,Dirección de Facturación
Billing Address Name,Nombre Dirección de facturación
Billing Status,Facturación de Estado
Bills raised by Suppliers.,Proyectos de ley planteada por los Proveedores.
Bills raised to Customers.,Bills elevado a Clientes.
Bin,Papelera
Bio,Bio
Bio will be displayed in blog section etc.,"Bio se mostrará en la sección de blogs, etc"
Birth Date,Fecha de Nacimiento
Blob,Gota
Block Date,Bloque Fecha
Block Days,Días de bloque
Block Holidays on important days.,Bloque Vacaciones en días importantes.
Block leave applications by department.,Bloque dejar aplicaciones por departamento.
Blog Category,Blog Categoría
Blog Intro,Blog Intro
Blog Introduction,Blog Introducción
Blog Post,Blog
Blog Settings,Configuración de blog
Blog Subscriber,Blog suscriptor
Blog Title,Título del blog
Blogger,Blogger
Blood Group,Grupo sanguíneo
Bookmarks,Marcadores
Branch,Rama
Brand,Marca
Brand HTML,Marca HTML
Brand Name,Marca
"Brand is what appears on the top-right of the toolbar. If it is an image, make sure ithas a transparent background and use the &lt;img /&gt; tag. Keep size as 200px x 30px","La marca es lo que aparece en la parte superior derecha de la barra de herramientas. Si se trata de una imagen, hacer ithas seguro de un fondo transparente y el uso de la etiqueta &lt;img /&gt;. Mantener el tamaño 200px x 30px como"
Brand master.,Marca maestro.
Brands,Marcas
Breakdown,Desglose
Budget,Presupuesto
Budget Allocated,Presupuesto asignado
Budget Control,Control del Presupuesto
Budget Detail,Presupuesto Detalle
Budget Details,Datos del Presupuesto
Budget Distribution,Distribución del presupuesto
Budget Distribution Detail,Presupuesto Detalle Distribución
Budget Distribution Details,Detalles Distribución del presupuesto
Budget Variance Report,Informe Varianza Presupuesto
Build Modules,Construir módulos
Build Pages,Creación de páginas
Build Server API,Construir API servidor
Build Sitemap,Construir Sitemap
Bulk Email,E-mail a granel
Bulk Email records.,Correo electrónico masivo registros.
Bummer! There are more holidays than working days this month.,Bummer! Hay más vacaciones que los días de trabajo este mes.
Bundle items at time of sale.,Agrupe elementos en tiempo de venta.
Button,Botón
Buyer of Goods and Services.,Comprador de Bienes y Servicios.
Buying,Comprar
Buying Amount,Comprar Cantidad
Buying Settings,Comprar Configuración
By,Por
C-FORM/,C-FORM /
C-Form,C-Form
C-Form Applicable,C-forma como se aplican
C-Form Invoice Detail,C-Form Detalle de la factura
C-Form No,C-Formulario No
CI/2010-2011/,CI/2010-2011 /
COMM-,COMM-
CSS,CSS
CUST,CUST
CUSTMUM,CUSTMUM
Calculate Based On,Calcula debido al
Calculate Total Score,Calcular la puntuación total
Calendar,Calendario
Calendar Events,Calendario de Eventos
Call,Llamar
Campaign,Campaña
Campaign Name,Nombre de la campaña
Can only be exported by users with role 'Report Manager',Solo puede ser exportado por los usuarios &quot;Administrador de informes &#39;papel
Cancel,Cancelar
Cancel permission also allows the user to delete a document (if it is not linked to any other document).,Cancelar permiso también permite al usuario eliminar un documento (si no está vinculado a ningún otro documento).
Cancelled,Cancelado
Cannot ,No se puede
Cannot approve leave as you are not authorized to approve leaves on Block Dates.,No se puede aprobar dejar ya que no está autorizado para aprobar las hojas en Fechas de bloque.
Cannot change from,No se puede cambiar de
Cannot continue.,No se puede continuar.
Cannot have two prices for same Price List,No se puede tener dos precios para el mismo Lista de Precios
Cannot map because following condition fails: ,No se puede asignar por la condición siguiente falla:
Capacity,Capacidad
Capacity Units,Unidades de capacidad
Carry Forward,Llevar adelante
Carry Forwarded Leaves,Llevar Hojas reenviados
Case No(s) already in use. Please rectify and try again.				Recommended <b>From Case No. = %s</b>,"Asunto (s) ya en uso. Por favor, rectificar y vuelva a intentarlo. Recomendado <b>Desde Caso No. =% s</b>"
Cash,Efectivo
Cash Voucher,Cash Voucher
Cash/Bank Account,Efectivo / Cuenta Bancaria
Categorize blog posts.,Clasificar las entradas del blog.
Category,Categoría
Category Name,Nombre Categoría
Category of customer as entered in Customer master,Categoría de cliente tal como aparece en Maestro de clientes
Cell Number,Móvil Número
Center,Centro
"Certain documents should not be changed once final, like an Invoice for example. The final state for such documents is called <b>Submitted</b>. You can restrict which roles can Submit.","Algunos documentos no se deben cambiar una vez final, como una factura, por ejemplo. El estado final de dichos documentos se llama <b>Enviado.</b> Puede restringir qué roles pueden Submit."
Change UOM for an Item.,Cambiar UOM de un elemento.
Change the starting / current sequence number of an existing series.,Cambiar el número de secuencia de arranque / corriente de una serie existente.
Channel Partner,Channel Partner
Charge,Cargo
Chargeable,Cobrable
Chart of Accounts,Plan General de Contabilidad
Chart of Cost Centers,Gráfico de centros de coste
Chat,Charlar
Check,Comprobar
Check / Uncheck roles assigned to the Profile. Click on the Role to find out what permissions that Role has.,Compruebe / roles Desmarcar asignado al perfil. Haga clic en la función para averiguar qué permisos que rol tiene.
Check all the items below that you want to send in this digest.,Compruebe todos los puntos a continuación que desea enviar en este compendio.
Check how the newsletter looks in an email by sending it to your email.,Comprobar cómo el boletín se ve en un correo electrónico mediante el envío a su correo electrónico.
"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Compruebe si factura recurrente, desmarque para detener recurrente o poner fecha de finalización correcta"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Compruebe si necesita automáticas facturas recurrentes. Después de presentar cualquier factura de venta, sección recurrente será visible."
Check if you want to send salary slip in mail to each employee while submitting salary slip,Compruebe si usted desea enviar nómina en el correo a cada empleado durante la presentación de nómina
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 forzar al usuario a seleccionar una serie antes de guardar. No habrá ningún defecto si usted comprueba esto.
Check this if you want to send emails as this id only (in case of restriction by your email provider).,"Seleccione esta opción si desea enviar mensajes de correo electrónico, ya que sólo este id (en caso de restricción de su proveedor de correo electrónico)."
Check this if you want to show in website,Seleccione esta opción si desea mostrar en la página web
Check this to disallow fractions. (for Nos),Active esta opción para no permitir fracciones. (De números)
Check this to make this the default letter head in all prints,Marca esta casilla para hacer esta cabeza defecto la carta en todas las impresiones
Check this to pull emails from your mailbox,Marque esta opción para extraer los correos electrónicos de su buzón
Check to activate,Compruebe para activar
Check to make Shipping Address,Verifique que la dirección de envío
Check to make primary address,Verifique que la dirección principal
Checked,Comprobado
Cheque,Cheque
Cheque Date,Fecha Cheque
Cheque Number,Número de Cheque
Child Tables are shown as a Grid in other DocTypes.,Tablas secundarias se muestran como una cuadrícula en DocTypes otros.
City,Ciudad
City/Town,Ciudad / Pueblo
Claim Amount,Monto de Reclamación
Claims for company expense.,Las reclamaciones por los gastos de la empresa.
Class / Percentage,Clase / Porcentaje
Classic,Clásico
Classification of Customers by region,Clasificación de los clientes por región
Clear Cache & Refresh,Borrar la caché y Actualizar
Clear Table,Borrar tabla
Clearance Date,Liquidación Fecha
"Click on ""Get Latest Updates""",Haga clic en &quot;Get Últimas actualizaciones&quot;
Click on 'Make Sales Invoice' button to create a new Sales Invoice.,Haga clic en el botón para crear una nueva factura de venta &#39;Factura Make&#39;.
Click on button in the 'Condition' column and select the option 'User is the creator of the document',Haga clic en el botón de la &quot;condición&quot; columna y seleccione la opción &#39;Usuario es el creador del documento&#39;
Click to Expand / Collapse,Haga clic aquí para Expandir / Contraer
Client,Cliente
Close,Cerrar
Closed,Cerrado
Closing Account Head,Cierre Head cuenta
Closing Date,Fecha tope
Closing Fiscal Year,Cerrando el Año Fiscal
CoA Help,CoA Ayuda
Code,Código
Cold Calling,Llamadas en frío
Color,Color
Column Break,Salto de columna
Comma separated list of email addresses,Lista separada por comas de direcciones de correo electrónico
Comment,Comentario
Comment By,Comentario por
Comment By Fullname,Comentario por Fullname
Comment Date,Comentarios Fecha
Comment Docname,Opina DocNombre
Comment Doctype,Opina Doctype
Comment Time,Opina Tiempo
Comments,Comentarios
Commission Rate,Comisión de Tarifas
Commission Rate (%),Comisión de Tarifas (%)
Commission partners and targets,Comisión socios y metas
Communication,Comunicación
Communication HTML,Comunicación HTML
Communication History,Historial de comunicaciones
Communication Medium,Comunicación Medio
Communication log.,Comunicación de registro.
Company,Empresa
Company Details,Datos de la empresa
Company History,Historia de la empresa
Company History Heading,La compañía Historia de la rúbrica
Company Info,Información de la compañía
Company Introduction,Presentación de la empresa
Company Master.,Maestro Company.
Company Name,Nombre de la compañía
Company Settings,Configuración de la compañía
Company branches.,Sucursales de la compañía.
Company departments.,Departamentos de la empresa.
Company is missing or entered incorrect value,Empresa se encuentra o entró valor incorrecto
Company mismatch for Warehouse,Desajuste de la empresa Almacén
Company registration numbers for your reference. Example: VAT Registration Numbers etc.,"Número de registro mercantil para su referencia. Ejemplo: Números de Registro de IVA, etc"
Company registration numbers for your reference. Tax numbers etc.,"Número de registro mercantil para su referencia. Cifras impositivas, etc"
Complaint,Queja
Complete,Completar
Complete By,Completa Por
Completed,Terminado
Completed Qty,Completado Cantidad
Completion Date,Fecha de Terminación
Completion Status,Terminación del Estado
Confirmed orders from Customers.,Confirmado pedidos de clientes.
Consider Tax or Charge for,Considere la posibilidad de impuesto o tasa para
"Consider this Price List for fetching rate. (only which have ""For Buying"" as checked)","Considere esta lista de precios para ir a buscar cambio. (Sólo que han &quot;para la compra&quot;, como marcada)"
Considered as Opening Balance,Considerado como el balance de apertura
Considered as an Opening Balance,Considerado como un saldo inicial
Consultant,Consultor
Consumed Qty,Cantidad consumida
Contact,Contacto
Contact Control,Póngase en contacto con el Control
Contact Desc,Póngase en contacto con la descripción
Contact Details,Contacto
Contact Email,Correo electrónico de contacto
Contact HTML,Contactar con HTML
Contact Info,Información de contacto
Contact Mobile No,Contacto Móvil No
Contact Name,Nombre de contacto
Contact No.,Contactar No.
Contact Person,Persona de Contacto
Contact Type,Tipo de contacto
Contact Us Settings,Contáctenos Configuración
Contact in Future,Póngase en contacto con en el Futuro
"Contact options, like ""Sales Query, Support Query"" etc each on a new line or separated by commas.","Opciones de contacto, como &quot;Consulta de Ventas, Soporte de consultas&quot;, etc cada uno en una nueva línea o separados por comas."
Contacted,Contactado
Content,Contenido
Content Type,Tipo de Contenido
Content in markdown format that appears on the main side of your page,El contenido en formato Markdown que aparece en la parte principal de su página
Content web page.,Contenido de la página web.
Contra Voucher,Contra Voucher
Contract End Date,Fecha de finalización del contrato
Contribution (%),Contribución (%)
Contribution to Net Total,Contribución total neto
Control Panel,Panel de control
Conversion Factor,Factor de conversión
Conversion Rate,Conversión de Tasa de
Convert into Recurring Invoice,Convertir en factura recurrente
Converted,Convertido
Copy,Copie
Copy From Item Group,Copiar de Grupo de artículos
Copyright,Derechos de autor
Core,Núcleo
Cost Center,De centros de coste
Cost Center Details,Costo Detalles Center
Cost Center Name,Costo Nombre del centro
Cost Center is mandatory for item: ,Centro de Costo es obligatoria para el artículo:
Cost Center must be specified for PL Account: ,Centro de coste se debe especificar para la Cuenta PL:
Costing,Costeo
Country,País
Country Name,Nombre País
Create,Crear
Create Bank Voucher for the total salary paid for the above selected criteria,"Crear comprobante bancario por el salario total pagado por los criterios anteriormente indicados,"
Create Material Requests,Crear solicitudes de material
Create Production Orders,Cree órdenes de producción
Create Receiver List,Crear Lista de receptores
Create Salary Slip,Crear nómina
Create Stock Ledger Entries when you submit a Sales Invoice,Creación de entradas del libro mayor al momento de enviar una factura de venta
"Create a price list from Price List master and enter standard ref rates against each of them. On selection of a price list in Quotation, Sales Order or Delivery Note, corresponding ref rate will be fetched for this item.","Crear una lista de precios de maestro Lista de precios y entrar en las tarifas estándar ref contra cada uno de ellos. Al seleccionar una lista de precios de cotización, orden de venta o nota de entrega, la tasa de ref correspondiente será descargado por este concepto."
Create and Send Newsletters,Creación y envío de Newsletters
Created Account Head: ,Creado Jefe de la cuenta:
Created By,Creado por
Created Customer Issue,Cliente Creado Issue
Created Group ,Creado Grupo
Created Opportunity,Creado Oportunidades
Created Support Ticket,Soporte Creado Ticket
Creates salary slip for above mentioned criteria.,Crea nómina de los criterios antes mencionados.
Credentials,Cartas credenciales
Credit,Crédito
Credit Amt,Credit Amt
Credit Card Voucher,Credit Card Voucher
Credit Controller,Credit Controller
Credit Days,Días de crédito
Credit Limit,Límite de Crédito
Credit Note,Nota de Crédito
Credit To,Crédito Para
Cross Listing of Item in multiple groups,Cruce Listado de artículos en varios grupos
Currency,Moneda
Currency Exchange,Cambio de divisas
Currency Format,Formato de moneda
Currency Name,Nombre de divisas
Currency Settings,Configuración de divisas
Currency and Price List,Moneda y Lista de Precios
Currency does not match Price List Currency for Price List,Moneda no coincide Precio de lista Moneda de Lista de Precios
Current Accommodation Type,Tipo de alojamiento actual
Current Address,Dirección actual
Current BOM,BOM actual
Current Fiscal Year,Año fiscal actual
Current Stock,Stock actual
Current Stock UOM,UOM Stock actual
Current Value,Valor actual
Current status,Situación actual
Custom,Costumbre
Custom Autoreply Message,Custom mensaje de respuesta automática
Custom CSS,Custom CSS
Custom Field,Campo personalizado
Custom Message,Mensaje personalizado
Custom Reports,Informes personalizados
Custom Script,Secuencia de personalización
Custom Startup Code,Código de inicio personalizada
Custom?,Custom?
Customer,Cliente
Customer (Receivable) Account,Cuenta Cliente (por cobrar)
Customer / Item Name,Cliente / Nombre del elemento
Customer Account,Atención al cliente
Customer Account Head,Jefe de Cuenta Cliente
Customer Address,Dirección del cliente
Customer Addresses And Contacts,Las direcciones de clientes y contactos
Customer Code,Código de Cliente
Customer Codes,Códigos de clientes
Customer Details,Detalles del Cliente
Customer Discount,Descuento al cliente
Customer Discounts,Descuentos Cliente
Customer Feedback,Comentarios del cliente
Customer Group,Grupo de clientes
Customer Group Name,Nombre del cliente Grupo
Customer Intro,Introducción al Cliente
Customer Issue,Customer Issue
Customer Issue against Serial No.,Problema al cliente contra el número de serie
Customer Name,Nombre del cliente
Customer Naming By,Cliente de nomenclatura
Customer Type,Tipo de cliente
Customer classification tree.,Cliente árbol de clasificación.
Customer database.,Cliente de base de datos.
Customer's Currency,Cliente de divisas
Customer's Item Code,Cliente Código del artículo
Customer's Purchase Order Date,Compra del Cliente Fecha de la Orden
Customer's Purchase Order No,Orden de Compra del Cliente No
Customer's Vendor,Cliente Proveedor
Customer's currency,Cliente moneda
"Customer's currency - If you want to select a currency that is not the default currency, then you must also specify the Currency Conversion Rate.","Moneda del cliente - Si desea seleccionar una moneda que no es la moneda por defecto, entonces también se debe especificar el porcentaje de conversiones de moneda."
Customers Not Buying Since Long Time,Los clientes no comprar desde Long Time
Customerwise Discount,Customerwise descuento
Customize,Personalizar
Customize Form,Personalizar formulario
Customize Form Field,Personalización de campos de formulario
"Customize Label, Print Hide, Default etc.","Personaliza etiquetas, Hide impresión, etc predeterminado"
Customize the Notification,Personalizar la notificación
Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,Personalizar el texto introductorio que va como una parte de dicho mensaje. Cada transacción tiene un texto introductorio separado.
DN,DN
DN Detail,DN Detalle
Daily,Diario
Daily Event Digest is sent for Calendar Events where reminders are set.,Diario Evento Resumen se envía para eventos de calendario en que se configura recordatorios.
Daily Time Log Summary,Resumen del registro de tiempo diario
Danger,Peligro
Data,Datos
Data missing in table,Los datos que faltan en la tabla
Database,Base de datos
Database Folder ID,Base de datos ID Folder
Database of potential customers.,Base de datos de clientes potenciales.
Date,Fecha
Date Format,Formato de fecha
Date Of Retirement,Fecha de la jubilación
Date and Number Settings,Fecha y número de Ajustes
Date is repeated,La fecha se repite
Date must be in format,La fecha debe estar en formato
Date of Birth,Fecha de nacimiento
Date of Issue,Fecha de emisión
Date of Joining,Fecha de ingreso a
Date on which lorry started from supplier warehouse,Fecha en la que el camión partió de almacén proveedor
Date on which lorry started from your warehouse,Fecha en la que el camión comenzó a partir de su almacén
Date on which the lead was last contacted,Fecha en la que se estableció contacto con el plomo último
Dates,Fechas
Datetime,Fecha y hora
Days for which Holidays are blocked for this department.,Días de fiesta que están bloqueados para este departamento.
Dealer,Comerciante
Dear,Querido
Debit,Débito
Debit Amt,Débito Amt
Debit Note,Nota de Débito
Debit To,Para Débito
Debit or Credit,Débito o Crédito
Deduct,Deducir
Deduction,Deducción
Deduction Type,Deducción Tipo
Deduction1,Deduction1
Deductions,Deducciones
Default,Defecto
Default Account,Cuenta predeterminada
Default BOM,Por defecto BOM
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Por defecto Banco / Caja cuenta se actualiza automáticamente en la factura POS cuando se selecciona este modo.
Default Bank Account,Cuenta predeterminada Banco
Default Cash Account,Cuenta de Tesorería por defecto
Default Commission Rate,Tasa de Incumplimiento Comisión
Default Company,Predeterminado de la compañía
Default Cost Center,Defecto de centros de coste
Default Cost Center for tracking expense for this item.,Defecto de centros de coste para el seguimiento de los gastos por este concepto.
Default Currency,Moneda predeterminada
Default Customer Group,Valor predeterminado de grupo al Cliente
Default Expense Account,Cuenta predeterminada de gastos
Default Home Page,Página de inicio por defecto
Default Home Pages,Páginas de inicio por defecto
Default Income Account,Cuenta predeterminada de Ingresos
Default Item Group,Valor predeterminado de grupo del artículo
Default Price List,Por defecto Lista de precios
Default Print Format,Por defecto Formato de impresión
Default Purchase Account in which cost of the item will be debited.,Cuenta predeterminada de compra en las que el precio del artículo será debitada.
Default Sales Partner,Ventas predeterminados de los asociados
Default Settings,Configuración predeterminada
Default Source Warehouse,Predeterminado fuente de depósito
Default Stock UOM,Defecto de la UOM
Default Supplier,Defecto Proveedor
Default Supplier Type,Tipo predeterminado Proveedor
Default Target Warehouse,Por defecto destino de depósito
Default Territory,Por defecto Territorio
Default Unit of Measure,Defecto Unidad de medida
Default Valuation Method,Por defecto Método de Valoración
Default Value,Valor por omisión
Default Warehouse,Almacén por defecto
Default Warehouse is mandatory for Stock Item.,Almacén defecto es obligatorio para Stock Item.
Default settings for Shopping Cart,Los ajustes por defecto para Compras
"Default: ""Contact Us""",Por defecto: &quot;Contact Us&quot;
DefaultValue,DefaultValue
Defaults,Predeterminados
"Define Budget for this Cost Center. To set budget action, see <a href=""#!List/Company"">Company Master</a>","Definir Presupuesto para este Centro de Costo. Para configurar la acción presupuesto, consulte <a href=""#!List/Company"">empresa Master</a>"
Defines actions on states and the next step and allowed roles.,Define las acciones que los Estados y el siguiente paso y los roles permitidos.
Defines workflow states and rules for a document.,Define los estados de flujo de trabajo y las reglas para un documento.
Delete,Borrar
Delete Row,Eliminar fila
Delivered,Liberado
Delivered Items To Be Billed,Material que se adjunta a facturar
Delivered Qty,Cantidad Entregada
Delivery Address,Dirección de entrega
Delivery Date,Fecha de Entrega
Delivery Details,Detalles de la entrega
Delivery Document No,Envío de Documentos No
Delivery Document Type,Entrega Tipo de documento
Delivery Note,Nota de entrega
Delivery Note Item,Nota de entrega del artículo
Delivery Note Items,Artículos de entrega Nota
Delivery Note Message,Entrega de mensajes Nota
Delivery Note No,Entrega Nota No
Packed Item,Nota de Entrega Embalaje artículo
Delivery Note Required,Nota de entrega requerida
Delivery Note Trends,Tendencias albarán
Delivery Status,Estado de entrega
Delivery Time,Tiempo de Entrega
Delivery To,Entrega Para
Department,Departamento
Depends On,Depende del
Depends on LWP,Depende LWP
Descending,Descendente
Description,Descripción
Description HTML,Descripción HTML
"Description for listing page, in plain text, only a couple of lines. (max 140 characters)","Descripción para la página de perfil, en texto sin formato, sólo un par de líneas. (Máx. 140 caracteres)"
Description for page header.,Descripción de encabezado de la página.
Description of a Job Opening,Descripción de una oferta de trabajo
Designation,Designación
Desktop,Escritorio
Detailed Breakup of the totals,Breakup detallada de los totales
Details,Detalles
Deutsch,Deutsch
Did not add.,No agregar.
Did not cancel,No canceló
Did not save,No guarde
Difference,Diferencia
"Different ""States"" this document can exist in. Like ""Open"", ""Pending Approval"" etc.","Different &quot;Estados&quot; este documento pueden existir pulg Al igual que en &quot;Abrir&quot;, &quot;Pendiente de aprobación&quot;, etc"
Disable Customer Signup link in Login page,Desactivar la conexión cliente Registro en la página de Inicio de sesión
Disable Rounded Total,Desactivar Total redondeado
Disable Signup,Desactivar Regístrate
Disabled,Discapacitado
Discount  %,Descuento%
Discount %,Descuento%
Discount (%),Descuento (%)
"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Los campos con descuento estará disponible en la Orden de Compra, recibo de compra, factura de compra"
Discount(%),Descuento (%)
Display,Mostrar
Display Settings,Configuración de pantalla
Display all the individual items delivered with the main items,Muestra todos los elementos individuales se entregan con las principales partidas
Distinct unit of an Item,Unidad distinta de un elemento
Distribute transport overhead across items.,Distribuya encima transporte a través de los elementos.
Distribution,Distribución
Distribution Id,ID Distribution
Distribution Name,Distribución Nombre
Distributor,Distribuidor
Divorced,Divorciado
Do not show any symbol like $ etc next to currencies.,No muestra ningún símbolo como $ etc junto a monedas.
Doc Name,Doc. Nombre
Doc Status,Doc. Estado
Doc Type,Tipo Doc.
DocField,DocField
DocPerm,DocPerm
DocType,DOCTYPE
DocType Details,Detalles Tipo de documento
DocType is a Table / Form in the application.,Tipo de documento es una tabla / formulario en la aplicación.
DocType on which this Workflow is applicable.,DOCTYPE en el que este flujo de trabajo es aplicable.
DocType or Field,Tipo de documento o Campo
Document,Documento
Document Description,Descripción del documento
Document Numbering Series,Documento Serie de numeración
Document Status transition from ,Documento de transición de estado de
Document Type,Tipo de documento
Document is only editable by users of role,Documento es sólo editable por los usuarios de papel
Documentation,Documentación
Documentation Generator Console,Documentación Consola Generador
Documentation Tool,Herramienta de la documentación
Documents,Documentos
Domain,Dominio
Download Backup,Descargar Backup
Download Materials Required,Descargue Materiales necesarios
Download Template,Descargue la plantilla
Download a report containing all raw materials with their latest inventory status,Descargar un informe con todas las materias primas con su último estado de inventario
"Download the Template, fill appropriate data and attach the modified file.All dates and employee combination in the selected period will come in the template, with existing attendance records","Descarga la plantilla, llene los datos adecuados y fije las fechas file.All modificados y la combinación de los empleados en el periodo seleccionado vendrá en la plantilla, con los registros de asistencia existentes"
Draft,Borrador
Drafts,Damas
Drag to sort columns,Arrastre para ordenar las columnas
Dropbox,Dropbox
Dropbox Access Allowed,Dropbox acceso permitido
Dropbox Access Key,Dropbox clave de acceso
Dropbox Access Secret,Dropbox acceso secreta
Due Date,Fecha de vencimiento
EMP/,EMP /
ESIC CARD No,TARJETA DE ESIC No
ESIC No.,ESIC No.
Earning,Ganar
Earning & Deduction,Ganancia y Deducción
Earning Type,Ganando Tipo
Earning1,Earning1
Edit,Editar
Editable,Editable
Educational Qualification,Capacitación Educativa
Educational Qualification Details,Datos Educativos de calificación
Eg. smsgateway.com/api/send_sms.cgi,Por ejemplo. smsgateway.com / api / send_sms.cgi
Email,Email
Email (By company),E-mail (por empresa)
Email Digest,Email Resumen
Email Digest Settings,Resumen Email Settings
Email Host,Email Host
Email Id,Email Id
"Email Id must be unique, already exists for: ","Identificación del email debe ser único, ya existe para:"
"Email Id where a job applicant will email e.g. ""jobs@example.com""","Identificación del email que un solicitante de empleo le enviará por ejemplo, &quot;jobs@example.com&quot;"
Email Login,Login Email
Email Password,Correo electrónico Contraseña
Email Sent,Correo electrónico enviado
Email Sent?,Correo electrónico enviado?
Email Settings,Configuración del correo electrónico
Email Settings for Outgoing and Incoming Emails.,Configuración del correo electrónico para mensajes de correo electrónico entrantes y salientes.
Email Signature,Firma para tu Correo
Email Use SSL,Correo electrónico utilizan SSL
"Email addresses, separted by commas","Las direcciones de correo electrónico, separted por comas"
Email ids separated by commas.,ID de correo electrónico separados por comas.
"Email settings for jobs email id ""jobs@example.com""",Configuración del correo electrónico para los trabajos de correo electrónico id &quot;jobs@example.com&quot;
"Email settings to extract Leads from sales email id e.g. ""sales@example.com""","Configuración del correo electrónico para extraer Leads de ventas email id por ejemplo, &quot;sales@example.com&quot;"
Email...,Email ...
Embed image slideshows in website pages.,Insertar presentaciones de imágenes en las páginas web.
Emergency Contact Details,Detalles de Contacto de Emergencia
Emergency Phone Number,Teléfono para Emergencias
Employee,Empleado
Employee Birthday,Empleado Cumpleaños
Employee Designation.,Designación del Empleado.
Employee Details,Detalles del Empleado
Employee Education,Educación de los Empleados
Employee External Work History,Empleado Historial de trabajo externo
Employee Information,Información del empleado
Employee Internal Work History,Empleado Historial de trabajo interno
Employee Internal Work Historys,Historys Empleados Interno de Trabajo
Employee Leave Approver,Empleado licencia aprobador
Employee Leave Balance,Equilibrio licencia Empleado
Employee Name,Nombre del empleado
Employee Number,Número de empleado
Employee Records to be created by,Registros de Empleados de crearse
Employee Setup,Empleado de configuración
Employee Type,Tipo de empleado
Employee grades,Los grados de empleados
Employee record is created using selected field. ,Registro de empleado se crea utilizando el campo seleccionado.
Employee records.,Registros de empleados.
Employee: ,Empleado:
Employees Email Id,Empleados de correo electrónico de identificación
Employment Details,Detalles de Empleo
Employment Type,Tipo de empleo
Enable Auto Inventory Accounting,Activar el control de la Auto
Enable Shopping Cart,Habilitar Compras
Enabled,Habilitado
Enables <b>More Info.</b> in all documents,Habilita <b>Más información.</b> En todos los documentos
Encashment Date,Cobro Fecha
End Date,Fecha de finalización
End date of current invoice's period,Fecha de finalización del periodo de facturación actual
End of Life,Fin de la Vida
Ends on,Finaliza el
Enter Email Id to receive Error Report sent by users.E.g.: support@iwebnotes.com,Introduzca la ID de correo electrónico para recibir informe de error enviado por users.Eg: support@iwebnotes.com
Enter Form Type,Introduzca el tipo de formulario
Enter Row,Ingrese Row
Enter Verification Code,Ingrese el código de verificación
Enter campaign name if the source of lead is campaign.,Ingresa una campaña si la fuente de plomo es la campaña.
"Enter default value fields (keys) and values. If you add multiple values for a field, the first one will be picked. These defaults are also used to set ""match"" permission rules. To see list of fields, go to <a href=""#Form/Customize Form/Customize Form"">Customize Form</a>.","Ingrese campos predeterminados de valor (teclas) y valores. Si agrega varios valores para un campo, el primero será recogido. Estos valores por defecto se utiliza también para establecer &quot;match&quot; reglas de permiso. Para ver la lista de campos, vaya a <a href=""#Form/Customize Form/Customize Form"">Personalizar formulario</a> ."
Enter department to which this Contact belongs,Ingrese departamento al que pertenece el contacto
Enter designation of this Contact,Ingrese designación de este contacto
"Enter email id separated by commas, invoice will be mailed automatically on particular date","Introduzca el identificador de correo electrónico separadas por comas, factura le será enviada automáticamente en la fecha determinada"
Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Registre los artículos y qty previsto para las que desea elevar las órdenes de producción o descargar la materia prima para su análisis.
Enter name of campaign if source of enquiry is campaign,Introducir el nombre de la campaña si la fuente de la investigación es la campaña
"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Introduzca los parámetros estáticos URL aquí (por ejemplo, sender = ERPNext, username = ERPNext, contraseña = 1234, etc)"
Enter the company name under which Account Head will be created for this Supplier,Introduzca el nombre de la empresa en que se haya creado la cuenta principal de esta empresa
Enter the date by which payments from customer is expected against this invoice.,Introduzca la fecha en la que los pagos de los clientes se espera que en contra de esta factura.
Enter url parameter for message,Ingrese parámetro url para el mensaje
Enter url parameter for receiver nos,Ingrese parámetro url para nn receptor
Entries,Comentarios
Entries are not allowed against this Fiscal Year if the year is closed.,No se permiten comentarios en contra de este año fiscal si el año está cerrado.
Error,Error
Error for,Error de
Error: Document has been modified after you have opened it,Error: El documento se ha modificado después de que usted lo ha abierto
Estimated Material Cost,Costo estimado de material
Event,Evento
Event End must be after Start,Evento final debe ser posterior al inicio
Event Individuals,Los individuos del Evento
Event Role,Evento Papel
Event Roles,Roles de eventos
Event Type,Tipo de evento
Event User,Evento del usuario
Events In Today's Calendar,Eventos en el Calendario de hoy
Every Day,Todos los días
Every Month,Cada mes
Every Week,Cada semana
Every Year,Cada Año
Everyone can read,Todo el mundo puede leer
Example:,Ejemplo:
Exchange Rate,Tipo de cambio
Excise Page Number,Número de página Impuestos Especiales
Excise Voucher,Vale Impuestos Especiales
Exemption Limit,Exención del límite
Exhibition,Exposición
Existing Customer,Ya es cliente
Exit,Salida
Exit Interview Details,Salir detalles Entrevista
Expected,Esperado
Expected Delivery Date,Fecha prevista de entrega
Expected End Date,Fin Fecha prevista
Expected Start Date,Fecha prevista de inicio
Expense Account,Cuenta de gastos
Expense Account is mandatory,Cuenta de Gastos es obligatorio
Expense Claim,Cuenta de gastos
Expense Claim Approved,Reclamación de Gastos Aprobados
Expense Claim Approved Message,Reclamación de Gastos Aprobados mensaje
Expense Claim Detail,Detalle de Gastos Reclamo
Expense Claim Details,Detalles de reclamación de gastos
Expense Claim Rejected,Reclamación de Gastos Rechazados
Expense Claim Rejected Message,Reclamación de Gastos Rechazados mensaje
Expense Claim Type,Tipo de Reclamación de Gastos
Expense Date,Fecha de gastos
Expense Details,Detalles de Gastos
Expense Head,Gastos Head
Expense account is mandatory for item: ,Cuenta de gastos es obligatoria para el artículo:
Expense/Adjustment Account,Cuenta de Gastos / ajuste
Expenses Booked,Gastos Reservados
Expenses Included In Valuation,Gastos incluídos en la valoración
Expenses booked for the digest period,Gastos reservados para el período digest
Expiry Date,Fecha de caducidad
Export,Exportar
Exports,Exportaciones
External,Externo
Extract Emails,Extracto de mensajes de correo electrónico
FCFS Rate,Tasa FCFS
FIFO,FIFO
Facebook Share,Facebook Share
Failed: ,Error:
Family Background,Antecedentes familiares
FavIcon,FavIcon
Fax,Fax
Features Setup,Características del programa de instalación
Feed,Alimentar
Feed Type,Alimente Tipo
Feedback,Realimentación
Female,Femenino
Fetch lead which will be converted into customer.,"Fetch de plomo, que se convierte en cliente."
Field Description,Campo Descripción
Field Name,Nombre del campo
Field Type,Tipo de campo
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Campo disponible en la Nota de Entrega, cotización, factura de compra, órdenes de venta"
"Field that represents the Workflow State of the transaction (if field is not present, a new hidden Custom Field will be created)","Campo que representa al Estado de flujo de trabajo de la operación (si el campo no está presente, un nuevo campo personalizado oculto se creará)"
Fieldname,Fieldname
Fields,Campos
"Fields separated by comma (,) will be included in the<br /><b>Search By</b> list of Search dialog box","Campos separados por una coma (,) se incluirá en la <br /> <b>Búsqueda por</b> lista de cuadro de diálogo Búsqueda"
File,Expediente
File Data,Archivo de datos
File Name,Nombre de archivo
File Size,Tamaño del archivo
File URL,URL del archivo
File size exceeded the maximum allowed size,Tamaño del archivo supera el tamaño máximo permitido
Files Folder ID,Archivos ID Folder
Filing in Additional Information about the Opportunity will help you analyze your data better.,La presentación de información adicional sobre la oportunidad le ayudará a analizar mejor sus datos.
Filing in Additional Information about the Purchase Receipt will help you analyze your data better.,La presentación de información adicional sobre el recibo de compra le ayudará a analizar mejor sus datos.
Filling in Additional Information about the Delivery Note will help you analyze your data better.,Rellenar Información adicional sobre la nota de entrega le ayudará a analizar mejor sus datos.
Filling in additional information about the Quotation will help you analyze your data better.,Introducción de información adicional sobre el Presupuesto le ayudará a analizar mejor sus datos.
Filling in additional information about the Sales Order will help you analyze your data better.,Introducción de información adicional sobre el pedido de ventas le ayudará a analizar mejor sus datos.
Filter,Filtrar
Filter By Amount,Filtrar por Importe
Filter By Date,Filtrar por fecha
Filter based on customer,Filtro basado en el cliente
Filter based on item,Filtro basado en el artículo
Final Confirmation Date,Confirmación de la fecha límite
Financial Analytics,Financial Analytics
Financial Statements,Estados Financieros
First Name,Nombre
First Responded On,Primero respondió el
Fiscal Year,Año Fiscal
Fixed Asset Account,Cuenta de Activos Fijos
Float,Flotar
Float Precision,Precision Float
Follow via Email,Siga por correo electrónico
Following Journal Vouchers have been created automatically,A raíz de documentos preliminares se han creado de forma automática
"Following table will show values if items are sub - contracted. These values will be fetched from the master of ""Bill of Materials"" of sub - contracted items.",Tras tabla mostrará valores si los artículos son sub - contratado. Estos valores se obtienen de la maestra de la &quot;Lista de materiales&quot; de la sub - productos contratados.
Font (Heading),Fuente (rúbrica)
Font (Text),Fuente (Texto)
Font Size (Text),Tamaño de fuente (texto)
Fonts,Fuentes
Footer,Pie de página
Footer Items,Artículos Footer
For All Users,Para todos los usuarios
For Company,Para la empresa
For Employee,Para los Empleados
For Employee Name,En Nombre del Empleado
For Item ,Por artículo
"For Links, enter the DocType as rangeFor Select, enter list of Options separated by comma","Para los enlaces, introduzca el tipo de documento como rangeFor Select, entrar en la lista de opciones separadas por comas"
For Production,Para Producción
For Reference Only.,Sólo de referencia.
For Sales Invoice,Para Factura
For Server Side Print Formats,Por el lado de impresión Formatos Server
For Territory,Por Territorio
For UOM,Para UOM
For Warehouse,Para el almacén
"For comparative filters, start with","Para los filtros comparativas, comience con"
"For e.g. 2012, 2012-13","Por ejemplo, 2012, 2012-13"
For example if you cancel and amend 'INV004' it will become a new document 'INV004-1'. This helps you to keep track of each amendment.,"Por ejemplo, si usted cancela y enmendar &#39;INV004&#39; se convertirá en un nuevo documento &#39;INV004-1&#39;. Esto le ayuda a realizar un seguimiento de cada enmienda."
For example: You want to restrict users to transactions marked with a certain property called 'Territory',Por ejemplo: Usted desea restringir a los usuarios transacciones marcadas con una determinada propiedad llamada &#39;Territorio&#39;
For opening balance entry account can not be a PL account,Para la apertura de cuenta saldo entrada no puede ser una cuenta de PL
For ranges,Para los rangos de
For reference,Para referencia
For reference only.,Sólo para referencia.
For row,Para la fila
"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 puede utilizar en formato impreso como facturas y albaranes"
Form,Formulario
Format: hh:mm example for one hour expiry set as 01:00. Max expiry will be 72 hours. Default is 24 hours,Formato: hh: mm Ejemplo de una hora de caducidad fijado las 01:00. Max caducidad será de 72 horas. Predeterminado es de 24 horas
Forum,Foro
Fraction,Fracción
Fraction Units,Unidades de fracciones
Freeze Stock Entries,Congelar los comentarios de
Friday,Viernes
From,De
From Bill of Materials,De la lista de materiales
From Company,De Compañía
From Currency,De Moneda
From Currency and To Currency cannot be same,De la moneda y moneda no puede ser el mismo
From Customer,Desde Cliente
From Date,Desde la fecha
From Date must be before To Date,Desde la fecha debe ser anterior a la Fecha
From Delivery Note,De la nota de entrega
From Employee,Del Empleado
From Lead,De Plomo
From PR Date,Desde la fecha PR
From Package No.,De Paquete No.
From Purchase Order,De la Orden de Compra
From Purchase Receipt,Desde recibo de compra
From Sales Order,A partir de órdenes de venta
From Time,From Time
From Value,De Calidad
From Value should be less than To Value,De valor debe ser inferior al valor
Frozen,Congelado
Fulfilled,Cumplido
Full Name,Nombre Completo
Fully Completed,Totalmente Completada
GL Entry,GL entrada
GL Entry: Debit or Credit amount is mandatory for ,GL Entrada: Débito o Crédito cantidad es obligatorio para
GRN,GRN
Gantt Chart,Diagrama de Gantt
Gantt chart of all tasks.,Diagrama de Gantt de las tareas.
Gender,Género
General,General
General Ledger,Contabilidad General
Generate Description HTML,Descripción Generar HTML
Generate Material Requests (MRP) and Production Orders.,Generar solicitudes de material (MRP) y Órdenes de Producción.
Generate Salary Slips,Generar las nóminas
Generate Schedule,Generar Calendario
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Generar albaranes para los paquetes que se entregarán. Se utiliza para notificar el número de paquetes, el contenido del paquete y su peso."
Generates HTML to include selected image in the description,Genera HTML para incluir la imagen seleccionada en la descripción
Georgia,Georgia
Get,Conseguir
Get Advances Paid,Cómo anticipos pagados
Get Advances Received,Cómo anticipos recibidos
Get Current Stock,Obtener Stock actual
Get From ,Obtener de
Get Items,Obtener elementos
Get Items From Sales Orders,Obtener elementos de órdenes de venta
Get Last Purchase Rate,Cómo Tarifa de Último
Get Non Reconciled Entries,Consigue entradas para no conciliadas
Get Outstanding Invoices,Recibe facturas pendientes
Get Purchase Receipt,Obtener recibo de compra
Get Sales Orders,Recibe órdenes de venta
Get Specification Details,Obtenga los datos Especificaciones
Get Stock and Rate,Cómo y Tasa de
Get Template,Cómo Plantilla
Get Terms and Conditions,Cómo Términos y Condiciones
Get Weekly Off Dates,Cómo semanales Fechas Off
"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Obtener tasa de valorización y stock disponible en el almacén de origen / destino en la publicación mencionada fecha y hora. Si serializado artículo, por favor pulse este botón después de introducir los números de serie."
Give additional details about the indent.,Dar detalles sobre el guión.
Global Defaults,Predeterminados globales
Go back to home,Volver a Home
Go to Setup > <a href='#user-properties'>User Properties</a> to set \			'territory' for diffent Users.,Vaya a Configuración&gt; <a href='#user-properties'>Propiedades del usuario</a> para configurar \ &quot;territorio&quot; para los usuarios de diffent.
Goal,Objetivo
Goals,Objetivos de
Goods received from Suppliers.,Los bienes recibidos de proveedores.
Google Analytics ID,Google Analytics ID
Google Drive,Google Drive
Google Drive Access Allowed,Google Drive Acceso animales
Google Plus One,Google Plus One
Google Web Font (Heading),Google Web Fuente (rúbrica)
Google Web Font (Text),Google Web Fuente (Texto)
Grade,Grado
Graduate,Licenciado
Grand Total,Gran Total
Grand Total (Company Currency),Total general (Empresa moneda)
Gratuity LIC ID,La gratuidad ID LIC
Gross Margin %,% Margen Bruto
Gross Margin Value,Valor Margen Bruto
Gross Pay,Pago Bruto
Gross Pay + Arrear Amount +Encashment Amount - Total Deduction,Pago Bruto + + Importe Importe mora Cobro - Deducción total
Gross Profit,Beneficio bruto
Gross Profit (%),Utilidad Bruta (%)
Gross Weight,Peso Bruto
Gross Weight UOM,UOM Peso Bruto
Group,Grupo
Group or Ledger,Grupo o Ledger
Groups,Grupos
HR,HR
HR Settings,Configuración de recursos humanos
HTML,HTML
HTML / Banner that will show on the top of product list.,HTML / Banner que se mostrará en la parte superior de la lista de productos.
Half Day,Medio Día
Half Yearly,Semestral
Half-yearly,Semestral
Has Batch No,Tiene Lote n º
Has Child Node,Tiene nodo secundario
Has Serial No,No tiene de serie
Header,Encabezamiento
Heading,Título
Heading Text As,Título del texto como
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Jefes (o grupos) con el que se fabrican los asientos contables y los balances se mantienen.
Health Concerns,Preocupación por la salud
Health Details,Detalles de Salud
Held On,Celebrada el
Help,Ayudar
Help HTML,Ayuda HTML
"Help: To link to another record in the system, use ""#Form/Note/[Note Name]"" as the Link URL. (don't use ""http://"")","Ayuda: Para vincular a otro registro en el sistema, utilice &quot;# Form / nota / [nombre de la nota]&quot; como la URL Link. (No utilice &quot;http://&quot;)"
Helvetica Neue,Helvetica Neue
"Hence, maximum allowed Manufacturing Quantity","Por lo tanto, el máximo permitido Cantidad Fabricación"
"Here you can maintain family details like name and occupation of parent, spouse and children","Aquí usted puede mantener los detalles de la familia, como el nombre y la ocupación de los padres, cónyuge e hijos"
"Here you can maintain height, weight, allergies, medical concerns etc","Aquí se puede mantener la altura, el peso, alergias, etc preocupaciones médicas"
Hey there! You need to put at least one item in \				the item table.,Hey there! Es necesario poner al menos un artículo en \ table del elemento.
Hey! All these items have already been invoiced.,Hey! Todos estos elementos ya han sido facturados.
Hey! There should remain at least one System Manager,Hey! No debe permanecer al menos un administrador del sistema de
Hidden,Oculto
Hide Actions,Ocultar Acciones
Hide Copy,Ocultar Copy
Hide Currency Symbol,Ocultar Símbolo de moneda
Hide Email,Email Ocultar
Hide Heading,Ocultar Encabezado
Hide Print,Ocultar Imprimir
Hide Toolbar,Ocultar barra de herramientas
High,Alto
Highlight,Destacar
History,Historia
History In Company,Historia In Company
Hold,Mantener
Holiday,Fiesta
Holiday List,Holiday lista
Holiday List Name,Holiday Nombre de la lista
Holidays,Vacaciones
Home,Casa
Home Page,Home Page
Home Page is Products,Página de Inicio es Productos
Home Pages,Páginas de inicio
Host,Anfitrión
"Host, Email and Password required if emails are to be pulled","Host, correo electrónico y la contraseña requerida si los correos electrónicos han de ser retirado"
Hour Rate,Hora Tarifa
Hour Rate Consumable,Consumible Tipo horas
Hour Rate Electricity,Tarifario horas
Hour Rate Labour,Trabajo tarifa por hora
Hour Rate Rent,Alquiler Tarifa horas
Hours,Horas
How frequently?,¿Con qué frecuencia?
"How should this currency be formatted? If not set, will use system defaults","¿Cómo debe ser formateada esta moneda? Si no se define, se usará valores predeterminados del sistema"
How to upload,Cómo subir
Hrvatski,Hrvatski
Human Resources,Recursos humanos
Hurray! The day(s) on which you are applying for leave \					coincide with holiday(s). You need not apply for leave.,¡Hurra! El día (s) en el cual usted está solicitando para salir \ coincidir con día de fiesta (s). No es necesario solicitar permiso.
I,Yo
ID (name) of the entity whose property is to be set,Identificación (nombre) de la entidad cuya propiedad se va a establecer
IDT,IDT
II,II
III,III
IN,EN
INV,INV
INV/10-11/,INV/10-11 /
ITEM,ARTÍCULO
IV,IV
Icon,Icono
Icon will appear on the button,Aparecerá el icono en el botón
Id of the profile will be the email.,Id del perfil será el correo electrónico.
Identification of the package for the delivery (for print),Identificación del paquete para la entrega (para la impresión)
If Income or Expense,Si los ingresos o gastos
If Monthly Budget Exceeded,Si ha superado el presupuesto mensual
"If Sale BOM is defined, the actual BOM of the Pack is displayed as table.Available in Delivery Note and Sales Order","Si BOM venta está definida, la lista de materiales real del paquete se muestra como table.Available en la nota de entrega y de órdenes de venta"
"If Supplier Part Number exists for given Item, it gets stored here","Si Número de pieza del proveedor existente para el punto dado, se almacena aquí"
If Yearly Budget Exceeded,Si el presupuesto anual ha superado el
"If a User does not have access at Level 0, then higher levels are meaningless","Si un usuario no tiene acceso en el nivel 0, los niveles más altos no tienen sentido"
"If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.","Si se selecciona, la lista de materiales para los elementos de sub-ensamble serán considerados para obtener materias primas. De lo contrario, todos los elementos de montaje sub-será tratada como una materia prima."
"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Si se marca, no total. de días laborables se comprenderán los días feriados, y esto reducirá el valor del salario por día"
"If checked, all other workflows become inactive.","Si se selecciona, todos los flujos de trabajo pasan a ser inactivos."
"If checked, an email with an attached HTML format will be added to part of the EMail body as well as attachment. To only send as attachment, uncheck this.","Si se selecciona, se agregará un correo electrónico con un formato HTML adjunto a una parte del cuerpo del correo electrónico, así como datos adjuntos. Para enviar sólo como archivo adjunto, desmarque esta."
"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 de elementos predeterminado para el sitio web."
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Si se selecciona, el importe del impuesto se considerará como ya se ha incluido en la tarifa de impresión / Cantidad Imprimir"
"If disable, 'Rounded Total' field will not be visible in any transaction","Si se desactiva, &#39;Total redondeado&#39; campo no será visible en cualquier transacción"
"If enabled, the system will post accounting entries for inventory automatically.","Si está habilitado, el sistema contabiliza los asientos contables para el inventario de forma automática."
"If image is selected, color will be ignored (attach first)","Si se selecciona una imagen, el color será ignorado (adjunte primero)"
If more than one package of the same type (for print),Si más de un paquete del mismo tipo (por impresión)
If non standard port (e.g. 587),Si no puerto estándar (por ejemplo 587)
If not applicable please enter: NA,Si no aplica por favor escriba: NA
"If not checked, the list will have to be added to each Department where it has to be applied.","Si no está activada, la lista tendrá que ser añadido a cada Departamento donde se ha de aplicar."
"If not, create a","Si no, crea una"
"If set, data entry is only allowed for specified users. Else, entry is allowed for all users with requisite permissions.","Si se establece, la entrada de datos sólo se permite a los usuarios especificados. Si no, se permite la entrada a todos los usuarios con los permisos necesarios."
"If specified, send the newsletter using this email address","Si se especifica, enviar el boletín utilizando la siguiente dirección de correo electrónico"
"If the 'territory' Link Field exists, it will give you an option to select it","Si el campo de &#39;territorio&#39; Link existe, se le dará la opción de seleccionar"
"If the account is frozen, entries are allowed for the ""Account Manager"" only.","Si la cuenta está congelada, las entradas se permitió el &quot;Administrador de cuentas&quot; solamente."
"If this Account represents a Customer, Supplier or Employee, set it here.","Si esta cuenta representa un cliente, proveedor o empleado, se establece aquí."
If you follow Quality Inspection<br>Enables item QA Required and QA No in Purchase Receipt,Si usted sigue Inspección de Calidad <br> Permite elemento de control de calidad y garantía de la calidad requerida no en recibo de compra
If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity,Si tiene equipo de ventas y socios de venta (Channel Partners) pueden ser etiquetados y mantener su contribución en la actividad de ventas
"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Si ha creado una plantilla estándar en los impuestos de compra y Master cargos, seleccione uno y haga clic en el botón de abajo."
"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Si ha creado un modelo estándar en el Impuesto de Ventas y Master cargos, seleccione uno y haga clic en el botón de abajo."
"If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page","Si hace mucho tiempo imprimir formatos, esta característica se puede utilizar para dividir la página que se imprimirá en varias páginas con todos los encabezados y pies de página en cada página"
If you involve in manufacturing activity<br>Enables item <b>Is Manufactured</b>,Si hace que la actividad manufacturera <br> Permite elemento <b>se fabrica</b>
Ignore,Pasar por alto
Ignored: ,Ignorado:
Image,Imagen
Image Link,Enlace a la imagen
Image View,Ver imagen
Implementation Partner,Aplicación Socio
Import,Importar
Import Attendance,Asistencia Import
Import Log,Importar sesión
Important dates and commitments in your project life cycle,Fechas importantes y compromisos en el ciclo de vida del proyecto
Imports,Importaciones
In Dialog,En diálogo
In Filter,En Filter
In Hours,En Horas
In List View,En Vista de lista
In Process,En proceso
In Report Filter,En Filtro de informe
In Row,En Fila
In Store,En las tiendas
In Words,En las palabras
In Words (Company Currency),En palabras (Empresa moneda)
In Words (Export) will be visible once you save the Delivery Note.,En las palabras (Export) será visible una vez que se guarda el albarán de entrega.
In Words will be visible once you save the Delivery Note.,En palabras serán visibles una vez que se guarda el albarán de entrega.
In Words will be visible once you save the Purchase Invoice.,En palabras serán visibles una vez que guarde la factura de compra.
In Words will be visible once you save the Purchase Order.,En palabras serán visibles una vez que guarde la Orden de Compra.
In Words will be visible once you save the Purchase Receipt.,En palabras serán visibles una vez que guarde el recibo de compra.
In Words will be visible once you save the Quotation.,En palabras serán visibles una vez que guarde la cita.
In Words will be visible once you save the Sales Invoice.,En palabras serán visibles una vez que guarde la factura de venta.
In Words will be visible once you save the Sales Order.,En palabras serán visibles una vez que se guarda el pedido de cliente.
In response to,En respuesta a
"In the Permission Manager, click on the button in the 'Condition' column for the Role you want to restrict.","En el Administrador de autorización, haga clic en el botón de la &quot;condición&quot; de columna para la función que desea restringir."
Incentives,Incentivos
Incharge Name,InCharge Nombre
Include holidays in Total no. of Working Days,Incluya vacaciones en N º total. de días laborables
Income / Expense,Ingresos / gastos
Income Account,Cuenta de ingresos
Income Booked,Ingresos reserva
Income Year to Date,Los ingresos año a la fecha
Income booked for the digest period,Ingresos reservado para el período digest
Incoming,Entrante
Incoming / Support Mail Setting,Entrante / Support configuración del Correo
Incoming Rate,Tasa entrante
Incoming Time,Tiempo entrantes
Incoming quality inspection.,Inspección de calidad entrante.
Index,Índice
Indicates that the package is a part of this delivery,Indica que el paquete es una parte de esta entrega
Individual,Individual
Individuals,Las personas
Industry,Industria
Industry Type,Industria Tipo
Info,Info
Insert After,Insertar después
Insert Below,Insertar abajo
Insert Code,Insertar código
Insert Row,Insertar fila
Insert Style,Inserte Estilo
Inspected By,Inspeccionado por
Inspection Criteria,Criterios de Inspección
Inspection Required,Inspección Requerida
Inspection Type,Tipo Inspección
Installation Date,Fecha de instalación
Installation Note,Instalación Nota
Installation Note Item,Instalación artículo Nota
Installation Status,Instalación de estado
Installation Time,Tiempo de instalación
Installation record for a Serial No.,Instalación récord para un número de serie
Installed Qty,Cantidad instalada
Instructions,Instrucciones
Int,Int
Integrations,Integraciones
Interested,Interesado
Internal,Interno
Introduce your company to the website visitor.,Presente a su empresa para el visitante del sitio Web.
Introduction,Introducción
Introductory information for the Contact Us Page,Información introductoria para la página de contacto
Invalid Delivery Note. Delivery Note should exist and should be in 				draft state. Please rectify and try again.,"Nota de entrega no válido. Nota de entrega debe existir y debe estar en estado de borrador. Por favor, rectificar y vuelva a intentarlo."
Invalid Email,Inválido Email
Invalid Email Address,Correo electrónico no es válido
Invalid Item or Warehouse Data,Artículo Inválido o Data Warehouse
Invalid Leave Approver,No válido Agregar aprobador
Inventory,Inventario
Inverse,Inverso
Invoice Date,Fecha de la factura
Invoice Details,Detalles de la factura
Invoice No,Factura n º
Invoice Period From Date,Período Factura Fecha desde
Invoice Period To Date,Período factura a fecha
Is Active,Es activo
Is Advance,Es anticipado
Is Asset Item,Es la partida del activo
Is Cancelled,Se cancela
Is Carry Forward,Es Arrastre
Is Child Table,Es tabla secundaria
Is Default,Es por defecto
Is Encash,Es convertirá en efectivo
Is LWP,Es LWP
Is Mandatory Field,Es campo obligatorio
Is Opening,Está Abriendo
Is Opening Entry,Es la apertura de la entrada
Is PL Account,Es Cuenta PL
Is POS,Es el punto de venta
Is Primary Contact,Es el contacto principal
Is Purchase Item,Es objeto de compra
Is Sales Item,Es el punto de venta
Is Service Item,Es el elemento de servicio
Is Single,Es el único
Is Standard,Es el estándar
Is Stock Item,Es el punto de
Is Sub Contracted Item,Es Artículo Sub Contratadas
Is Subcontracted,Se subcontrata
Is Submittable,Es Submittable
Is it a Custom DocType created by you?,Se trata de un tipo de documento personalizado creado por usted?
Is this Tax included in Basic Rate?,¿Es este impuesto incluido en la tarifa básica?
Issue,Cuestión
Issue Date,Fecha de emisión
Issue Details,Detalles del problema
Issued Items Against Production Order,Artículos emitida contra Orden de Producción
It is needed to fetch Item Details.,Es necesaria para traer artículo Detalles.
It was raised because the (actual + ordered + indented - reserved) 						quantity reaches re-order level when the following record was created,Fue levantada por el (real + ordenada + sangría - Reservado) cantidad alcanza el nivel de re-orden en que se creó el registro siguiente
Item,Artículo
Item Advanced,Artículo avanzada
Item Barcode,Punto de código de barras
Item Batch Nos,Nos Artículo lotes
Item Classification,Artículo clasificación
Item Code,Código del artículo
Item Code (item_code) is mandatory because Item naming is not sequential.,Código del artículo (item_code) es obligatorio porque nombramiento del artículo no es secuencial.
Item Customer Detail,Artículo Detalle Cliente
Item Description,Descripción del Artículo
Item Desription,Artículo Desription
Item Details,Datos del artículo
Item Group,Grupo de artículos
Item Group Name,Nombre del elemento de grupo
Item Groups in Details,Grupos de artículos en Detalles
Item Image (if not slideshow),Imagen del artículo (si no presentación de diapositivas)
Item Name,Nombre del elemento
Item Naming By,Artículo Nombrar Por
Item Price,Artículo Precio
Item Prices,Precios de los artículos
Item Quality Inspection Parameter,Calidad Inspección Tema Parámetro
Item Reorder,Artículo reorden
Item Serial No,Artículo Número de orden
Item Serial Nos,Artículo números de serie
Item Supplier,Artículo Proveedor
Item Supplier Details,Elemento Detalles del Proveedor
Item Tax,Artículo Tributaria
Item Tax Amount,Artículo Cantidad Impuestos
Item Tax Rate,Artículo Tasa Impositiva
Item Tax1,Artículo Tax1
Item To Manufacture,Artículo para la fabricación de
Item UOM,Artículo UOM
Item Website Specification,Elemento Especificación web
Item Website Specifications,Elemento Especificaciones generales
Item Wise Tax Detail ,Detalle del artículo Tax Wise
Item classification.,Artículo clasificación.
Item to be manufactured or repacked,Este punto será fabricado o embalados de nuevo
Item will be saved by this name in the data base.,El artículo será salvado por este nombre en la base de datos.
"Item, Warranty, AMC (Annual Maintenance Contract) details will be automatically fetched when Serial Number is selected.","Item, Garantía, AMC (Contrato de Mantenimiento Anual) detalles serán automáticamente descabellada cuando se selecciona el número de serie."
Item-Wise Price List,Item-Wise Precio de lista
Item-wise Last Purchase Rate,Item-sabio Última Purchase Rate
Item-wise Purchase History,Item-sabio Historial de compras
Item-wise Purchase Register,Artículo cuanto al Registro de compra
Item-wise Sales History,Artículo cuanto al historial de ventas
Item-wise Sales Register,Sales Item-sabios Registro
Items,Artículos
"Items to be requested which are ""Out of Stock"" considering all warehouses based on projected qty and minimum order qty",Temas que han solicitado que son &quot;Out of Stock&quot; teniendo en cuenta todos los almacenes basados ​​en Cantidad proyectada Cantidad pedido mínimo y
Items which do not exist in Item master can also be entered on customer's request,Los productos que no existen en el Maestro de artículos también se pueden introducir en la petición del cliente
Itemwise Discount,Descuento Itemwise
Itemwise Recommended Reorder Level,Itemwise Recomendado Nivel de Reabastecimiento
JSON,JSON
JV,JV
Javascript,Javascript
Javascript to append to the head section of the page.,Javascript para anexar a la sección principal de la página.
Job Applicant,Solicitante de empleo
Job Opening,Job Opening
Job Profile,Job perfil
Job Title,Título del trabajo
"Job profile, qualifications required etc.","Perfil de trabajo, calificaciones requeridas, etc"
Jobs Email Settings,Trabajos Configuración del correo electrónico
Journal Entries,Entradas de diario
Journal Entry,Asientos de diario
Journal Entry for inventory that is received but not yet invoiced,"Asiento para el inventario que se recibe, pero aún no facturado"
Journal Voucher,Diario Voucher
Journal Voucher Detail,Diario Detalle Voucher
Journal Voucher Detail No,Diario Detalle de la hoja no
KRA,KRA
"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, órdenes de venta, etc de las campañas para medir rendimiento de la inversión."
Keep a track of all communications,Mantenga un registro de todas las comunicaciones
Keep a track of communication related to this enquiry which will help for future reference.,Mantenga un registro de la comunicación relacionada con esta investigación que ayudará para referencia futura.
Key,Clave
Key Performance Area,Área Clave de Performance
Key Responsibility Area,Área de Responsabilidad Key
LEAD,PLOMO
LEAD/10-11/,LEAD/10-11 /
LEAD/MUMBAI/,LEAD / MUMBAI /
LR Date,LR Fecha
LR No,LR No
Label,Etiqueta
Label Help,Etiqueta Ayuda
Lacs,Lacs
Landed Cost Item,Landed Cost artículo
Landed Cost Items,Landed Cost Artículos
Landed Cost Purchase Receipt,Landed Cost recibo de compra
Landed Cost Purchase Receipts,Landed Cost recibos de compra
Landed Cost Wizard,Landed Cost Asistente
Landing Page,Landing Page
Language,Idioma
Language preference for user interface (only if available).,Preferencias del idioma para la interfaz de usuario (si está disponible).
Last Contact Date,Fecha del último contacto
Last IP,Última IP
Last Login,Último ingreso
Last Name,Apellido
Last Purchase Rate,Tarifa de Último
Lato,Lato
Lead,Conducir
Lead Details,Plomo Detalles
Lead Lost,El plomo Perdido
Lead Name,Plomo Nombre
Lead Owner,El plomo Propietario
Lead Source,Plomo Fuente
Lead Status,Lead Estado
Lead Time Date,Plomo Fecha Hora
Lead Time Days,Plomo días Tiempo
Lead Time days is number of days by which this item is expected in your warehouse. This days is fetched in Material Request when you select this item.,Lead Time día es el número de días en que se espera para este artículo en su almacén. Estos días se recupera en la solicitud de material cuando se selecciona este elemento.
Lead Type,Plomo Tipo
Leave Allocation,Deja Asignación
Leave Allocation Tool,Deja herramienta de asignación de
Leave Application,Deja aplicación
Leave Approver,Deja Aprobador
Leave Approver can be one of,Deja aprobador puede ser una de
Leave Approvers,Deja aprobadores
Leave Balance Before Application,Deja Saldo antes de la aplicación
Leave Block List,Deja lista de bloqueo
Leave Block List Allow,Deja Lista de bloqueo Permitir
Leave Block List Allowed,Deja Lista de bloqueo animales
Leave Block List Date,Deje Fecha Lista de bloqueo
Leave Block List Dates,Dejar las fechas de listas de bloqueo
Leave Block List Name,Deja Bloquear Nombre de lista
Leave Blocked,Deja Bloqueados
Leave Control Panel,Deja Panel de control
Leave Encashed?,Deja cobrado?
Leave Encashment Amount,Deja Cantidad Cobro
Leave Setup,Deja de configuración
Leave Type,Deja Tipo
Leave Type Name,Agregar Nombre Tipo
Leave Without Pay,Licencia sin sueldo
Leave allocations.,Deja asignaciones.
Leave blank if considered for all branches,Dejar en blanco si se considera para todas las ramas
Leave blank if considered for all departments,Dejar en blanco si se considera para todos los departamentos
Leave blank if considered for all designations,Dejar en blanco si se considera para todas las designaciones
Leave blank if considered for all employee types,Dejar en blanco si se considera para todos los tipos de empleados
Leave blank if considered for all grades,Dejar en blanco si se considera para todos los grados
Leave blank if you have not decided the end date.,Dejar en blanco si no se ha decidido la fecha de finalización.
Leave by,Deja por
"Leave can be approved by users with Role, ""Leave Approver""","Deje puede ser aprobado por los usuarios con rol, &quot;Deja Aprobador&quot;"
Ledger,Libro mayor
Left,Izquierda
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Entidad Legal / auxiliar con un gráfico separado de las cuentas pertenecientes a la Organización.
Letter Head,Carta Head
Letter Head Image,Carta de imagen Head
Letter Head Name,Carta Nombre Head
Level,Nivel
"Level 0 is for document level permissions, higher levels for field level permissions.","El nivel 0 es para los permisos de nivel de documento, mayores niveles de permisos a nivel de campo."
Lft,Lft
Link,Enlace
Link to other pages in the side bar and next section,Enlace a otras páginas en el bar de al lado y en la sección siguiente
Linked In Share,Linked In Share
Linked With,Vinculada con
List,Lista
List items that form the package.,Lista de tareas que forman el paquete.
List of holidays.,Lista de los días festivos.
List of patches executed,Lista de parches ejecutados
List of records in which this document is linked,Lista de los registros en los que está vinculado este documento
List of users who can edit a particular Note,Lista de usuarios que pueden editar una nota en particular
List this Item in multiple groups on the website.,Enumero este artículo en varios grupos en la web.
Live Chat,Chat en Directo
Load Print View on opening of an existing form,Cargar Vista de Impresión en la apertura de un formulario existente
Loading,Carga
Loading Report,Carga Informe
Log,Log
"Log of Activities performed by users against Tasks that can be used for tracking time, billing.","Registro de las actividades realizadas por los usuarios en contra de Tareas que se pueden utilizar para el seguimiento de tiempo, de facturación."
Log of Scheduler Errors,Log de errores del programador
Login After,Ingresa Después
Login Before,Inicio de sesión antes
Login Id,ID de Usuario
Logo,Logo
Logout,Cerrar sesión
Long Text,Texto largo
Lost Reason,Razón Perdido
Low,Bajo
Lower Income,Menores ingresos
Lucida Grande,Lucida Grande
MIS Control,MIS control
MREQ-,MREQ-
MTN Details,MTN Detalles
Mail Footer,Correo pie de página
Mail Password,Mail Contraseña
Mail Port,Mail Port
Mail Server,Servidor de correo
Main Reports,Informes Principales
Main Section,Sección principal
Maintain Same Rate Throughout Sales Cycle,Mantener el mismo ritmo durante todo el ciclo de ventas
Maintain same rate throughout purchase cycle,Mantener el mismo ritmo durante todo el ciclo de compra
Maintenance,Mantenimiento
Maintenance Date,Mantenimiento Fecha
Maintenance Details,Detalles de Mantenimiento
Maintenance Schedule,Programa de mantenimiento
Maintenance Schedule Detail,Mantenimiento Detalle Horario
Maintenance Schedule Item,Mantenimiento elemento de programación
Maintenance Schedules,Programas de mantenimiento
Maintenance Status,Mantenimiento de estado
Maintenance Time,Tiempo de mantenimiento
Maintenance Type,Mantenimiento Tipo
Maintenance Visit,Mantenimiento Visita
Maintenance Visit Purpose,Mantenimiento Propósito Visita
Major/Optional Subjects,Temas principales / Opcional
Make Bank Voucher,Hacer comprobante bancario
Make Difference Entry,Hacer Entrada Diferencia
Make Time Log Batch,Hacer lotes Log Tiempo
Make a new,Hacer una nueva
Make sure that the transactions you want to restrict have a Link field 'territory' that maps to a 'Territory' master.,Asegúrese de que las operaciones que desea restringir tener &quot;territorio&quot; un campo de enlace que se asigna a un &#39;territorio&#39; master.
Male,Masculino
Manage cost of operations,Gestione costo de las operaciones
Manage exchange rates for currency conversion,Administrar los tipos de cambio para la conversión de divisas
Mandatory,Obligatorio
"Mandatory if Stock Item is ""Yes"". Also the default warehouse where reserved quantity is set from Sales Order.",Obligatorio si acción del artículo es &quot;Sí&quot;. También el almacén por defecto en que la cantidad reservada se establece a partir de órdenes de venta.
Manufacture against Sales Order,Fabricación contra pedido de cliente
Manufacture/Repack,Fabricación / Repack
Manufactured Qty,Fabricado Cantidad
Manufactured quantity will be updated in this warehouse,Fabricado cantidad se actualizará en este almacén
Manufacturer,Fabricante
Manufacturer Part Number,Código de Fabricante
Manufacturing,Fabricación
Manufacturing Quantity,Fabricación Cantidad
Margin,Margen
Marital Status,Estado civil
Market Segment,Sector de mercado
Married,Casado
Mass Mailing,Mass Mailing
Master,Maestro
Master Name,Maestro Nombre
Master Type,Type Master
Masters,Masters
Match,Partido
Match non-linked Invoices and Payments.,Coincidir no vinculados Facturas y Pagos.
Material Issue,Material de Emisión
Material Receipt,Recibo de Materiales
Material Request,Material de Solicitud
Material Request Date,Material de la Fecha de Solicitud
Material Request Detail No,Materiales Detalle Solicitud de No
Material Request For Warehouse,Material de Solicitud de Almacén
Material Request Item,Artículo Material Request
Material Request Items,Artículos de materiales Solicitar
Material Request No,Material de Solicitud de No
Material Request Type,Tipo de material Solicitud
Material Request used to make this Stock Entry,Solicitud de material utilizado para hacer esto Stock entrada
Material Requirement,Requisito material
Material Transfer,Transferencia de material
Materials,Materiales
Materials Required (Exploded),Materiales necesarios (despiece)
Max 500 rows only.,Sólo Max 500 filas.
Max Attachments,Max Adjuntos
Max Days Leave Allowed,Días máx Deja animales
Max Discount (%),Max Descuento (%)
"Meaning of Submit, Cancel, Amend","Significado de Presentar, cancelación, rectificación"
Medium,Medio
"Menu items in the Top Bar. For setting the color of the Top Bar, go to <a href=""#Form/Style Settings"">Style Settings</a>","Los elementos de menú en la barra superior. Para ajustar el color de la barra superior, vaya a <a href=""#Form/Style Settings"">Ajustes</a>"
Merge,Unir
Merge Into,Combinar en el
Merge Warehouses,Combinar Almacenes
Merging is only possible between Group-to-Group or 					Ledger-to-Ledger,La fusión sólo es posible entre el Grupo a grupo o Ledger a Ledger
"Merging is only possible if following \					properties are same in both records.					Group or Ledger, Debit or Credit, Is PL Account","La fusión sólo es posible si sigue a \ propiedades son las mismas en ambos registros. Grupo o Ledger, de débito o de crédito, es el relato PL"
Message,Mensaje
Message Parameter,Mensaje de Parámetros
Messages greater than 160 characters will be split into multiple messages,Mensaje mayor de 160 caracteres se dividirá en múltiples mesage
Messages,Mensajes
Method,Método
Middle Income,Ingreso Medio
Middle Name (Optional),Segundo Nombre (Opcional)
Milestone,Hito
Milestone Date,Milestone Fecha
Milestones,Hitos
Milestones will be added as Events in the Calendar,Los hitos se añadirá como Eventos en el Calendario
Millions,Millones
Min Order Qty,Min. Orden Cantidad
Minimum Order Qty,Cantidad mínima de pedido
Misc,Misc
Misc Details,Varios detalles
Miscellaneous,Misceláneo
Miscelleneous,Miscelleneous
Mobile No,Mobile No
Mobile No.,Móvil No.
Mode of Payment,Forma de Pago
Modern,Moderno
Modified Amount,Monto de la modificación
Modified by,Modificado por
Module,Módulo
Module Def,Módulo Def
Module Name,Nombre del módulo
Modules,Módulos
Monday,Lunes
Month,Mes
Monthly,Mensual
Monthly Attendance Sheet,Hoja de Asistencia Mensual
Monthly Earning & Deduction,Ingresos mensuales y deducción
Monthly Salary Register,Registrarse Salario Mensual
Monthly salary statement.,Nómina mensual.
Monthly salary template.,Plantilla salario mensual.
More,Más
More Details,Más detalles
More Info,Más información
More content for the bottom of the page.,Más contenido para la parte inferior de la página.
Moving Average,Media móvil
Moving Average Rate,Tarifa media móvil
Mr,Sr.
Ms,Ms
Multiple Item Prices,Los precios de varios artículos
Multiple root nodes not allowed.,Nodos raíz múltiples no están permitidos.
Mupltiple Item prices.,Precios Mupltiple artículo.
Must be Whole Number,Debe ser un número entero
Must have report permission to access this report.,Debe tener informe de permiso para acceder a este informe.
Must specify a Query to run,Debe especificar una consulta para ejecutar
My Settings,Mis Opciones
NL-,NL-
Name,Nombre
Name Case,Nombre del caso
Name and Description,Nombre y descripción
Name and Employee ID,Nombre y DNI del empleado
Name as entered in Sales Partner master,Nombre tal como aparece en maestro socio de ventas
Name is required,El nombre es requerido
Name of organization from where lead has come,Nombre de la organización a partir de donde el plomo ha llegado
Name of person or organization that this address belongs to.,Nombre de la persona u organización que esta dirección pertenece.
Name of the Budget Distribution,Nombre de la distribución del presupuesto
Name of the entity who has requested for the Material Request,Nombre de la entidad que ha solicitado para la solicitud de material
Naming,Nombrar
Naming Series,Nombrar Series
Naming Series mandatory,Nombrar Series obligatoria
Negative balance is not allowed for account ,Saldo negativo no está permitido para la cuenta
Net Pay,Salario neto
Net Pay (in words) will be visible once you save the Salary Slip.,Pago neto (en palabras) serán visibles una vez que guarde la nómina.
Net Total,Total neto
Net Total (Company Currency),Total neto (Empresa moneda)
Net Weight,Peso neto
Net Weight UOM,UOM Peso neto
Net Weight of each Item,Peso neto de cada artículo
Net pay can not be negative,Salario neto no puede ser negativo
Never,Nunca
New,Nuevo
New BOM,Nueva lista de materiales
New Communications,Nueva Comunicaciones
New Delivery Notes,Nuevos Títulos de entrega
New Enquiries,Nueva Consultas
New Leads,New Leads
New Leave Application,Aplicación salir de Nueva
New Leaves Allocated,Nueva Hojas Asignado
New Leaves Allocated (In Days),Las hojas nuevas asignado (en días)
New Material Requests,Pide Nuevo Material
New Password,Nueva contraseña
New Projects,Nuevos Proyectos
New Purchase Orders,Nuevas órdenes de compra
New Purchase Receipts,Nuevos recibos de compra
New Quotations,Las citas nuevas
New Record,Nuevo registro
New Sales Orders,Las órdenes de compra nuevo
New Stock Entries,Nuevas entradas de
New Stock UOM,Nueva UOM Stock
New Supplier Quotations,Citas new
New Support Tickets,Entradas Nuevas Apoyo
New Workplace,Lugar de trabajo de Nueva
New value to be set,Nuevo valor para establecer
Newsletter,Hoja informativa
Newsletter Content,Boletín de noticias de contenido
Newsletter Status,Boletín Estado
"Newsletters to contacts, leads.","Boletines a los contactos, clientes potenciales."
Next Communcation On,Siguiente Comunicación sobre los
Next Contact By,Contacto Siguiente por
Next Contact Date,Fecha Siguiente Contactar
Next Date,Próxima fecha
Next State,Próximo estado
Next actions,Próximas acciones
Next email will be sent on:,Correo electrónico siguiente se enviará a:
No,No
"No Account found in csv file, 							May be company abbreviation is not correct","No se han encontrado en el archivo csv cuenta, puede ser abreviatura empresa no es correcta"
No Action,Ninguna acción
No Communication tagged with this ,No hay comunicación etiquetado con este
No Copy,No hay copia
No Customer Accounts found. Customer Accounts are identified based on \			'Master Type' value in account record.,No hay cuentas de los clientes encontrados. Cuentas de clientes se identifican con base en el valor de \ &#39;Type Master &quot;en registro de la cuenta.
No Item found with Barcode,Ningún artículo encontrado con código de barras
No Items to Pack,No hay artículos para empacar
No Leave Approvers. Please assign 'Leave Approver' Role to atleast one user.,No Deje aprobadores. Asigne &#39;Agregar aprobador&#39; Papel a por lo menos un usuario.
No Permission,Sin Permisos
No Permission to ,No se autoriza la
No Permissions set for this criteria.,No hay permisos establecidos para este criterio.
No Report Loaded. Please use query-report/[Report Name] to run a report.,No informe Loaded. Utilice consultas report / [Nombre del informe] para ejecutar un informe.
No Supplier Accounts found. Supplier Accounts are identified based on \			'Master Type' value in account record.,No hay cuentas de proveedores encontrados. Cuentas de proveedores se identifican con base en el valor de \ &#39;Type Master &quot;en registro de la cuenta.
No User Properties found.,No encontró Propiedades del usuario.
No default BOM exists for item: ,No existe una lista de materiales por defecto para el artículo:
No further records,No hay más registros
No of Requested SMS,N º de SMS solicitados
No of Sent SMS,N º de SMS enviados
No of Visits,N º de Visitas
No one,Nadie
No permission to write / remove.,No tiene permiso para escribir / eliminar.
No record found,Ningún registro encontrado
No records tagged.,No hay registros marcados.
No salary slip found for month: ,No nómina encontrado al mes:
"No table is created for Single DocTypes, all values are stored in tabSingles as a tuple.","No se crean tablas para DocTypes individuales, todos los valores se almacenan en tabSingles como una tupla."
None,Ninguno
None: End of Workflow,Ninguno: Fin del flujo de trabajo
Not,No
Not Active,No está activo
Not Applicable,No aplicable
Not Billed,No Anunciado
Not Delivered,No entregado
Not Found,No se encuentra
Not Linked to any record.,No está vinculado a ningún registro.
Not Permitted,No se permite
Not allowed for: ,No permitido en:
Not enough permission to see links.,Sin permisos suficientes para ver los enlaces.
Not in Use,Sin usar
Not interested,No le interesa
Not linked,No vinculado
Note,Nota
Note User,Nota usuario
Note is a free page where users can share documents / notes,Nota es una página gratuita donde los usuarios pueden compartir documentos / notas
"Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.","Nota: Las copias de seguridad y archivos no se eliminan de Dropbox, que tendrá que hacerlo manualmente."
"Note: Backups and files are not deleted from Google Drive, you will have to delete them manually.","Nota: Las copias de seguridad y archivos no se eliminan de Google Drive, usted tendrá que eliminar manualmente."
Note: Email will not be sent to disabled users,Nota: El correo electrónico no será enviado a los usuarios con discapacidad
"Note: For best results, images must be of the same size and width must be greater than height.","Nota: Para obtener los mejores resultados, las imágenes deben ser del mismo tamaño y el ancho debe ser mayor que la altura."
Note: Other permission rules may also apply,Nota: El resto de normas de permiso también pueden solicitar
Note: You Can Manage Multiple Address or Contacts via Addresses & Contacts,Nota: Usted puede manejar varias direcciones o contactos a través de las direcciones y contactos
Note: maximum attachment size = 1mb,Nota: el tamaño máximo de archivo adjunto = 1mb
Notes,Notas
Nothing to show,Nada para mostrar
Notice - Number of Days,Aviso - Número de días
Notification Control,Notificación de control
Notification Email Address,Notificación de Correo Electrónico
Notify By Email,Notificaremos por correo electrónico
Notify by Email on creation of automatic Material Request,Notificarme por correo electrónico sobre la creación de la Solicitud de material automático
Number Format,Formato de los números
O+,O +
O-,O-
OPPT,OPPT
Office,Oficina
Old Parent,Padres Antiguo
On,En
On Net Total,En total neto
On Previous Row Amount,El Monto de la fila anterior
On Previous Row Total,El total de la fila anterior
"Once you have set this, the users will only be able access documents with that property.","Una vez que haya establecido esto, los usuarios sólo serán documentos capaces de acceso con esa propiedad."
Only Administrator allowed to create Query / Script Reports,Administrador con permiso para crear informes de consulta / Guión
Only Administrator can save a standard report. Please rename and save.,Sólo el administrador puede guardar un informe estándar. Cambie el nombre y guardar.
Only Allow Edit For,Sólo Permitir editar para
Only Stock Items are allowed for Stock Entry,Sólo los elementos de almacén están permitidos para la entrada
Only System Manager can create / edit reports,Sólo el administrador del sistema puede crear / editar informes
Only leaf nodes are allowed in transaction,Sólo los nodos hoja se permite en una transacción realizada
Open,Abierto
Open Sans,Sans abiertas
Open Tickets,Entradas Abierto
Opening Date,Fecha apertura
Opening Entry,Entrada de apertura
Opening Time,Tiempo de apertura
Opening for a Job.,Apertura de un trabajo.
Operating Cost,Costo de operación
Operation Description,Descripción de la operación
Operation No,Operación No
Operation Time (mins),Tiempo de operación (minutos)
Operations,Operaciones
Opportunity,Oportunidad
Opportunity Date,Oportunidad Fecha
Opportunity From,De Oportunidad
Opportunity Item,Oportunidad artículo
Opportunity Items,Artículos Oportunidad
Opportunity Lost,Oportunidad Perdida
Opportunity Type,Oportunidad Tipo
Options,Opciones
Options Help,Opciones Ayuda
Order Confirmed,Pedido confirmado
Order Lost,Orden Perdido
Order Type,Tipo de orden
Ordered Items To Be Billed,Los artículos pedidos a facturar
Ordered Items To Be Delivered,Los artículos pedidos para ser entregados
Ordered Quantity,Cantidad ordenada
Orders released for production.,Los pedidos a producción.
Organization Profile,Perfil de la organización
Original Message,Mensaje original
Other,Otro
Other Details,Otros detalles
Out,Fuera
Out of AMC,Fuera de AMC
Out of Warranty,Fuera de la Garantía
Outgoing,Saliente
Outgoing Mail Server,Servidor de correo saliente
Outgoing Mails,Los correos salientes
Outstanding Amount,Monto Pendiente
Outstanding for Voucher ,Sobresaliente para Voucher
Over Heads,Sobre las cabezas de
Overhead,Gastos generales
Overlapping Conditions found between,Condiciones superpuestas encuentran entre
Owned,Propiedad
PAN Number,Número PAN
PF No.,PF No.
PF Number,Número PF
PI/2011/,PI/2011 /
PIN,PIN
PO,Correos
POP3 Mail Server,Servidor de correo POP3
POP3 Mail Server (e.g. pop.gmail.com),POP3 Servidor de correo (por ejemplo pop.gmail.com)
POP3 Mail Settings,Configuración de correo POP3
POP3 mail server (e.g. pop.gmail.com),POP3 del servidor de correo (por ejemplo pop.gmail.com)
POP3 server e.g. (pop.gmail.com),"Por ejemplo, el servidor POP3 (pop.gmail.com)"
POS Setting,Configuración POS
POS View,POS View
PR Detail,PR Detalle
PRO,PRO
PS,PS
Package Item Details,Detalles del paquete del artículo
Package Items,Artículos del embalaje
Package Weight Details,Detalles del paquete Peso
Packing Details,Detalles del embalaje
Packing Detials,Detials embalaje
Packing List,Contenido del paquete
Packing Slip,Packing Slip
Packing Slip Item,Artículo Embalaje Slip
Packing Slip Items,Packing Slip Artículos
Packing Slip(s) Cancelled,Lista de empaque (s) Cancelado
Page,Página
Page Background,Fondo de página
Page Border,Borde de página
Page Break,Salto de página
Page HTML,Página HTML
Page Headings,Encabezamientos Página
Page Links,Enlaces de página
Page Name,Nombre página
Page Role,Página Papel
Page Text,Página del texto
Page content,Contenido de la página
Page not found,Página no encontrada
Page text and background is same color. Please change.,Texto de la página y el fondo es el mismo color. Por favor cambia.
Page to show on the website,Página para mostrar en la página web
"Page url name (auto-generated) (add "".html"")",Nombre de la página URL (generada automáticamente) (añadir &quot;. Html&quot;)
Paid Amount,Cantidad pagada
Parameter,Parámetro
Parent Account,Parent Account
Parent Cost Center,Padres de centros de coste
Parent Customer Group,Padres Grupo de Clientes
Parent Detail docname,Padres VER MAS Extracto dentro detalle
Parent Item,Artículo principal
Parent Item Group,Grupo de Padres del artículo
Parent Label,Padres Label
Parent Sales Person,Las ventas de Padres Persona
Parent Territory,Padres Territorio
Parent is required.,Se requiere de Padres.
Parenttype,ParentType
Partially Completed,Completada parcialmente
Participants,Los participantes
Partly Billed,Mayormente Anunciado
Partly Delivered,Mayormente Entregado
Partner Target Detail,Socio Detalle Target
Partner Type,Tipo de Socio
Partner's Website,Sitio Web del Socio
Passive,Pasivo
Passport Number,Número de pasaporte
Password,Contraseña
Password Expires in (days),Password Expires in (días)
Patch,Parche
Patch Log,Patch sesión
Pay To / Recd From,Pagar a / A partir de RECD
Payables,Cuentas por pagar
Payables Group,Deudas Grupo
Payment Collection With Ageing,Cobro Con el Envejecimiento
Payment Days,Días de pago
Payment Entries,Las entradas de pago
Payment Entry has been modified after you pulled it. 			Please pull it again.,"Registro de pagos ha sido modificado después de que lo tiró. Por favor, tire de él otra vez."
Payment Made With Ageing,Pagos con el Envejecimiento
Payment Reconciliation,Pago Reconciliación
Payment Terms,Condiciones de pago
Payment to Invoice Matching Tool,El pago a la herramienta Matching Factura
Payment to Invoice Matching Tool Detail,Pago al detalle de la factura Matching Tool
Payments,Pagos
Payments Made,Pagos efectuados
Payments Received,Los pagos recibidos
Payments made during the digest period,Los pagos efectuados durante el período de digestión
Payments received during the digest period,Los pagos recibidos durante el período de digestión
Payroll Setup,Nómina de configuración
Pending,Pendiente
Pending Review,Pendientes de revisión
Pending SO Items For Purchase Request,Temas pendientes por lo que para Solicitud de Compra
Percent,Por ciento
Percent Complete,Porcentaje completado
Percentage Allocation,Porcentaje de asignación
Percentage Allocation should be equal to ,Porcentaje de asignación debe ser igual a
Percentage variation in quantity to be allowed while receiving or delivering this item.,Variación porcentual de la cantidad que se le permita al recibir o entregar este artículo.
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.,"Porcentaje que se les permite recibir o entregar más en contra de la cantidad pedida. Por ejemplo: Si se ha pedido 100 unidades. y el subsidio es de 10%, entonces se le permite recibir 110 unidades."
Performance appraisal.,Evaluación del desempeño.
Period Closing Voucher,Período de cierre Voucher
Periodicity,Periodicidad
Perm Level,Perm Nivel
Permanent Accommodation Type,Tipo de alojamiento permanente
Permanent Address,Domicilio
Permission,Permiso
Permission Level,Nivel de permiso
Permission Levels,Niveles de permisos
Permission Manager,Permiso Gerente
Permission Rules,Reglas de permiso
Permissions,Permisos
Permissions Settings,Configuración de permisos
Permissions are automatically translated to Standard Reports and Searches,Los permisos se traduce automáticamente a los informes estándar y Enlaces
"Permissions are set on Roles and Document Types (called DocTypes) by restricting read, edit, make new, submit, cancel, amend and report rights.","Los permisos se establecen en las funciones y tipos de documentos (llamados DocTypes) mediante la restricción de leer, editar, hacer nuevos, enviar, cancelar, modificar y comunicar los derechos."
Permissions at higher levels are 'Field Level' permissions. All Fields have a 'Permission Level' set against them and the rules defined at that permissions apply to the field. This is useful incase you want to hide or make certain field read-only.,Permisos en los niveles superiores son los permisos de &#39;Nivel de campo&#39;. Todos los campos tienen un conjunto de &quot;Nivel de permiso&quot; contra ellas y las reglas definidas en que los permisos se aplican al campo. Esto es útil en caso que usted desee ocultar o hacer determinado campo de sólo lectura.
"Permissions at level 0 are 'Document Level' permissions, i.e. they are primary for access to the document.","Los permisos son los permisos de nivel 0 &quot;nivel de documento&quot;, es decir, que son primarios para acceder al documento."
Permissions translate to Users based on what Role they are assigned,Permisos de traducir a los usuarios según el papel que se les asigna
Person,Persona
Person To Be Contacted,Persona de contacto
Personal,Personal
Personal Details,Datos Personales
Personal Email,Correo electrónico personal
Phone,Teléfono
Phone No,No de teléfono
Phone No.,Número de Teléfono
Pick Columns,Elige Columnas
Pincode,Código PIN
Place of Issue,Lugar de Emisión
Plan for maintenance visits.,Plan de visitas de mantenimiento.
Planned Qty,Cantidad de Planificación
Planned Quantity,Cantidad planificada
Plant,Planta
Please Enter Abbreviation or Short Name properly as it will be added as Suffix to all Account Heads.,"Por favor, Introduzca Abreviatura o nombre corto adecuadamente, ya que se añadirá como sufijo a todos los Jefes de Cuenta."
Please Update Stock UOM with the help of Stock UOM Replace Utility.,"Por favor, actualice Stock UOM con la ayuda de Stock UOM Utilidad Reemplazar."
Please attach a file first.,Adjuntar un archivo primero.
Please attach a file or set a URL,Adjuntar un archivo o establecer una URL
Please check,"Por favor, compruebe"
Please enter Default Unit of Measure,Introduce unidad de medida
Please enter Delivery Note No or Sales Invoice No to proceed,Introduce albarán o factura de venta No No para continuar
Please enter Employee Number,"Por favor, introduzca el Número de Empleado"
Please enter Expense Account,Introduce Cuenta de Gastos
Please enter Expense/Adjustment Account,Introduce Cuenta de Gastos / ajuste
Please enter Purchase Receipt No to proceed,Introduce recibo de compra en No para continuar
Please enter Reserved Warehouse for item ,Introduce Almacén reservada para concepto
Please enter valid,Introduce válida
Please enter valid ,Introduce válida
Please install dropbox python module,"Por favor, instale módulos python dropbox"
Please make sure that there are no empty columns in the file.,"Por favor, asegúrese de que no hay columnas vacías en el archivo."
Please mention default value for ',"Por favor, mencionar el valor por defecto para &#39;"
Please reduce qty.,Reduzca Cantidad.
Please refresh to get the latest document.,Favor de actualización para obtener las últimas documento.
Please save the Newsletter before sending.,"Por favor, guarde el boletín antes de enviarlo."
Please select Bank Account,Por favor seleccione la cuenta bancaria
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,"Por favor, seleccione Arrastre de si también desea incluir saldo del ejercicio fiscal anterior deja a este año fiscal"
Please select Date on which you want to run the report,"Por favor, seleccione Fecha en la que desea ejecutar el informe"
Please select Naming Neries,Por favor seleccione Neries nomenclatura
Please select Price List,"Por favor, seleccione Lista de Precios"
Please select Time Logs.,Por favor seleccione Time Registros.
Please select a,Por favor seleccione una
Please select a csv file,"Por favor, seleccione un archivo csv"
Please select a file or url,"Por favor, seleccione un archivo o URL"
Please select a service item or change the order type to Sales.,"Por favor, seleccione un elemento de servicio o cambiar el tipo de orden de ventas."
Please select a sub-contracted item or do not sub-contract the transaction.,"Por favor, seleccione un elemento subcontratado o no hacer subcontratar la operación."
Please select a valid csv file with data.,"Por favor, seleccione un archivo csv válidos con datos."
Please select month and year,Por favor seleccione el mes y el año
Please select the document type first,Por favor seleccione el tipo de documento en primer lugar
Please select: ,Por favor seleccione:
Please set Dropbox access keys in,"Por favor, establece las claves de acceso en Dropbox"
Please set Google Drive access keys in,"Por favor, establece las claves de acceso de Google Drive en"
Please setup Employee Naming System in Human Resource > HR Settings,"Por favor, configure empleado del sistema de nombres de Recursos Humanos&gt; Configuración HR"
Please specify,"Por favor, especifique"
Please specify Company,"Por favor, especifique la empresa"
Please specify Company to proceed,"Por favor, especifique la empresa para proceder"
Please specify Default Currency in Company Master \			and Global Defaults,"Por favor, especifique Moneda predeterminada en Master Compañía \ y predeterminados globales"
Please specify a,"Por favor, especifique un"
Please specify a Price List which is valid for Territory,"Por favor, especifique una lista de precios que es válido para el territorio"
Please specify a valid,"Por favor, especifique una dirección válida"
Please specify a valid 'From Case No.',Especifique un válido &#39;De Caso No.&#39;
Please specify currency in Company,"Por favor, especifique la moneda en la empresa"
Point of Sale,Punto de Venta
Point-of-Sale Setting,Point-of-Sale Marco
Post Graduate,Postgrado
Post Topic,Publicar Tema
Postal,Postal
Posting Date,Fecha de Publicación
Posting Date Time cannot be before,Fecha de contabilización El tiempo no puede ser anterior a
Posting Time,Hora de publicación
Posts,Mensajes
Potential Sales Deal,Ventas posible acuerdo
Potential opportunities for selling.,Oportunidades potenciales para la venta.
"Precision for Float fields (quantities, discounts, percentages etc). Floats will be rounded up to specified decimals. Default = 3","La precisión de los campos de flotador (cantidades, descuentos, porcentajes, etc.) Flotadores se redondearán a decimales especificados. Por defecto = 3"
Preferred Billing Address,Preferred dirección de facturación
Preferred Shipping Address,Preferred Dirección de envío
Prefix,Prefijo
Present,Presente
Prevdoc DocType,Prevdoc DocType
Prevdoc Doctype,Prevdoc Doctype
Preview,Avance
Previous Work Experience,Experiencia laboral previa
Price,Precio
Price List,Precio de lista
Price List Currency,Precio de Lista Currency
Price List Currency Conversion Rate,Lista de precios de divisas Conversión de Tasa de
Price List Exchange Rate,Lista de precios Tipo de Cambio
Price List Master,Precio de Lista maestra
Price List Name,Nombre Precio de lista
Price List Rate,Precio Califica
Price List Rate (Company Currency),Precio de lista Cambio (monedas de la compañía)
Price List for Costing,Lista de precios de Costeo
Price Lists and Rates,Listas de precios y tarifas
Primary,Primario
Print Format,Formato de impresión
Print Format Style,Formato de impresión Estilo
Print Format Type,Imprimir Tipo de formato
Print Heading,Imprimir Encabezado
Print Hide,Imprimir Ocultar
Print Width,Ancho de impresión
Print Without Amount,Imprimir sin Importe
Print...,Imprimir ...
Priority,Prioridad
Private,Privado
Proceed to Setup,Proceda a configurar
Process,Proceso
Process Payroll,Proceso de Nómina
Produced Quantity,Cantidad producida
Product Enquiry,Consulta de producto
Production Order,Orden de Producción
Production Orders,Órdenes de Producción
Production Plan Item,Producción del artículo Plan de
Production Plan Items,Elementos del Plan de Producción
Production Plan Sales Order,Plan de Ventas Orden de Producción
Production Plan Sales Orders,Fabricación Ventas pedidos Guía
Production Planning (MRP),Planificación de la producción (MRP)
Production Planning Tool,Production Planning Tool
"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Los productos serán ordenados por peso-edad en las búsquedas por defecto. Más del peso-edad, mayor es el producto aparecerá en la lista."
Profile,Perfil
Profile Defaults,Predeterminados del perfil
Profile Represents a User in the system.,Representa un perfil de usuario en el sistema.
Profile of a Blogger,Perfil de un Blogger
Profile of a blog writer.,Perfil de un escritor de blog.
Project,Proyecto
Project Costing,Cálculo del coste del proyecto
Project Details,Detalles del Proyecto
Project Milestone,Proyecto Hito
Project Milestones,Hitos del Proyecto
Project Name,Nombre del proyecto
Project Start Date,Fecha de Inicio del Proyecto
Project Type,Tipo de Proyecto
Project Value,Proyecto Valor
Project activity / task.,Proyecto de actividad / tarea.
Project master.,Proyecto maestro.
Project will get saved and will be searchable with project name given,Proyecto se salvan y se podrán realizar búsquedas con el nombre de proyecto dado
Project wise Stock Tracking,Proyecto sabio Tracking Stock
Projected Qty,Cantidad proyectada
Projects,Proyectos
Prompt for Email on Submission of,Preguntar por correo electrónico en la presentación de
Properties,Propiedades
Property,Propiedad
Property Setter,Propiedad Setter
Property Setter overrides a standard DocType or Field property,"Setter propiedad, se reemplaza una propiedad estándar de tipo de documento o Campo"
Property Type,Tipo de Inmueble
Provide email id registered in company,Proporcionar ID de correo electrónico registrada en la compañía
Public,Público
Published,Publicado
Published On,Publicado el
Pull Emails from the Inbox and attach them as Communication records (for known contacts).,Tire de la bandeja de entrada de mensajes de correo electrónico que se adjuntarán como documentos de comunicación (para contactos conocidos).
Pull Payment Entries,Tire de las entradas de pago
Pull sales orders (pending to deliver) based on the above criteria,Tire de órdenes de venta (pendiente de entregar) sobre la base de los criterios anteriores
Purchase,Comprar
Purchase Analytics,Compra Analytics
Purchase Common,Compra Común
Purchase Date,Fecha de compra
Purchase Details,Detalles compra
Purchase Discounts,Descuentos de Compra
Purchase Document No,Compra documento n
Purchase Document Type,Compra Tipo de documento
Purchase In Transit,Compra In Transit
Purchase Invoice,Compra de facturas
Purchase Invoice Advance,Compra Anticipada Factura
Purchase Invoice Advances,Compra Anticipos de facturas
Purchase Invoice Item,Compra del artículo Factura
Purchase Invoice Trends,Compra Tendencias Factura
Purchase Order,Orden de Compra
Purchase Order Date,Fecha de compra del pedido
Purchase Order Item,Compra Artículo de Orden
Purchase Order Item No,Compra de artículo de orden
Purchase Order Item Supplied,Posición de pedido suministrado
Purchase Order Items,Comprar Items
Purchase Order Items Supplied,Los productos que suministra la Orden de Compra
Purchase Order Items To Be Billed,Orden de Compra artículos a facturar
Purchase Order Items To Be Received,Artículos de órdenes de compra que se reciban
Purchase Order Message,Compra Mensaje Orden
Purchase Order Required,Orden de Compra Requerido
Purchase Order Trends,Compra Tendencias Orden
Purchase Order sent by customer,Orden de compra enviada por el cliente
Purchase Orders given to Suppliers.,Compra órdenes dadas a los proveedores.
Purchase Receipt,Recibo de compra
Purchase Receipt Item,Compra Artículo Receipt
Purchase Receipt Item Supplied,Artículo recibo de compra suministra
Purchase Receipt Item Supplieds,Compra Supplieds recibo del artículo
Purchase Receipt Items,Comprar artículos de recibos
Purchase Receipt Message,Compra mensaje recibido
Purchase Receipt No,No recibo de compra
Purchase Receipt Required,Se requiere recibo de compra
Purchase Receipt Trends,Compra Tendencias de recibos
Purchase Register,Comprar registro
Purchase Return,Comprar Volver
Purchase Returned,Compra Devuelto
Purchase Taxes and Charges,Impuestos y Cargos de compra
Purchase Taxes and Charges Master,Impuestos sobre las compras y Master Cargos
Purpose,Propósito
Purpose must be one of ,Propósito debe ser uno de
Python Module Name,Python Nombre del módulo
QA Inspection,QA Inspección
QAI/11-12/,QAI/11-12 /
QTN,QTN
Qty,Cantidad
Qty Consumed Per Unit,Cantidad consumida por unidad
Qty To Manufacture,Cantidad para la fabricación de
Qty as per Stock UOM,Cantidad de la UOM como por
Qualification,Calificación
Quality,Calidad
Quality Inspection,Inspección de Calidad
Quality Inspection Parameters,Parámetros de Calidad Inspección
Quality Inspection Reading,Lectura de Inspección de Calidad
Quality Inspection Readings,Lecturas Inspección de calidad
Quantity,Cantidad
Quantity Requested for Purchase,Cantidad de la petición de compra
Quantity already manufactured,Cantidad ya fabricado
Quantity and Rate,Cantidad y Precio
Quantity and Warehouse,Cantidad y Almacén
Quantity cannot be a fraction.,Cantidad no puede ser una fracción.
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Cantidad de material obtenido después de la fabricación / reempaque de determinadas cantidades de materias primas
Quantity should be equal to Manufacturing Quantity. ,Cantidad debe ser igual a la cantidad de fabricación.
Quarter,Trimestre
Quarterly,Trimestral
Query,Pregunta
Query Options,Opciones de consulta
Query Report,Consulta de informe
Query must be a SELECT,Consulta debe ser un SELECT
Quick Help for Setting Permissions,Ayuda rápida para Establecer permisos
Quick Help for User Properties,Ayuda rápida para las propiedades del usuario
Quotation,Cita
Quotation Date,Cotización Fecha
Quotation Item,Cotización del artículo
Quotation Items,Artículos de Cotización
Quotation Lost Reason,Cita Perdida Razón
Quotation Message,Cita Mensaje
Quotation Sent,Presupuesto enviado
Quotation Series,Series Cotización
Quotation To,PRESUPUESTO a
Quotation Trend,Tendencia Cotización
Quotations received from Suppliers.,Citas recibidas de los proveedores.
Quotes to Leads or Customers.,Cotizaciones a clientes potenciales o clientes.
Raise Material Request when stock reaches re-order level,Levante solicitar material cuando el stock llega a re-ordenar nivel
Raised By,Raised By
Raised By (Email),Raised By (correo electrónico)
Random,Azar
Range,Alcance
Rate,Velocidad
Rate ,Velocidad
Rate (Company Currency),Cambio (Moneda Company)
Rate Of Materials Based On,Tasa de materiales basados ​​en
Rate and Amount,Ritmo y la cuantía
Rate at which Customer Currency is converted to customer's base currency,Grado en el que la moneda del cliente se convierte a la moneda base del cliente
Rate at which Price list currency is converted to company's base currency,Velocidad a la que se convierte la moneda Lista de precios a la moneda base de la compañía de
Rate at which Price list currency is converted to customer's base currency,Velocidad a la que se convierte la moneda Lista de precios a la moneda base del cliente
Rate at which customer's currency is converted to company's base currency,Grado en el que la moneda del cliente se convierten a la moneda base de la compañía de
Rate at which supplier's currency is converted to company's base currency,Velocidad a la que se convierte la moneda del proveedor a la moneda base empresa
Rate at which this tax is applied,Velocidad a la que se aplica este impuesto
Raw Material Item Code,Materia Prima Código del artículo
Raw Materials Supplied,Materias primas suministradas
Raw Materials Supplied Cost,Materias primas suministradas Costo
Re-Order Level,Re-Order Nivel
Re-Order Qty,Re-Order Cantidad
Re-order,Reordenar
Re-order Level,Reordenar Nivel
Re-order Qty,Reordenar Cantidad
Read,Leer
Read Only,Solo lectura
Reading 1,Lectura 1
Reading 10,Reading 10
Reading 2,Lectura 2
Reading 3,Lectura 3
Reading 4,Reading 4
Reading 5,Reading 5
Reading 6,Lectura 6
Reading 7,Lectura 7
Reading 8,Lectura 8
Reading 9,Lectura 9
Reason,Razón
Reason for Leaving,Razón por la que dejó
Reason for Resignation,Motivo de la renuncia
Recd Quantity,Cantidad RECD
Receivable / Payable account will be identified based on the field Master Type,Cuenta por cobrar / por pagar se identifica basándose en el campo Type Master
Receivables,Cuentas por cobrar
Receivables / Payables,Cobrar / por pagar
Receivables Group,Deudores Grupo
Received Date,Fecha de recepción
Received Items To Be Billed,Elementos recibidos a facturar
Received Qty,Cantidad recibida
Received and Accepted,Recibidas y aceptadas
Receiver List,Receptor Lista
Receiver Parameter,Receptor de parámetros
Recipient,Beneficiario
Recipients,Destinatarios
Reconciliation Data,Reconciliación de Datos
Reconciliation HTML,Reconciliación HTML
Reconciliation JSON,Reconciliación JSON
Record item movement.,Registre el movimiento de artículos.
Recurring Id,Id recurrente
Recurring Invoice,Factura Recurrente
Recurring Type,Tipo recurrente
Reduce Deduction for Leave Without Pay (LWP),Reducir Deducción por licencia sin sueldo (LWP)
Reduce Earning for Leave Without Pay (LWP),Reducir ganar por licencia sin sueldo (LWP)
Ref Code,Ref. Código
Ref Date is Mandatory if Ref Number is specified,Ref de la fecha es obligatoria si no se especifica Número Ref
Ref DocType,Ref DocType
Ref Name,Ref. Nombre
Ref Rate,Precio ref
Ref SQ,Ref SQ
Ref Type,Tipo de referencia
Reference,Referencia
Reference Date,Fecha de referencia
Reference DocName,Referencia DocNombre
Reference DocType,Referencia del tipo de documento
Reference Name,Referencia Nombre
Reference Number,Referencia
Reference Type,Tipo de referencia
Refresh,Refrescar
Registered but disabled.,"Registro, pero deshabilitado."
Registration Details,Detalles de registro
Registration Details Emailed.,Detalles de registro por correo electrónico.
Registration Info,Registro de Información
Rejected,Rechazado
Rejected Quantity,Cantidad Rechazada
Rejected Serial No,No Rechazado serie
Rejected Warehouse,Almacén Rechazado
Relation,Relación
Relieving Date,Aliviar Fecha
Relieving Date of employee is ,Aliviar Fecha de empleado
Remark,Observación
Remarks,Observaciones
Remove Bookmark,Retire Bookmark
Rename Log,Cambiar el nombre de sesión
Rename Tool,Cambiar el nombre de la herramienta
Rename...,Cambiar el nombre de ...
Rented,Alquilado
Repeat On,Repita On
Repeat Till,Repita Hasta
Repeat on Day of Month,Repita el Día del Mes
Repeat this Event,Repita este Evento
Replace,Reemplazar
Replace Item / BOM in all BOMs,Reemplazar elemento / BOM en todas las listas de materiales
"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","Reemplazar un BOM particular en todas las listas de materiales de otros en los que se utiliza. Se sustituirá el enlace BOM viejo, actualizar el costo y regenerar &quot;Explosión lista de materiales Item&quot; tabla según nueva lista de materiales"
Replied,Respondidos
Report,Informe
Report Builder,Generador de informes
Report Builder reports are managed directly by the report builder. Nothing to do.,Los informes del Generador son enviadas por el Generador de informes. No hay nada que hacer.
Report Date,Fecha del informe
Report Hide,Informe Ocultar
Report Name,Nombre del informe
Report Type,Tipo de informe
Report was not saved (there were errors),Informe no se guardó (hubo errores)
Reports,Informes
Reports to,Informes al
Represents the states allowed in one document and role assigned to change the state.,Representa los estados permitidos en un documento y el papel asignado a cambiar el estado.
Reqd,Reqd
Reqd By Date,Reqd Por Fecha
Request Type,Tipo de solicitud
Request for Information,Solicitud de Información
Request for purchase.,Solicitud de compra.
Requested By,Solicitado por
Requested Items To Be Ordered,Artículos solicitados se piden por
Requested Items To Be Transferred,Artículos pidió su traslado
Requests for items.,Las solicitudes de artículos.
Required By,Requerido por la
Required Date,Fecha requerida
Required Qty,Cantidad necesaria
Required only for sample item.,Se requiere sólo para el tema de la muestra.
Required raw materials issued to the supplier for producing a sub - contracted item.,Requeridos materias primas emitidas al proveedor para producir un sub - ítem contratado.
Reseller,Revendedores
Reserved Quantity,Cantidad reservada
Reserved Warehouse,Reservado Almacén
Reserved Warehouse in Sales Order / Finished Goods Warehouse,Almacén reservada en órdenes de venta / almacén de productos terminados
Reserved Warehouse is missing in Sales Order,Reservado Almacén falta de órdenes de venta
Resignation Letter Date,Renuncia Fecha Carta
Resolution,Resolución
Resolution Date,Resolución Fecha
Resolution Details,Detalles de la resolución
Resolved By,Resuelto por
Restrict IP,Restringir IP
Restrict user from this IP address only. Multiple IP addresses can be added by separating with commas. Also accepts partial IP addresses like (111.111.111),Restringir el usuario desde esta dirección IP. Varias direcciones IP se pueden agregar al separar con comas. También acepta parciales direcciones IP similares (111.111.111)
Restricting By User,Restricción por usuario
Retail,Venta al por menor
Retailer,Detallista
Review Date,Fecha de revisión
Rgt,Rgt
Right,Derecho
Role,Papel
Role Allowed to edit frozen stock,Permiso para editar stock congelado Papel
Role Name,Rol Nombre
Role that is allowed to submit transactions that exceed credit limits set.,Papel que se permite presentar las transacciones que excedan los límites de crédito establecidos.
Roles,Roles
Roles Assigned,Roles asignados
Roles Assigned To User,Los roles asignados al usuario
Roles HTML,Roles HTML
Root ,Raíz
Root cannot have a parent cost center,Raíz no puede tener un centro de costos padres
Rounded Total,Total redondeado
Rounded Total (Company Currency),Total redondeado (Empresa moneda)
Row,Fila
Row ,Fila
Row #,Fila #
Row # ,Fila #
Rules defining transition of state in the workflow.,Reglas que definen la transición de estado del flujo de trabajo.
"Rules for how states are transitions, like next state and which role is allowed to change state etc.","Normas de cómo los estados son las transiciones, al igual que el siguiente estado y qué papel se le permite cambiar de estado, etc"
Rules to calculate shipping amount for a sale,Reglas para calcular el importe de envío para una venta
SLE Exists,LES existe
SMS,SMS
SMS Center,Centro SMS
SMS Control,SMS Control
SMS Gateway URL,SMS URL de puerta de enlace
SMS Log,SMS Log
SMS Parameter,Parámetro SMS
SMS Parameters,Parámetros SMS
SMS Sender Name,SMS Sender Name
SMS Settings,Configuración de SMS
SMTP Server (e.g. smtp.gmail.com),"Servidor SMTP (smtp.gmail.com, por ejemplo)"
SO,SO
SO Date,Fecha de SO
SO Pending Qty,SO Cantidad Pendiente
SO/10-11/,SO/10-11 /
SO1112,SO1112
SQTN,SQTN
STE,STE
SUP,SUP
SUPP,SUPP
SUPP/10-11/,SUPP/10-11 /
Salary,Salario
Salary Information,Salario Información
Salary Manager,Manager Salarios
Salary Mode,Salario Mode
Salary Slip,Salario Slip
Salary Slip Deduction,Salario Deducción Slip
Salary Slip Earning,Nómina Ganar
Salary Structure,Estructura salarial
Salary Structure Deduction,Salario Deducción Estructura
Salary Structure Earning,Estructura salarial ganar
Salary Structure Earnings,Ganancias Estructura salarial
Salary breakup based on Earning and Deduction.,Ruptura Salario basado en la ganancia y la deducción.
Salary components.,Componentes salariales.
Sales,Venta
Sales Analytics,Sales Analytics
Sales BOM,Ventas BOM
Sales BOM Help,Ayuda Venta BOM
Sales BOM Item,Ventas de artículo de lista de materiales
Sales BOM Items,Los productos que la lista de materiales de ventas
Sales Common,Sales comunes
Sales Details,Ventas Details
Sales Discounts,Ventas Descuentos
Sales Email Settings,Ventas Configuración del correo electrónico
Sales Extras,Ventas Extras
Sales Invoice,Factura de venta
Sales Invoice Advance,Venta anticipada de facturas
Sales Invoice Item,Ventas artículo Factura
Sales Invoice Items,Factura de venta Artículos
Sales Invoice Message,Ventas Mensaje Factura
Sales Invoice No,Ventas factura n º
Sales Invoice Trends,Ventas Tendencias Factura
Sales Order,De órdenes de venta
Sales Order Date,Fecha de pedido de ventas
Sales Order Item,Sales Artículo de Orden
Sales Order Items,Ventas Items
Sales Order Message,Ventas Mensaje Orden
Sales Order No,Ventas de orden
Sales Order Required,Se requiere de órdenes de venta
Sales Order Trend,Sales Order Tendencia
Sales Partner,Sales Partner
Sales Partner Name,Denominación de venta Socio
Sales Partner Target,Sales Target Socio
Sales Partners Commission,Partners Sales Comisión
Sales Person,Sales Person
Sales Person Incharge,Sales Person Incharge
Sales Person Name,Nombre de la persona de ventas
Sales Person Target Variance (Item Group-Wise),Sales Person Varianza del objetivo (punto Group-Wise)
Sales Person Targets,Objetivos de ventas Persona
Sales Person-wise Transaction Summary,Resumen de transacciones de persona prudente Ventas
Sales Register,Ventas Registrarse
Sales Return,Ventas Retorno
Sales Taxes and Charges,Ventas Impuestos y Cargos
Sales Taxes and Charges Master,Impuestos de Ventas y Master Cargos
Sales Team,Equipo de ventas
Sales Team Details,Detalles del Equipo de Ventas
Sales Team1,Ventas Team1
Sales and Purchase,Ventas y Compras
Sales campaigns,Ventas campañas
Sales persons and targets,Venta personas y las metas
Sales taxes template.,Ventas impuestos plantilla.
Sales territories.,Ventas territorios.
Salutation,Saludo
Same file has already been attached to the record,Mismo archivo ya se ha adjuntado al expediente
Sample Size,Tamaño de la muestra
Sanctioned Amount,Importe sancionado
Saturday,Sábado
Save,Ahorrar
Schedule,Programar
Schedule Details,Detalles de planificación
Scheduled,Programado
Scheduled Confirmation Date,Confirmación Fecha programada
Scheduled Date,Fecha Programada
Scheduler Log,Programador de sesión
School/University,Escuela / Universidad
Score (0-5),Puntuación (0-5)
Score Earned,Puntos Ganados
Scrap %,Chatarra%
Script,Guión
Script Report,Informe de secuencias de comandos
Script Type,Tipo de secuencia
Script to attach to all web pages.,Script para unir a todas las páginas web.
Search,Buscar
Search Fields,Campos de búsqueda
Seasonality for setting budgets.,La estacionalidad para el establecimiento de los presupuestos.
Section Break,Salto de sección
Security Settings,Configuración de seguridad
"See ""Rate Of Materials Based On"" in Costing Section",Consulte &quot;Cambio de los materiales basados ​​en&quot; la sección de Costos
Select,Seleccionar
"Select ""Yes"" for sub - contracting items",Seleccione &quot;Sí&quot; para sub - temas de contratación
"Select ""Yes"" if this item is to be sent to a customer or received from a supplier as a sample. Delivery notes and Purchase Receipts will update stock levels but there will be no invoice against this item.","Seleccione &quot;Sí&quot; si este artículo se va a enviar a un cliente o recibido de un proveedor como muestra. Albaranes y facturas de compra se actualizarán los niveles de existencias, pero no habrá ninguna factura en contra de este artículo."
"Select ""Yes"" if this item is used for some internal purpose in your company.",Seleccione &quot;Sí&quot; si este elemento se utiliza para un propósito interno de su empresa.
"Select ""Yes"" if this item represents some work like training, designing, consulting etc.","Seleccione &quot;Sí&quot; si esta partida representa un trabajo como la formación, el diseño, consultoría, etc"
"Select ""Yes"" if you are maintaining stock of this item in your Inventory.",Seleccione &quot;Sí&quot; si usted está manteniendo un balance de este artículo en su inventario.
"Select ""Yes"" if you supply raw materials to your supplier to manufacture this item.",Seleccione &quot;Sí&quot; si usted suministra materias primas a su proveedor para la fabricación de este artículo.
Select All,Seleccionar todo
Select Attachments,Seleccione Adjuntos
Select Budget Distribution to unevenly distribute targets across months.,Seleccione Distribución del Presupuesto para distribuir de manera desigual a través de objetivos meses.
"Select Budget Distribution, if you want to track based on seasonality.","Seleccione Distribución del Presupuesto, si desea realizar un seguimiento sobre la base de la estacionalidad."
Select Customer,Seleccione Cliente
Select Digest Content,Seleccione Contenido Resumen
Select DocType,Seleccione tipo de documento
Select Document Type,Seleccione el tipo de documento
Select Document Type or Role to start.,Seleccione el tipo de documento o papel para comenzar.
Select Items,Seleccione Artículos
Select PR,Seleccione PR
Select Print Format,Seleccione Formato de impresión
Select Print Heading,Seleccione Imprimir Encabezado
Select Report Name,Seleccione Nombre de informe
Select Role,Seleccione Papel
Select Sales Orders,Seleccione órdenes de venta
Select Sales Orders from which you want to create Production Orders.,Seleccione órdenes de venta desde el que desea crear órdenes de producción.
Select Terms and Conditions,Seleccione Términos y Condiciones
Select Time Logs and Submit to create a new Sales Invoice.,Seleccione Time Registros y Enviar para crear una nueva factura de venta.
Select Transaction,Seleccione Transaction
Select Type,Seleccione el tipo de
Select User or Property to start.,Seleccionar usuario o propiedad para comenzar.
Select a Banner Image first.,Seleccione un Banner Imagen primero.
Select account head of the bank where cheque was deposited.,Seleccione cabeza cuenta del banco donde cheque fue depositado.
Select an image of approx width 150px with a transparent background for best results.,Seleccione una imagen de unos 150px ancho con un fondo transparente para obtener mejores resultados.
Select company name first.,Seleccione el nombre de la empresa en primer lugar.
Select dates to create a new ,Selecciona fechas para crear un nuevo
Select name of Customer to whom project belongs,Seleccione el nombre del cliente al que pertenece proyecto
Select or drag across time slots to create a new event.,Seleccione o arrastre las ranuras de tiempo para crear un nuevo evento.
Select template from which you want to get the Goals,Seleccione la plantilla de la que desea obtener los Objetivos de
Select the Employee for whom you are creating the Appraisal.,Seleccione el empleado para el que está creando la tasación.
Select the currency in which price list is maintained,Seleccione la moneda en la que se mantiene la lista de precios
Select the label after which you want to insert new field.,Seleccione la etiqueta después de la cual desea insertar el campo nuevo.
Select the period when the invoice will be generated automatically,Seleccione el período en que la factura se generará automáticamente
"Select the price list as entered in ""Price List"" master. This will pull the reference rates of items against this price list as specified in ""Item"" master.",Seleccione la lista de precios según la inscripción en la &quot;Lista de Precios&quot; maestro. Esto hará que los tipos de referencia de artículos en contra de esta lista de precios como se especifica en el &quot;Item&quot; maestro.
Select the relevant company name if you have multiple companies,"Seleccione el nombre de la empresa correspondiente, si usted tiene múltiples empresas"
Select the relevant company name if you have multiple companies.,"Seleccione el nombre de la empresa correspondiente, si usted tiene múltiples empresas."
Select who you want to send this newsletter to,Seleccione a quien desea enviar este boletín a
"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Si selecciona &quot;Sí&quot; permitirá que este elemento aparezca en la orden de compra, recibo de compra."
"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","Si selecciona &quot;Sí&quot; permitirá a este artículo a figurar en órdenes de venta, nota de entrega"
"Selecting ""Yes"" will allow you to create Bill of Material showing raw material and operational costs incurred to manufacture this item.",Si selecciona &quot;Sí&quot; le permitirá crear listas de materiales que muestra la materia prima y los costos operativos incurridos para la fabricación de este artículo.
"Selecting ""Yes"" will allow you to make a Production Order for this item.",Si selecciona &quot;Sí&quot; le permitirá hacer una orden de producción para este artículo.
"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.",Si selecciona &quot;Sí&quot; le dará una identidad única a cada entidad de este artículo que se puede ver en la serie No maestro.
Selling,De venta
Selling Settings,Venta de Configuración
Send,Enviar
Send Autoreply,Enviar respuesta automática
Send Email,Enviar correo
Send From,Enviar desde
Send Invite Email,Enviar invitación Email
Send Me A Copy,Enviarme una copia
Send Notifications To,Enviar notificaciones a
Send Print in Body and Attachment,Enviar Imprimir en cuerpo y adjuntos
Send SMS,Enviar SMS
Send To,Enviar a un
Send To Type,Enviar a un tipo
Send an email reminder in the morning,Enviar un recordatorio por correo electrónico en la mañana
Send automatic emails to Contacts on Submitting transactions.,Enviar correos electrónicos automáticos en Contactos de Envío de transacciones.
Send mass SMS to your contacts,Envíe SMS masivos a sus contactos
Send regular summary reports via Email.,Enviar informes resumidos periódicos por correo electrónico.
Send to this list,Enviar a esta lista
Sender,Remitente
Sender Name,Nombre del remitente
"Sending newsletters is not allowed for Trial users, \				to prevent abuse of this feature.","Envío de boletines no se permite a los usuarios de prueba, \ para evitar el abuso de esta función."
Sent Mail,Correo enviado
Sent On,Enviado en
Sent Quotation,Presupuesto enviado
Separate production order will be created for each finished good item.,Para la producción por separado se crea para cada ítem buen acabado.
Serial No,Número de orden
Serial No Details,Detalles N º de serie
Serial No Service Contract Expiry,Número de orden de servicio de caducidad del contrato
Serial No Status,Serial No Estado
Serial No Warranty Expiry,Número de serie Garantía de caducidad
Serialized Item: ',Artículo serializado: &#39;
Series List for this Transaction,Series de lista para esta transacción
Server,Servidor
Service Address,Dirección del Servicio
Services,Servicios
Session Expired. Logging you out,Sesión ha finalizado. Iniciando a cabo
Session Expires in (time),Sesión caduca en (hora)
Session Expiry,Sesión de caducidad
Session Expiry in Hours e.g. 06:00,"Sesión de caducidad en horas, por ejemplo 06:00"
Set Banner from Image,Conjunto de la bandera de la Imagen
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Conjunto de objetos inteligentes Group-presupuestos en este Territorio. También puede incluir la estacionalidad mediante el establecimiento de la distribución.
Set Login and Password if authentication is required.,"Establecer inicio de sesión y contraseña, si se requiere autenticación."
Set New Password,Establecer nueva contraseña
Set Value,Establecer valor
"Set a new password and ""Save""",Establezca una contraseña nueva y &quot;Guardar&quot;
Set prefix for numbering series on your transactions,Establecer prefijo de numeración de serie en sus transacciones
Set targets Item Group-wise for this Sales Person.,Establecer metas grupo que tienen el artículo de esta persona de ventas.
"Set your background color, font and image (tiled)","Establezca su color de fondo, tipo de letra y la imagen (mosaico)"
"Set your outgoing mail SMTP settings here. All system generated notifications, emails will go from this mail server. If you are not sure, leave this blank to use ERPNext servers (emails will still be sent from your email id) or contact your email provider.","Establezca la configuración de correo SMTP salientes aquí. Todo el sistema genera notificaciones, correos electrónicos irá desde este servidor de correo. Si no está seguro, deje este campo en blanco para utilizar servidores ERPNext (correos electrónicos seguirán siendo enviados a su correo electrónico de identificación) o póngase en contacto con su proveedor de correo electrónico."
Setting Account Type helps in selecting this Account in transactions.,Tipo de Ajuste de cuentas ayuda en la selección de esta cuenta en las transacciones.
Settings,Configuración
Settings for About Us Page.,Ajustes para Nosotros Pagina.
Settings for Accounts,Ajustes de cuentas
Settings for Buying Module,Ajustes para la compra de módulo
Settings for Contact Us Page,Ajustes para Contáctenos Página
Settings for Contact Us Page.,Ajustes para la página de contacto.
Settings for Selling Module,Ajustes para vender Módulo
Settings for the About Us Page,Ajustes de la página ¿Quiénes somos?
"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""",Ajustes para extraer los solicitantes de empleo a partir de un ejemplo buzón &quot;jobs@example.com&quot;
Setup,Disposición
Setup Control,Control de la instalación
Setup Series,Configuración Series
Setup of Shopping Cart.,Configuración de Compras.
Setup of fonts and background.,Configuración de fuentes y el fondo.
"Setup of top navigation bar, footer and logo.","Configuración de la barra de navegación superior, pie de página y el logotipo."
Setup to pull emails from support email account,Configuración para extraer mensajes de correo electrónico desde la cuenta de correo electrónico de apoyo
Share,Participación
Share With,Compartir Con
Shipments to customers.,Los envíos a los clientes.
Shipping,Envío
Shipping Account,Cuenta Envios
Shipping Address,Dirección de envío
Shipping Address Name,Nombre de embarque Dirección
Shipping Amount,Cantidad del envío
Shipping Rule,Regla del envío
Shipping Rule Condition,Condición inicial Regla
Shipping Rule Conditions,Envío Regla Condiciones
Shipping Rule Label,Etiqueta de envío Regla
Shipping Rules,Normas de Envío
Shop,Tienda
Shopping Cart,Cesta de la compra
Shopping Cart Price List,Compras Lista de Precios
Shopping Cart Price Lists,Carrito listas de precios
Shopping Cart Settings,Carrito Ajustes
Shopping Cart Shipping Rule,Compras Envios Regla
Shopping Cart Shipping Rules,Carrito Normas de Envío
Shopping Cart Taxes and Charges Master,Carrito impuestos y las cargas Maestro
Shopping Cart Taxes and Charges Masters,Carrito Impuestos y Masters
Short Bio,Nota Biográfica
Short Name,Nombre corto
Short biography for website and other publications.,Breve biografía de la página web y otras publicaciones.
Shortcut,Atajo
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Mostrar &quot;En Stock&quot; o &quot;no está en stock&quot;, basada en el stock disponible en este almacén."
Show Details,Mostrar detalles
Show In Website,Mostrar en el sitio web
Show Print First,Mostrar Imprimir Primera
Show a slideshow at the top of the page,Mostrar una presentación de diapositivas en la parte superior de la página
Show in Website,Mostrar en el sitio web
Show rows with zero values,Mostrar filas con valores iguales a cero
Show this slideshow at the top of the page,Ver este vídeo en la parte superior de la página
Showing only for,Mostrando sólo para
Signature,Firma
Signature to be appended at the end of every email,Firma que se adjunta al final de cada correo electrónico
Single,Solo
Single Post (article).,Mensaje Individual (artículo).
Single unit of an Item.,Una sola unidad de un elemento.
Sitemap Domain,Sitemap dominio
Slideshow,Presentación
Slideshow Items,Artículos Presentación
Slideshow Name,Nombre Presentación
Slideshow like display for the website,Presentación como visualización de la página web
Small Text,Texto pequeño
Solid background color (default light gray),Color de fondo sólido (gris claro defecto)
Sorry we were unable to find what you were looking for.,Lamentablemente no hemos podido encontrar lo que estabas buscando.
Sorry you are not permitted to view this page.,"Disculpe, no tiene permiso para ver esta página."
Sorry! We can only allow upto 100 rows for Stock Reconciliation.,¡Lo siento! Sólo podemos permitir hasta 100 filas por la Reconciliación de Valores.
"Sorry! You cannot change company's default currency, because there are existing transactions against it. You will need to cancel those transactions if you want to change the default currency.","¡Lo siento! No se puede cambiar la moneda por defecto de la empresa, porque existen operaciones existentes en su contra. Usted tendrá que cancelar esas transacciones si desea cambiar la moneda por defecto."
Sorry. Companies cannot be merged,Lo siento. Las empresas no pueden fusionarse
Sorry. Serial Nos. cannot be merged,Lo siento. Nos. de serie no se puede fusionar
Sort By,Ordenado por
Source,Fuente
Source Warehouse,Fuente de depósito
Source and Target Warehouse cannot be same,Origen y destino de depósito no puede ser el mismo
Source of th,Fuente de th
"Source of the lead. If via a campaign, select ""Campaign""","Origen de la iniciativa. Si a través de una campaña, seleccione &quot;Campaña&quot;"
Spartan,Espartano
Special Page Settings,Configuración de Página Especial
Specification Details,Detalles Especificaciones
Specify Exchange Rate to convert one currency into another,Especifique el Tipo de Cambio de convertir una moneda en otra
"Specify a list of Territories, for which, this Price List is valid","Especifica una lista de los territorios, para lo cual, la lista de precios es válida"
"Specify a list of Territories, for which, this Shipping Rule is valid","Especifica una lista de los territorios, para lo cual, esta Regla envío es válida"
"Specify a list of Territories, for which, this Taxes Master is valid","Especifica una lista de los territorios, para lo cual, este Impuestos Master es válida"
Specify conditions to calculate shipping amount,Especificar las condiciones de calcular el importe de envío
Split Delivery Note into packages.,Dividir nota de entrega en paquetes.
Standard,Estándar
Standard Rate,Tarifa Estándar
"Standard Terms and Conditions that can be added to Sales and Purchases.Examples:1. Validity of the offer.1. Payment Terms (In Advance, On Credit, part advance etc).1. What is extra (or payable by the Customer).1. Safety / usage warning.1. Warranty if any.1. Returns Policy.1. Terms of shipping, if applicable.1. Ways of addressing disputes, indemnity, liability, etc.1. Address and Contact of your Company.","Términos y condiciones generales que se pueden añadir a las ventas y Purchases.Examples: 1. Validez de la offer.1. Condiciones de pago (por adelantado, el crédito, etc adelantado parte) .1. ¿Qué es extra (o por pagar por el Cliente) .1. Seguridad / uso warning.1. Garantía si any.1. Devoluciones Policy.1. Condiciones de envío, si applicable.1. Formas de abordar los conflictos, indemnización, responsabilidad, etc.1. Dirección y Contacto de la Compañía."
"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.#### NoteThe 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.#### Description of Columns1. Calculation Type:     - This can be on **Net Total** (that is the sum of basic amount).    - **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.    - **Actual** (as mentioned).2. Account Head: The Account ledger under which this tax will be booked3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.4. Description: Description of the tax (that will be printed in invoices / quotes).5. Rate: Tax rate.6. Amount: Tax amount.7. Total: Cumulative total to this point.8. 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).9. 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.10. Add or Deduct: Whether you want to add or deduct the tax.","Plantilla de gravamen que puede aplicarse a todas las transacciones de compra. Esta plantilla puede contener la lista de cabezas de impuestos y también otros jefes de gastos como &quot;envío&quot;, &quot;Seguros&quot;, &quot;Manipulación&quot;, etc tasa impositiva # # # # NotaEl que defina aquí será el tipo de gravamen general para todos los elementos ** ** . Si hay elementos ** ** que tienen ritmos diferentes, se deben agregar en el Impuesto artículo ** ** mesa en el artículo ** ** maestro. # # # # Descripción del Columns1. Tipo de cálculo: - Esto puede ser en ** Total Net ** (que es la suma de la cantidad de base). - ** En Fila Anterior total / importe ** (para los impuestos acumulativos o cargos). Si selecciona esta opción, el impuesto se aplica como un porcentaje de la fila anterior (en la tabla de impuestos) o cantidad total. - ** Actual ** (como se mencionó) .2. Jefe de la cuenta: El libro mayor de cuentas en las que este impuesto será booked3. Centro de coste: Si el impuesto / carga es un ingreso (como gastos de envío) o gasto que debe ser reservado frente a un coste Center.4. Descripción: Descripción del impuesto (que se imprimirá en las facturas / cotizaciones) .5. Tarifas: Impuesto rate.6. Importe: Impuestos amount.7. Total: Total acumulado de este point.8. Ingrese Fila: Si se basa en &quot;Total Fila Anterior&quot; se puede seleccionar el número de fila que se tomará como base para este cálculo (por defecto es la fila anterior) .9. Considere la posibilidad de impuesto o tasa para: En esta sección se puede especificar si el impuesto / carga es sólo para la valoración (no es una parte del total) o sólo para el total (no agrega valor al elemento) o para both.10. Agregar o deducir: Si desea agregar o deducir el impuesto."
"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.#### NoteThe 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.#### Description of Columns1. Calculation Type:     - This can be on **Net Total** (that is the sum of basic amount).    - **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.    - **Actual** (as mentioned).2. Account Head: The Account ledger under which this tax will be booked3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.4. Description: Description of the tax (that will be printed in invoices / quotes).5. Rate: Tax rate.6. Amount: Tax amount.7. Total: Cumulative total to this point.8. 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).9. 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.","Plantilla de gravamen que puede aplicarse a todas las transacciones de venta. Esta plantilla puede contener la lista de cabezas de impuestos y también otros gastos / ingresos cabezas como &quot;envío&quot;, &quot;Seguros&quot;, &quot;Manipulación&quot;, etc del Hotel # # # # NotaEl fiscal que defina aquí será el tipo de gravamen general para todos los elementos ** **. Si hay elementos ** ** que tienen ritmos diferentes, se deben agregar en el Impuesto artículo ** ** mesa en el artículo ** ** maestro. # # # # Descripción del Columns1. Tipo de cálculo: - Esto puede ser en ** Total Net ** (que es la suma de la cantidad de base). - ** En Fila Anterior total / importe ** (para los impuestos acumulativos o cargos). Si selecciona esta opción, el impuesto se aplica como un porcentaje de la fila anterior (en la tabla de impuestos) o cantidad total. - ** Actual ** (como se mencionó) .2. Jefe de la cuenta: El libro mayor de cuentas en las que este impuesto será booked3. Centro de coste: Si el impuesto / carga es un ingreso (como gastos de envío) o gasto que debe ser reservado frente a un coste Center.4. Descripción: Descripción del impuesto (que se imprimirá en las facturas / cotizaciones) .5. Tarifas: Impuesto rate.6. Importe: Impuestos amount.7. Total: Total acumulado de este point.8. Ingrese Fila: Si se basa en &quot;Total Fila Anterior&quot; se puede seleccionar el número de fila que se tomará como base para este cálculo (por defecto es la fila anterior) .9. ¿Es este impuesto incluido en la tarifa básica:? Si marca esto, significa que este impuesto no se mostrará a continuación la tabla de partidas, pero se incluirán en la Tasa Básica en su mesa elemento principal. Esto es útil cuando usted quiere dar un precio fijo (incluidos todos los impuestos) precio a los clientes."
Start Date,Fecha de inicio
Start Report For,Inicio Informe para
Start date of current invoice's period,Fecha de inicio del periodo de facturación actual
Starts on,Comienza el
Startup,Inicio
State,Estado
States,Estados
Static Parameters,Parámetros estáticos
Status,Estado
Status must be one of ,Estado debe ser uno de los
Status should be Submitted,Estado debe ser presentado
Statutory info and other general information about your Supplier,Información legal y otra información general acerca de su Proveedor
Stock,Valores
Stock Adjustment Account,Cuenta de Ajuste
Stock Adjustment Cost Center,Stock Ajuste de centros de coste
Stock Ageing,El envejecimiento de la
Stock Analytics,Análisis de la
Stock Balance,De la balanza
Stock Entry,De la entrada
Stock Entry Detail,Detalle de la entrada
Stock Frozen Upto,Stock Frozen Upto
Stock In Hand Account,Disponible cuenta Hand
Stock Ledger,Stock Ledger
Stock Ledger Entry,Stock Ledger Entry
Stock Level,Nivel de existencias
Stock Qty,Stock Cantidad
Stock Queue (FIFO),De la cola (FIFO)
Stock Received But Not Billed,"Stock recibidas, pero no facturada"
Stock Reconciliation,De la Reconciliación
Stock Reconciliation file not uploaded,Foto de archivo de la Reconciliación no cargado
Stock Settings,Configuración de
Stock UOM,De la UOM
Stock UOM Replace Utility,De la UOM utilidad replace
Stock Uom,De la UOM
Stock Value,Valor de la
Stock Value Difference,Stock valor de la diferencia
Stop,Deténgase
Stop users from making Leave Applications on following days.,Deje que los usuarios realicen aplicaciones dejan en los días siguientes.
Stopped,Detenido
Structure cost centers for budgeting.,Centros estructura de costos para el presupuesto.
Structure of books of accounts.,Estructura de los libros de cuentas.
Style,Estilo
Style Settings,Ajustes de estilo
"Style represents the button color: Success - Green, Danger - Red, Inverse - Black, Primary - Dark Blue, Info - Light Blue, Warning - Orange","Estilo representa el color del botón: Success - Verde, Peligro - rojo, Inverse - Negro, Primaria - Dark Info Azul - Azul claro, Advertencia - Orange"
"Sub-currency. For e.g. ""Cent""","Sub-moneda. Por ejemplo, &quot;Cent&quot;"
Sub-domain provided by erpnext.com,Sub-dominio proporcionado por erpnext.com
Subcontract,Subcontratar
Subdomain,Subdominio
Subject,Sujeto
Submit,Presentar
Submit Salary Slip,Enviar nómina
Submit all salary slips for the above selected criteria,"Envíe todos los recibos de sueldos para los criterios anteriormente indicados,"
Submitted,Enviado
Submitted Record cannot be deleted,Record Enviado no se puede eliminar
Subsidiary,Filial
Success,Éxito
Successful: ,Con éxito:
Suggestion,Sugerencia
Suggestions,Sugerencias
Sunday,Domingo
Supplier,Proveedor
Supplier (Payable) Account,Cuenta de proveedor (de pago)
Supplier (vendor) name as entered in supplier master,Proveedor (vendedor) Nombre tal como aparece en Maestro de proveedores
Supplier Account Head,Head cuenta de proveedor
Supplier Address,Proveedor Dirección
Supplier Details,Detalles del producto
Supplier Intro,Proveedor Intro
Supplier Invoice Date,Proveedor Fecha de la factura
Supplier Invoice No,Factura Proveedor No
Supplier Name,Nombre del proveedor
Supplier Naming By,Proveedor de nomenclatura
Supplier Part Number,Número de pieza del proveedor
Supplier Quotation,Proveedor Cotización
Supplier Quotation Item,Proveedor del artículo Cotización
Supplier Reference,Proveedor de referencia
Supplier Shipment Date,Proveedor envío Fecha
Supplier Shipment No,Envío Proveedor No
Supplier Type,Proveedor Tipo
Supplier Warehouse,Proveedor Almacén
Supplier Warehouse mandatory subcontracted purchase receipt,Depósito obligatorio recibo de compra del proveedor subcontratado
Supplier classification.,Proveedor de clasificación.
Supplier database.,Proveedor de base de datos.
Supplier of Goods or Services.,Proveedor de Productos o Servicios.
Supplier warehouse where you have issued raw materials for sub - contracting,Proveedor almacén donde se han emitido las materias primas para la sub - contratación
Supplier's currency,Proveedor de moneda
Support,Apoyar
Support Analytics,Soporte Analytics
Support Email,Asistencia por correo electrónico
Support Email Id,Apoyar Identificación del email
Support Password,Soporte contraseña
Support Ticket,Ticket de soporte
Support queries from customers.,Apoyar las consultas de los clientes.
Symbol,Símbolo
Sync Inbox,Bandeja de entrada Sync
Sync Support Mails,Sincronizar correos de apoyo
Sync with Dropbox,Sincronización con Dropbox
Sync with Google Drive,Sincronización con Google Drive
System,Sistema
System Defaults,Valores predeterminados del sistema
System Settings,Configuración del sistema
System User,Usuario del Sistema
"System User (login) ID. If set, it will become default for all HR forms.","Usuario del sistema (login) ID. Si se establece, será por defecto para todas las formas de recursos humanos."
System for managing Backups,Sistema para la gestión de copias de seguridad
System generated mails will be sent from this email id.,Electrónicos generados por el sistema serán enviados desde este correo electrónico de identificación.
TL-,TL-
TLB-,TLB-
Table,Mesa
Table for Item that will be shown in Web Site,Tabla de la partida que se mostrará en el Sitio Web
Tag,Etiqueta
Tag Name,Name Tag
Tags,Etiquetas
Tahoma,Tahoma
Target,Objetivo
Target  Amount,Objetivo Importe
Target Detail,Target Detalle
Target Details,Detalles objetivo
Target Details1,Target Details1
Target Distribution,Target Distribution
Target Qty,Target Cantidad
Target Warehouse,De destino de depósito
Task,Tarea
Task Details,Detalles de la tarea
Tax,Impuesto
Tax Calculation,Cálculo de impuestos
Tax Category can not be 'Valuation' or 'Valuation and Total' 					as all items are non-stock items,Categoría impuestos no pueden &#39;Valoración&#39; o &#39;Valoración y total &quot;como todos los artículos son artículos no están en stock
Tax Master,Maestro Impuestos
Tax Rate,Tasa de Impuesto
Tax Template for Purchase,Impuesto Plantilla para Compra
Tax Template for Sales,Impuesto Plantilla para Ventas
Tax and other salary deductions.,Impuestos y otras deducciones salariales.
Tax detail table fetched from item master as a string and stored in this field.Used for Taxes and Charges,Tabla de impuestos detalle descargue de maestro de artículos en forma de cadena y se almacenan en esta field.Used de Impuestos y Cargos
Taxable,Imponible
Taxes,Impuestos
Taxes and Charges,Impuestos y Cargos
Taxes and Charges Added,Los impuestos y cargos adicionales
Taxes and Charges Added (Company Currency),Impuestos y Cargos Agregado (Empresa moneda)
Taxes and Charges Calculation,Los impuestos y cargos de cálculo
Taxes and Charges Deducted,Los impuestos y gastos deducidos
Taxes and Charges Deducted (Company Currency),Las tasas y los gastos cobrados (Empresa moneda)
Taxes and Charges Total,Los impuestos y cargos totales
Taxes and Charges Total (Company Currency),Impuestos y Gastos Total (Empresa moneda)
Taxes and Charges1,Los impuestos y Charges1
Team Members,Miembros del Equipo
Team Members Heading,Miembros del Equipo partida
Template for employee performance appraisals.,Modelo para la evaluación del desempeño de los empleados.
Template of terms or contract.,Plantilla de los términos o condiciones.
Term Details,Datos del plazo
Terms and Conditions,Términos y Condiciones
Terms and Conditions Content,Términos y Condiciones Content
Terms and Conditions Details,Términos y Condiciones Detalles
Terms and Conditions Template,Términos y Condiciones de plantilla
Terms and Conditions1,Términos y Condiciones1
Territory,Territorio
Territory Manager,Gerente de Territorio
Territory Name,Nombre Territorio
Territory Target Variance (Item Group-Wise),Varianza del objetivo Territorio (Artículo Group-Wise)
Territory Targets,Objetivos del Territorio
Test,Prueba
Test Email Id,Prueba de Identificación del email
Test Runner,Prueba Runner
Test the Newsletter,Pruebe el Boletín
Text,Texto
Text Align,Alineación del texto
Text Editor,Editor de texto
"The ""Web Page"" that is the website home page","La &quot;Página Web&quot;, que es la página de inicio del sitio web"
The BOM which will be replaced,La lista de materiales que será sustituido
"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""",El punto que representa el paquete. Este elemento debe tener &quot;es el tema de&quot; como &quot;No&quot; y &quot;¿Sales Item&quot; como &quot;Sí&quot;
The date at which current entry is made in system.,La fecha en que se efectúe la entrada actual en el sistema.
The date at which current entry will get or has actually executed.,La fecha en la que la entrada actual se consigue o se ejecuta realmente.
The date on which next invoice will be generated. It is generated on submit.,La fecha en la que será la próxima factura generada. Se genera en enviar.
The date on which recurring invoice will be stop,La fecha de factura recurrente se detenga
"The day of the month on which auto invoice will be generated e.g. 05, 28 etc ","El día del mes en el que se generará factura auto por ejemplo 05, 28, etc"
The first Leave Approver in the list will be set as the default Leave Approver,El primer aprobador licencia en la lista se establecerá como el aprobador licencia por defecto
The gross weight of the package. Usually net weight + packaging material weight. (for print),"El peso bruto del paquete. Por lo general, el peso neto + Peso del material de embalaje. (Para imprimir)"
The name of your company / website as you want to appear on browser title bar. All pages will have this as the prefix to the title.,El nombre de su empresa / sitio web como usted desea que aparezca en la barra de título del navegador. Todas las páginas tienen esto como el prefijo del título.
The net weight of this package. (calculated automatically as sum of net weight of items),El peso neto de este paquete. (Calculado automáticamente como la suma del peso neto de los artículos)
The new BOM after replacement,La lista de materiales nuevo después de sustituirlo
The rate at which Bill Currency is converted into company's base currency,La velocidad a la cual se convierte en moneda Bill moneda base empresa
"The system provides pre-defined roles, but you can <a href='#List/Role'>add new roles</a> to set finer permissions","El sistema proporciona roles predefinidos, pero usted puede <a href='#List/Role'>añadir nuevas funciones</a> para establecer permisos más finos"
The unique id for tracking all recurring invoices. It is generated on submit.,El identificador único para el seguimiento de todas las facturas recurrentes. Se genera en enviar.
Then By (optional),Luego por (opcional)
These properties are Link Type fields from all Documents.,Estas propiedades son campos de tipo de enlace de todos los documentos.
"These properties can also be used to 'assign' a particular document, whose property matches with the User's property to a User. These can be set using the <a href='#permission-manager'>Permission Manager</a>","Estas propiedades también se puede utilizar para &quot;asignar&quot; un documento en particular, cuya propiedad corresponde a la propiedad del usuario a un usuario. Estos se pueden establecer mediante el <a href='#permission-manager'>Administrador de autorización</a>"
These properties will appear as values in forms that contain them.,Estas propiedades aparecerá como valores en formas que los contienen.
These values will be automatically updated in transactions and also will be useful to restrict permissions for this user on transactions containing these values.,Estos valores se actualizan automáticamente en las transacciones y también será útil para restringir los permisos para este usuario sobre las transacciones que contienen estos valores.
This Price List will be selected as default for all Customers under this Group.,Esta lista de precios será seleccionado como predeterminado para todos los usuarios en este grupo.
This Time Log Batch has been billed.,Este lote Log El tiempo ha sido facturada.
This Time Log Batch has been cancelled.,Este lote Log El tiempo ha sido cancelada.
This Time Log conflicts with,Conflictos Log esta vez con
This account will be used to maintain value of available stock,Esta cuenta se utilizará para mantener el valor de los stocks disponibles
This currency will get fetched in Purchase transactions of this supplier,Esta moneda conseguirá exagerado en las transacciones de compra de este proveedor
This currency will get fetched in Sales transactions of this customer,Esta moneda conseguirá exagerado en las transacciones de venta de este cliente
"This feature is for merging duplicate warehouses. It will replace all the links of this warehouse by ""Merge Into"" warehouse. After merging you can delete this warehouse, as stock level for this warehouse will be zero.","Esta característica es para la fusión de almacenes duplicados. Se reemplazará todos los eslabones de esta bodega por &quot;Combinar en&quot; almacén. Después de la fusión puede eliminar este almacén, ya nivel de existencias de este almacén será cero."
This feature is only applicable to self hosted instances,Esta función sólo se aplica a los casos de auto hospedadas
This field will appear only if the fieldname defined here has value OR the rules are true (examples): <br>myfieldeval:doc.myfield=='My Value'<br>eval:doc.age>18,Este campo sólo aparecerá si el nombre del campo definido aquí tiene valor o las reglas son verdaderas (ejemplos): <br> myfieldeval: doc.myfield == &#39;My Value&#39; <br> eval: doc.age&gt; 18
This goes above the slideshow.,Esto va por encima de la presentación de diapositivas.
This is PERMANENT action and you cannot undo. Continue?,Esto es una acción permanente y no se puede deshacer. ¿Desea continuar?
This is an auto generated Material Request.,Se trata de un auto generada Solicitud de Materiales.
This is permanent action and you cannot undo. Continue?,Esta es una acción permanente y no se puede deshacer. ¿Desea continuar?
This is the number of the last created transaction with this prefix,Este es el número de la última transacción creado por este prefijo
This message goes away after you create your first customer.,Este mensaje desaparece después de crear su primer cliente.
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 las existencias en el sistema. Se suele utilizar para sincronizar los valores del sistema y lo que realmente existe en sus almacenes.
This will be used for setting rule in HR module,Esto será utilizado para la regla de ajuste en el módulo HR
Thread HTML,Tema HTML
Thursday,Jueves
Time,Tiempo
Time Log,Tiempo Conectarse
Time Log Batch,Lote Log Tiempo
Time Log Batch Detail,Tiempo de registro detallado de lote
Time Log Batch Details,Log Hora detalles lotes
Time Log Batch status must be 'Submitted',Tiempo de estado de lote Log debe ser &#39;Enviado&#39;
Time Log Status must be Submitted.,Tiempo Status Log debe ser presentada.
Time Log for tasks.,Registro de tiempo para las tareas.
Time Log is not billable,Tiempo Log no es facturable
Time Log must have status 'Submitted',Tiempo sesión debe tener el estado &quot;Enviado&quot;
Time Zone,Time Zone
Time Zones,Zonas de horario
Time and Budget,Tiempo y Presupuesto
Time at which items were delivered from warehouse,Momento en que los artículos fueron entregados desde el almacén
Time at which materials were received,Momento en que los materiales fueron recibidos
Title,Título
Title / headline of your page,Título / título de su página
Title Case,Título del caso
Title Prefix,Prefijo Título
To,A
To Currency,A la moneda
To Date,Conocer
To Discuss,Para discutir
To Do,Para hacer
To Do List,Para hacer la lista
To PR Date,Conocer PR
To Package No.,Para Paquete No.
To Reply,Para Responder
To Time,Para Tiempo
To Value,Para Valor
To Warehouse,Para Almacén
"To add a tag, open the document and click on ""Add Tag"" on the sidebar","Para agregar una etiqueta, abra el documento y haga clic en &quot;Añadir etiqueta&quot; en la barra lateral"
"To assign this issue, use the ""Assign"" button in the sidebar.","Para asignar este problema, utilice el botón &quot;Assign&quot; en la barra lateral."
"To automatically create Support Tickets from your incoming mail, set your POP3 settings here. You must ideally create a separate email id for the erp system so that all emails will be synced into the system from that mail id. If you are not sure, please contact your EMail Provider.","Para crear automáticamente Tickets de Soporte de su correo entrante, establecer la configuración de POP3 aquí. Lo ideal debe crear un ID de correo electrónico por separado para el sistema ERP para que todos los correos electrónicos se sincronizan en el sistema desde que id electrónico. Si no está seguro, póngase en contacto con su proveedor de correo electrónico."
"To create an Account Head under a different company, select the company and save customer.","Para crear un Jefe de Cuenta bajo una empresa diferente, seleccione la empresa y ahorrar al cliente."
To enable <b>Point of Sale</b> features,Para habilitar <b>Punto de Venta</b> características
To enable more currencies go to Setup > Currency,Para permitir que más divisas vaya a Configuración&gt; Moneda
"To fetch items again, click on 'Get Items' button \						or update the Quantity manually.","Para buscar elementos de nuevo, haga clic en &quot;Obtener elementos&quot; botón \ o actualizar la cantidad manualmente."
"To format columns, give column labels in the query.","Para dar formato a columnas, dar títulos de las columnas en la consulta."
"To further restrict permissions based on certain values in a document, use the 'Condition' settings.","Para restringir aún más permisos en función de determinados valores en un documento, utilice la &quot;condición&quot; de configuración."
To get Item Group in details table,Para obtener Grupo de artículos en tabla de Datos
To manage multiple series please go to Setup > Manage Series,Para gestionar múltiples series por favor vaya a Configuración&gt; Administrar Series
To restrict a User of a particular Role to documents that are explicitly assigned to them,Para restringir un usuario de un papel especial a los documentos que están expresamente asignadas
To restrict a User of a particular Role to documents that are only self-created.,Para restringir un usuario de un rol de particular a documentos que sólo son de creación propia.
"To set reorder level, item must be Purchase Item","Para definir el nivel de reorden, el artículo debe ser de compra del artículo"
"To set user roles, just go to <a href='#List/Profile'>Setup > Users</a> and click on the user to assign roles.","Para definir funciones de usuario, basta con ir a <a href='#List/Profile'>Configuración&gt; Usuarios</a> y haga clic en el usuario para asignar roles."
To track any installation or commissioning related work after sales,Para el seguimiento de cualquier instalación o puesta en servicio después de la venta relacionados
"To track brand name in the following documents<br>Delivery Note, Enuiry, Material Request, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Sales Invoice, Sales BOM, Sales Order, Serial No","Para realizar el seguimiento de marca en los siguientes documentos <br> Nota de Entrega, Enuiry, solicitud de materiales, artículos, orden de compra, comprobantes de compra, el recibo de compra, cotización, factura de venta, lista de materiales de ventas, pedidos de venta, Serial No"
To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.,Para realizar el seguimiento elemento en documentos de ventas y compras en base a sus números de serie. Esto también se puede utilizar para rastrear detalles de la garantía del producto.
To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,"Para el seguimiento de los elementos de documentos de ventas y compras con los números de lote <br> <b>Industria de Preferencia: Productos químicos, etc</b>"
To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.,Para el seguimiento de elementos mediante código de barras. Usted será capaz de entrar en los elementos de albarán y factura de venta mediante el escaneo de código de barras del artículo.
ToDo,ToDo
Tools,Instrumentos
Top,Superior
Top Bar,Bar Top
Top Bar Background,Fondo de la barra superior
Top Bar Item,Bar Producto Top
Top Bar Items,Los productos principales Bar
Top Bar Text,Top Bar texto
Top Bar text and background is same color. Please change.,Top Bar texto y el fondo es el mismo color. Por favor cambia.
Total,Total
Total (sum of) points distribution for all goals should be 100.,Total (la suma de) los puntos de distribución para todos los objetivos deben ser 100.
Total Advance,Avance total
Total Amount,Monto Total
Total Amount To Pay,Monto total a pagar
Total Amount in Words,Monto total de palabras
Total Billing This Year: ,Facturación total de este año:
Total Claimed Amount,Monto total reclamado
Total Commission,Total Comisión
Total Cost,Coste total
Total Credit,Crédito Total
Total Debit,Débito total
Total Deduction,Deducción total
Total Earning,Ganancia total
Total Experience,Experiencia Total
Total Hours,Total de horas
Total Hours (Expected),Horas totales (esperados)
Total Invoiced Amount,Importe total facturado
Total Leave Days,Total de días Permiso
Total Leaves Allocated,Hojas total asignado
Total Operating Cost,El coste total de
Total Points,Total de puntos
Total Raw Material Cost,Costo total de materia prima
Total SMS Sent,SMS enviados totales
Total Sanctioned Amount,Monto total Sancionado
Total Score (Out of 5),Puntaje total (de 5)
Total Tax (Company Currency),Total de Impuestos (Empresa moneda)
Total Taxes and Charges,Total de Impuestos y Cargos
Total Taxes and Charges (Company Currency),Total de Impuestos y Cargos (Compañía moneda)
Total Working Days In The Month,Total de días hábiles del mes
Total amount of invoices received from suppliers during the digest period,Importe total de las facturas recibidas de los proveedores durante el período de digestión
Total amount of invoices sent to the customer during the digest period,Importe total de las facturas se envía al cliente durante el período de digestión
Total in words,Total en palabras
Total production order qty for item,Cantidad total de la orden de fabricación para el artículo
Totals,Totales
Track separate Income and Expense for product verticals or divisions.,Seguimiento de Ingresos y Gastos por separado para los productos o divisiones verticales.
Track this Delivery Note against any Project,Seguir este albarán en contra de cualquier proyecto
Track this Sales Invoice against any Project,Seguir este Factura en contra de cualquier proyecto
Track this Sales Order against any Project,Seguir este orden de venta en contra de cualquier proyecto
Transaction,Transacción
Transaction Date,Fecha de Transacción
Transfer,Transferir
Transition Rules,Reglas de Transición
Transporter Info,Transportador Info
Transporter Name,Transportador Nombre
Transporter lorry number,Transportador número camión
Trash Reason,Trash Razón
Tree of item classification,Árbol de la clasificación del artículo
Trial Balance,Balance de Comprobación
Tuesday,Martes
Tweet will be shared via your user account (if specified),Tweet será compartido a través de su cuenta de usuario (si se especifica)
Twitter Share,Twitter Share
Twitter Share via,Twitter Compartir a través de
Type,Tipo
Type of document to rename.,Tipo de texto para cambiar el nombre.
Type of employment master.,Tipo de empleo maestro.
"Type of leaves like casual, sick etc.","Tipo de hojas como etc casual, enfermos"
Types of Expense Claim.,Tipos de reclamo de gastos.
Types of activities for Time Sheets,Tipos de actividades de hojas de tiempo
UOM,UOM
UOM Conversion Detail,UOM Detalle de conversión
UOM Conversion Details,UOM detalles de la conversión
UOM Conversion Factor,UOM factor de conversión
UOM Conversion Factor is mandatory,UOM factor de conversión es obligatoria
UOM Details,UOM Detalles
UOM Name,Nombre UOM
UOM Replace Utility,UOM utilidad replace
UPPER CASE,MAYÚSCULAS
UPPERCASE,MAYÚSCULAS
URL,URL
Unable to complete request: ,No se puede completar la solicitud:
Under AMC,Bajo AMC
Under Graduate,En virtud de Postgrado
Under Warranty,En garantía
Unit of Measure,Unidad de medida
"Unit of measurement of this item (e.g. Kg, Unit, No, Pair).","Unidad de medida de este artículo (Kg por ejemplo, Unidad, No, par)."
Units/Hour,Unidades / hora
Units/Shifts,Unidades / Turnos
Unmatched Amount,Importe sin igual
Unpaid,No pagado
Unread Messages,Los mensajes no leídos
Unscheduled,No programada
Unsubscribed,No suscrito
Upcoming Events for Today,Eventos para hoy
Update,Actualizar
Update Clearance Date,Actualizado Liquidación
Update Field,Actualizar campos
Update PR,Actualizar PR
Update Series,Actualización de la Serie
Update Series Number,Actualización Número de Serie
Update Stock,Actualización de almacen
Update Stock should be checked.,Actualización de stock debe ser revisado.
Update Value,Actualizar Valor
"Update allocated amount in the above table and then click ""Allocate"" button",Actualizar importe asignado en la tabla anterior y haga clic en &quot;Asignar&quot; botón
Update bank payment dates with journals.,Actualización de las fechas de pago bancario de las revistas.
Update is in progress. This may take some time.,Actualización está en curso. Esto puede llevar algún tiempo.
Updated,Actualizado
Upload Attachment,Subir adjunto
Upload Attendance,Subir Asistencia
Upload Backups to Dropbox,Cargar copias de seguridad de Dropbox
Upload Backups to Google Drive,Cargar copias de seguridad de Google Drive
Upload HTML,Sube HTML
Upload a .csv file with two columns: the old name and the new name. Max 500 rows.,Subir un archivo csv con dos columnas:. El nombre antiguo y el nuevo nombre. Max 500 filas.
Upload a file,Subir un archivo
Upload and Import,Subir e importar
Upload attendance from a .csv file,Sube la asistencia de un archivo. Csv
Upload stock balance via csv.,Sube saldo de existencias a través csv.
Uploading...,Subiendo ...
Upper Income,Ingresos más altos
Urgent,Urgente
Use Multi-Level BOM,Utilice Multi-Level BOM
Use SSL,Usar SSL
User,Usuario
User Cannot Create,El usuario no puede crear
User Cannot Search,El usuario no puede buscar
User ID,ID de usuario
User Image,Imagen del usuario
User Name,Nombre de usuario
User Remark,Usuario Comentario
User Remark will be added to Auto Remark,Observación de usuario se añadirá a Auto Observación
User Tags,Nube de etiquetas
User Type,Tipo de usuario
User must always select,Usuario siempre debe seleccionar
User not allowed entry in the Warehouse,No se permite la entrada del usuario en el almacén de
User not allowed to delete.,El usuario no permite eliminar.
UserRole,UserRole
Username,Nombre de usuario
Users who can approve a specific employee's leave applications,Los usuarios que pueden aprobar las solicitudes de licencia de un empleado específico
Users with this role are allowed to do / modify accounting entry before frozen date,Los usuarios con este rol pueden ver / modificar registro contable antes de la fecha congelado
Utilities,Utilidades
Utility,Utilidad
Valid For Territories,Válido para los territorios
Valid Upto,Válido Hasta que
Valid for Buying or Selling?,Válido para comprar o vender?
Valid for Territories,Válido para los territorios
Validate,Validar
Valuation,Valuación
Valuation Method,Método de valoración
Valuation Rate,Valoración de tipo
Valuation and Total,Valoración y Total
Value,Valor
Value missing for,Valor perdido para
Vehicle Dispatch Date,Vehículo Dispatch Fecha
Vehicle No,Vehículo No
Verdana,Verdana
Verified By,Verificado por
Visit,Visitar
Visit report for maintenance call.,Visita informe de llamada de mantenimiento.
Voucher Detail No,Vale Detalle Desierto
Voucher ID,Vale ID
Voucher Import Tool,Vale herramienta de importación
Voucher No,Vale No
Voucher Type,Vale Tipo
Voucher Type and Date,Tipo Bono y Fecha
WIP Warehouse required before Submit,WIP Depósito requerido antes de Enviar
Waiting for Customer,Esperando al Cliente
Walk In,Walk In
Warehouse,Almacén
Warehouse Contact Info,Almacén de información de contacto
Warehouse Detail,Almacén Detalle
Warehouse Name,Almacén Nombre
Warehouse User,Almacén del usuario
Warehouse Users,Usuarios Almacén
Warehouse and Reference,Almacén y referencia
Warehouse does not belong to company.,Almacén no pertenece a la empresa.
Warehouse where you are maintaining stock of rejected items,Almacén donde usted está manteniendo un balance de los artículos rechazados
Warehouse-Wise Stock Balance,Stock Equilibrio Warehouse-Wise
Warehouse-wise Item Reorder,Warehouse-sabio artículo reorden
Warehouses,Almacenes
Warn,Advertir
Warning,Advertencia
Warning: Leave application contains following block dates,Advertencia: solicitud de permiso contiene fechas siguientes bloques
Warranty / AMC Details,Garantía / AMC Detalles
Warranty / AMC Status,Garantía / AMC Estado
Warranty Expiry Date,Garantía Fecha de caducidad
Warranty Period (Days),Período de Garantía (días)
Warranty Period (in days),Período de garantía (en días)
Web Content,Web Content
Web Page,Página Web
Website,Sitio web
Website Description,Descripción del sitio
Website Item Group,Website grupo de elementos
Website Item Groups,Sitio Web Grupos de artículo:
Website Overall Settings,Sitio web Configuración general
Website Script,Sitio Web de secuencias de comandos
Website Settings,Ajustes del Sitio Web
Website Slideshow,Sitio Web Presentación
Website Slideshow Item,Sitio Web Presentación del artículo
Website User,Sitio web del usuario
Website Warehouse,Website Almacén
Wednesday,Miércoles
Weekly,Semanal
Weekly Off,Semanal Off
Weight UOM,Peso UOM
Weightage,Weightage
Weightage (%),Coeficiente de ponderación (%)
Welcome,Bienvenida
"When any of the checked transactions are ""Submitted"", an email pop-up automatically opened to send an email to the associated ""Contact"" in that transaction, with the transaction as an attachment. The user may or may not send the email.","Cuando alguna de las operaciones controladas son &quot;Enviado&quot;, un correo electrónico pop-up se abre automáticamente al enviar un correo electrónico a los asociados &quot;Contacto&quot; en esa transacción, la transacción como un archivo adjunto. El usuario puede o no puede enviar el correo electrónico."
"When you <b>Amend</b> a document after cancel and save it, it will get a new number that is a version of the old number.","Al <b>enmendar</b> un documento después de cancelar y lo guarda, se obtiene un número nuevo que es una versión del antiguo número."
Where items are stored.,Cuando los artículos se almacenan.
Where manufacturing operations are carried out.,Cuando las operaciones de elaboración se lleven a cabo.
Widowed,Viudo
Width,Ancho
Will be calculated automatically when you enter the details,Se calculará automáticamente al entrar en los detalles
Will be fetched from Customer,¿Será que ir a buscar al cliente
Will be updated after Sales Invoice is Submitted.,Se actualizará una vez enviada la factura de venta.
Will be updated when batched.,Se actualizará cuando reunidos.
Will be updated when billed.,Se actualizará cuando se le facture.
Will be used in url (usually first name).,Se utilizará en url (normalmente nombre).
With Operations,Con operaciones
Work Details,Detalles de trabajo
Work Done,Trabajo realizado
Work In Progress,Trabajo en curso
Work-in-Progress Warehouse,Almacén Work-in-Progress
Workflow,Flujo de trabajo
Workflow Action,Acción de flujo de trabajo
Workflow Action Master,Maestro acción de flujo de trabajo
Workflow Action Name,Nombre de la acción de flujo de trabajo
Workflow Document State,Estado de flujo de trabajo de documentos
Workflow Document States,Estados de flujos de trabajo de documentos
Workflow Name,Nombre del flujo de trabajo
Workflow State,Estado de flujo de trabajo
Workflow State Field,Estado de flujo de trabajo de campo
Workflow State Name,Nombre del estado de flujo de trabajo
Workflow Transition,La transición de flujo de trabajo
Workflow Transitions,Las transiciones de flujo de trabajo
Workflow state represents the current state of a document.,Estado de flujo de trabajo representa el estado actual de un documento.
Workflow will start after saving.,Flujo de trabajo comenzará después de guardar.
Working,Laboral
Workstation,Puesto de trabajo
Workstation Name,Nombre de estación de trabajo
Write,Escribir
Write Off Account,Cancelar cuenta
Write Off Amount,Escribir Off Importe
Write Off Amount <=,Escribir Off Importe &lt;=
Write Off Based On,Escribir apagado basado en
Write Off Cost Center,Escribir Off de centros de coste
Write Off Outstanding Amount,Escribir Off Monto Pendiente
Write Off Voucher,Escribir Off Voucher
Write a Python file in the same folder where this is saved and return column and result.,Escriba un archivo de Python en la misma carpeta donde esta se guarda y la columna de retorno y resultado.
Write a SELECT query. Note result is not paged (all data is sent in one go).,Escriba una consulta SELECT. Nota resultado no se pagina (todos los datos se envían en una sola vez).
Write sitemap.xml,Escribe sitemap.xml
Write titles and introductions to your blog.,Escriba títulos y las introducciones a tu blog.
Writers Introduction,Escritores Introducción
Wrong Template: Unable to find head row.,Plantilla incorrecto: no se puede encontrar la fila cabeza.
Year,Año
Year Closed,Año Cerrado
Year Name,Nombre Año
Year Start Date,Año Fecha de inicio
Year of Passing,Año de pasar
Yearly,Anual
Yes,Sí
Yesterday,Ayer
You are not authorized to do/modify back dated entries before ,Usted no está autorizado a hacer / modificar de nuevo las entradas de fecha anterior
You can enter any date manually,Puede introducir cualquier fecha manualmente
You can enter the minimum quantity of this item to be ordered.,Puede introducir la cantidad mínima de este artículo para ser ordenado.
You can not enter both Delivery Note No and Sales Invoice No. \					Please enter any one.,No se puede introducir tanto Albarán No y No. de venta de facturas \ Introduce cualquiera.
You can set various 'properties' to Users to set default values and apply permission rules based on the value of these properties in various forms.,Puede establecer varias &quot;propiedades&quot; a los usuarios configurar los valores por defecto y aplicar reglas de permisos basados ​​en el valor de estas propiedades en diversas formas.
You can start by selecting backup frequency and \					granting access for sync,Puedes empezar por seleccionar la frecuencia de copia de seguridad y \ otorgar acceso para la sincronización
You can use <a href='#Form/Customize Form'>Customize Form</a> to set levels on fields.,Puede utilizar <a href='#Form/Customize Form'>Personalizar formulario</a> para establecer los niveles en los campos.
You may need to update: ,Es posible que tenga que actualizar:
Your Customer's TAX registration numbers (if applicable) or any general information,De sus clientes números impuesto de matriculación (si es aplicable) o cualquier otra información de carácter general
"Your download is being built, this may take a few moments...","Su descarga se está construyendo, esto puede tardar unos minutos ..."
Your letter head content,El contenido de su carta de cabeza
Your sales person who will contact the customer in future,Su persona de las ventas que se comunicará con el cliente en el futuro
Your sales person who will contact the lead in future,Su persona de las ventas que se comunicará con el plomo en el futuro
Your sales person will get a reminder on this date to contact the customer,Su persona de ventas se pondrá un aviso en la fecha de contacto con el cliente
Your sales person will get a reminder on this date to contact the lead,Su persona de ventas se pondrá un aviso en la fecha en contacto con el plomo
Your support email id - must be a valid email - this is where your emails will come!,Su ID de correo electrónico de apoyo - debe ser un correo electrónico válido - aquí es donde tus correos electrónicos vendrá!
[Error],[Error]
[Label]:[Field Type]/[Options]:[Width],[Label]: [Tipo de campo] / [Opciones]: [Ancho]
add your own CSS (careful!),añadir su propio CSS (¡cuidado!)
adjust,ajustar
align-center,alinear el centro
align-justify,alineación justificar
align-left,alineación a la izquierda
align-right,alinear a la derecha
also be included in Item's rate,También se incluirá en la tarifa del artículo
and,y
arrow-down,flecha hacia abajo
arrow-left,flecha izquierda
arrow-right,flecha derecha
arrow-up,flecha hacia arriba
assigned by,asignado por
asterisk,asterisco
backward,hacia atrás
ban-circle,prohibición de círculo
barcode,código de barras
bell,campana
bold,audaz
book,libro
bookmark,marcador
briefcase,maletín
bullhorn,megáfono
calendar,calendario
camera,cámara
cancel,cancelar
cannot be 0,no puede ser 0
cannot be empty,no puede estar vacío
cannot be greater than 100,no puede ser mayor que 100
cannot be included in Item's rate,no puede ser incluido en la tarifa del artículo
"cannot have a URL, because it has child item(s)","no puede tener una URL, ya que tiene elemento secundario (s)"
cannot start with,no puede comenzar con
certificate,certificado
check,comprobar
chevron-down,Chevron-down
chevron-left,Chevron-izquierda
chevron-right,Chevron-derecha
chevron-up,Chevron-up
circle-arrow-down,círculo de flecha hacia abajo
circle-arrow-left,círculo de flecha izquierda
circle-arrow-right,círculo de flecha derecha
circle-arrow-up,"círculo, flecha hacia arriba"
cog,diente
comment,comentario
create a Custom Field of type Link (Profile) and then use the 'Condition' settings to map that field to the Permission rule.,crear un campo personalizado de enlace tipo (perfil) y luego usar la &quot;condición&quot; configuración para asignar ese campo a la regla de permiso.
dd-mm-yyyy,dd-mm-aaaa
dd/mm/yyyy,dd / mm / aaaa
deactivate,desactivar
does not belong to BOM: ,no pertenece a la lista de materiales:
does not exist,no existe
does not have role 'Leave Approver',no tiene papel sobre las vacaciones aprobador &#39;
does not match,no coincide
download,descargar
download-alt,download-alt
"e.g. Bank, Cash, Credit Card","por ejemplo, bancaria, Efectivo, Tarjeta de crédito"
"e.g. Kg, Unit, Nos, m","Kg por ejemplo, unidad, n, m"
edit,editar
eg. Cheque Number,por ejemplo. Número de Cheque
eject,expulsar
english,Inglés
envelope,sobre
español,español
example: Next Day Shipping,ejemplo: el siguiente día del envío
example: http://help.erpnext.com,ejemplo: http://help.erpnext.com
exclamation-sign,-signo de exclamación
eye-close,ojo de cerca
eye-open,los ojos abiertos
facetime-video,facetime-video
fast-backward,rápido hacia atrás
fast-forward,avance rápido
file,expediente
film,película
filter,filtrar
fire,fuego
flag,bandera
folder-close,carpeta de cerca
folder-open,carpeta a abrir
font,fuente
forward,adelante
français,français
fullscreen,fullscreen
gift,regalo
glass,vidrio
globe,globo
hand-down,mano hacia abajo
hand-left,a mano izquierda
hand-right,a mano derecha
hand-up,mano-up
has been entered atleast twice,se ha introducido al menos dos veces
have a common territory,tener un territorio común
have the same Barcode,tener el mismo código de barras
hdd,hdd
headphones,auriculares
heart,corazón
home,casa
icon,icono
in,en
inbox,bandeja de entrada
indent-left,indent-izquierda
indent-right,guión-derecha
info-sign,info-signo
is a cancelled Item,Es un Tema cancelado
is linked in,está vinculado en
is not a Stock Item,no es un elemento de serie
is not allowed.,no está permitido.
italic,itálico
leaf,hoja
lft,lft
list,lista
list-alt,lista-alt
lock,bloquear
lowercase,minúsculas
magnet,imán
map-marker,mapa del marcador
minus,menos
minus-sign,signo menos
mm-dd-yyyy,dd-mm-aaaa
mm/dd/yyyy,mm / dd / aaaa
move,mover
music,música
must be one of,debe ser uno de los
nederlands,nederlands
not a purchase item,no es un artículo de la compra
not a sales item,no es un artículo de venta
not a service item.,no es un elemento de servicio.
not a sub-contracted item.,no es un elemento subcontratado.
not in,no en
not within Fiscal Year,no en el año fiscal
of,de
of type Link,Enlace de tipo
off,de
ok,ok
ok-circle,ok-círculo
ok-sign,ok-sign
old_parent,old_parent
or,o
pause,pausa
pencil,lápiz
picture,imagen
plane,plano
play,jugar
play-circle,play-círculo
plus,más
plus-sign,signo más
português,português
português brasileiro,português brasileiro
print,imprimir
qrcode,qrcode
question-sign,pregunta-sign
random,azar
reached its end of life on,llegado al final de su vida en la
refresh,refrescar
remove,quitar
remove-circle,retirar el círculo
remove-sign,eliminar a firmar
repeat,repetir
resize-full,cambio de tamaño completo-
resize-horizontal,resize-horizontal
resize-small,cambio de tamaño pequeño-
resize-vertical,resize-vertical
retweet,Retweet
rgt,rgt
road,carretera
screenshot,captura de pantalla
search,buscar
share,participación
share-alt,acciones alt
shopping-cart,carro de la compra
should be 100%,debe ser 100%
signal,señal
star,estrella
star-empty,estrella vacía
step-backward,paso hacia atrás
step-forward,paso adelante
stop,detener
tag,etiqueta
tags,etiquetas
"target = ""_blank""",target = &quot;_blank&quot;
tasks,tareas
text-height,texto de altura
text-width,texto de ancho
th,ª
th-large,th-large
th-list,th-list
thumbs-down,pulgares hacia abajo
thumbs-up,thumbs-up
time,tiempo
tint,tinte
to,a
"to be included in Item's rate, it is required that: ","para ser incluido en la tarifa del artículo, se requiere que:"
trash,basura
upload,subir
user,usuario
user_image_show,user_image_show
values and dates,valores y fechas
volume-down,volumen desplegable
volume-off,volumen-off
volume-up,volumen-up
warning-sign,advertencia signo
website page link,enlace de la página web
which is greater than sales order qty ,que es mayor que la cantidad de pedidos de ventas
wrench,llave inglesa
yyyy-mm-dd,aaaa-mm-dd
zoom-in,zoom-in
zoom-out,zoom-out
