 (Half Day),(Medio día)
 against same operation,contra la misma operación
 already marked,ya marcada
 and year: ,y el año:
 at warehouse: ,en el almacén:
 by Role ,por función
 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 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
 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 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
: 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
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 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 custom code to forms,Agregar código personalizado a las formas
Add fields to forms,Agregar campos a las formas
Add headers for standard print formats,Agregar encabezados para los formatos de impresión estándar
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
"Add/remove users, set roles, passwords etc","Añadir / eliminar usuarios, roles establecidos, contraseñas, etc"
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
Administration,Administración
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 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
Annual Cost To Company,Coste anual para la empresa
Annual Cost To Company can not be less than 12 months of Total Earning,Coste anual para la empresa no puede ser inferior a 12 meses de Ganancia total
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
Apply latest updates and patches to this app,Aplicar últimas actualizaciones y parches de esta aplicación
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
Attachment removed. You may need to update: ,Adjunto eliminado. Es posible que tenga que actualizar:
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.
Branding and Printing,Branding y prensa
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.
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 entry properties (hide fields, make mandatory etc)","Cambiar las propiedades de entrada (campos ocultar, maquillaje etc obligatorio)"
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 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 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:
Cost to Company,El costo para la empresa
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 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 / 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 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 Time Log Summary,Resumen del registro de tiempo diario
"Daily, weekly, monthly email Digests","Diariamente, el correo electrónico semanal, mensual Digests"
Danger,Peligro
Data,Datos
Data Import,Importación de 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 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 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
Delivery Note Packing 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
Depend on LWP,Depende LWP
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 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 / disable currencies.,Activar / desactivar monedas.
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 Individuals,Los individuos del Evento
Event Role,Evento Papel
Event Roles,Roles de eventos
Event Type,Tipo de evento
Event User,Evento del usuario
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
Extract Job Applicant from jobs email id e.g. jobs@example.com,Extracto solicitante de empleo de puestos de trabajo Identificación del email por ejemplo jobs@example.com
Extract Leads from sales email id e.g. sales@example.com,Extracto Leads de ventas email id por ejemplo sales@example.com
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 Manager,Administrador de archivos
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
Financial Years for books of accounts,Ejercicios económicos respecto a los libros de contabilidad
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 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 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 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 Last Purchase Rate,Cómo Tarifa de Último
Get Latest Updates,Obtenga Últimas actualizaciones
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 a list of errors encountered by the Scheduler,Obtenga una lista de los errores detectados por el Programador
"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
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.
"HTML print formats for quotes, invoices etc","Formatos HTML impresión de cotizaciones, facturas, etc"
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! 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
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, 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
Import data from spreadsheet (csv) files,Importar datos de hojas de cálculo (CSV)
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 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
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 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 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 Ref,El plomo Ref
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 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
Letter heads for print,Cabezas de la letra para impresión
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 companies (not customers / suppliers),Lista de las empresas (no clientes / proveedores)
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.
"List, delete uploaded files.","Lista, elimine los archivos subidos."
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 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 Numbering Series,Gestione Numeración Series
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 Transfer,Transferencia de material
Materials,Materiales
Materials Required (Exploded),Materiales necesarios (despiece)
Materials Requirement Planning (MRP),Materiales planificación de necesidades (MRP)
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
Message greater than 160 character will be splitted into multiple mesage,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 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
Mupltiple Item prices.,Precios Mupltiple artículo.
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 greater than 1/12th of Annual Cost To Company,Salario neto no puede ser superior a 1/12th de coste anual para la empresa
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 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,Organización
Organization Profile,Perfil de la organización
Original Message,Mensaje original
Other,Otro
Other Details,Otros detalles
Out,Fuera
Out going mail server and support ticket mailbox,Dirigirse hacia el servidor de correo y buzón de ticket de soporte
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
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,Socio
Partner Target Detail,Socio Detalle Target
Partner Type,Tipo de Socio
Partner's Website,Sitio Web del Socio
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 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 days,Día 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 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 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 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 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 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 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 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) only for display. Floats will still be calculated up to 6 decimals.","Precisión de los campos de flotador (cantidades, descuentos, etc porcentajes) sólo para su visualización. Siempre queda aún se calcularán hasta 6 decimales."
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 Country,Precio de lista País
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 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 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 email sending to customers and suppliers,Solicitar el envío de correo electrónico a clientes y proveedores
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 items from Sales Order mentioned in the above table.,Tire de los artículos en órdenes de venta mencionados en el cuadro anterior.
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 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 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,Levante solicitar material
Raise Material Request when stock reaches re-order level,Levante solicitar material cuando el stock llega a re-ordenar nivel
Raise Production Order,Levante orden de producción
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 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
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 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 multiple items in one go,Cambiar el nombre de varios elementos de una sola vez
Rename...,Cambiar el nombre de ...
Rented,Alquilado
Repeat on Day of Month,Repita el Día del Mes
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
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 submission rights based on amount,Restringir el derecho de presentación basado en la cantidad
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 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 Rate,Ventas Precio
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 Error Log,Programador de registro de errores
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 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 automatic emails to Contacts on Submitting transactions.,Enviar correos electrónicos automáticos en Contactos de Envío de transacciones.
"Send bulk SMS to leads, customers, contacts","Envíe SMS a granel a clientes potenciales, clientes, contactos"
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,Serie
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 From Image,Set De 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 default values for entry,Establecer valores por defecto para la entrada
Set default values for users (also used for permissions).,Establecer valores predeterminados para los usuarios (también se usa para los permisos).
Set multiple numbering series for transactions,Establecer varias series de numeración para las transacciones
Set permissions on transactions / masters,Establecer permisos en las transacciones / maestros
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 workflow rules.,Establezca reglas de flujo de trabajo.
"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 outgoing SMS via your bulk SMS provider,Configuración de SMS salientes a través de su proveedor de SMS a granel
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 / Hide Modules,Mostrar / Ocultar Módulos
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
"Show, hide modules","Mostrar, ocultar módulos"
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
Simplify entry forms by disabling features,Simplificar los formularios de inscripción mediante la desactivación de funciones
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. 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 (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 backups with remote tools like Dropbox etc.,"Sincronizar copias de seguridad con herramientas remotas como Dropbox, etc"
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 account to which you will pay (have paid) the money to.,La cuenta a la que va a pagar (he pagado) el dinero.
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 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 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.
"To update your HTML from attachment, click here","Para actualizar el código HTML de archivo adjunto, haga clic aquí"
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 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 days in month,Número total de días en el mes
Total in words,Total en palabras
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 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
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 This Application,Actualizar esta aplicación
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 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 Properties,Propiedades del 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,Usuarios
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
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 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 create more earning and deduction type from Setup --> HR,Puede crear más ingresos y el tipo de deducción de Configuración -&gt; HR
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.
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 in HTML.,Su carta de contenido cabeza en HTML.
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á!
[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
wrench,llave inglesa
yyyy-mm-dd,aaaa-mm-dd
zoom-in,zoom-in
zoom-out,zoom-out
