 (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 already been submitted.,ya se ha presentado.
 has been freezed. \				Only Accounts Manager can do transaction against this account,ha sido congelado. \ Sólo Administrador de cuentas puede hacer en contra de esta transacción cuenta
" is less than equals to zero in the system, \						valuation rate is mandatory for this item","es menor que es igual a cero en el sistema, \ tasa de valoración es obligatoria para este artículo"
 is mandatory,es obligatorio
 is mandatory for GL Entry,Es obligatorio para la entrada GL
 is not a ledger,no es un libro de contabilidad
 is not active,no está activa
 is not set,no se ha establecido
 is now the default Fiscal Year. \			Please refresh your browser for the change to take effect.,"Ahora es el Año Fiscal defecto. \ Por favor, actualiza tu navegador para que los cambios surtan efecto."
 is present in one or many Active BOMs,está presente en una o varias listas de materiales activos
 not active or does not exists in the system,no activa o no se existe en el sistema
 not submitted,no presentado
 or the BOM is cancelled or inactive,o la lista de materiales se cancela o inactivo
 should be 'Yes'. As Item: ,debería ser &quot;sí&quot;. Como artículo:
 should be same as that in ,debe ser el mismo que el de
 was on leave on ,estaba en situación de excedencia
 will be over-billed against mentioned ,sobre-será facturado contra la mencionada
 will become ,se convertirá
"""Company History""",&quot;Historia de la empresa&quot;
"""Team Members"" or ""Management""",&quot;Miembros del equipo&quot; o &quot;gestión&quot;
%  Delivered,Entregado%
% Amount Billed,Importe% Anunciada
% Billed,Anunciado%
% Completed,% Completado
% Installed,Instalado%
% Received,Recibido%
% of materials billed against this Purchase Order.,% De los materiales facturados en contra de esta Orden de Compra.
% of materials billed against this Sales Order,% De los materiales facturados en contra de esta orden de venta
% of materials delivered against this Delivery Note,% De los materiales entregados en contra de esta nota de entrega
% of materials delivered against this Sales Order,% De los materiales entregados en contra de esta orden de venta
% of materials ordered against this Material Request,% De materiales ordenó en contra de esta solicitud de material
% of materials received against this Purchase Order,% Del material recibido en contra de esta Orden de Compra
"' can not be managed using Stock Reconciliation.\					You can add/delete Serial No directly, \					to modify stock of this item.","&#39;No puede gestionarse a través de la reconciliación de Valores. \ Puede añadir / eliminar Serial No directamente, \ para modificar existencias de este artículo."
' in Company: ,&quot;En la empresa:
'To Case No.' cannot be less than 'From Case No.',&#39;Para el caso núm&#39; no puede ser inferior a &#39;De Caso No.&#39;
* Will be calculated in the transaction.,* Se calcula de la transacción.
"**Budget Distribution** helps you distribute your budget across months if you have seasonality in your business.To distribute a budget using this distribution, set this **Budget Distribution** in the **Cost Center**","Distribución del presupuesto ** ** le ayuda a distribuir su presupuesto a través de meses, si usted tiene la estacionalidad en su business.To distribuir un presupuesto utilizando esta distribución, establezca esta distribución del presupuesto ** ** en el centro de coste ** **"
**Currency** Master,Moneda ** ** Maestro
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,Año Fiscal ** ** representa un ejercicio. Los asientos contables y otras transacciones importantes se siguen contra ** Ejercicio **.
. Outstanding cannot be less than zero. \				 	Please match exact outstanding.,. Pendiente no puede ser inferior a cero. \ Por favor coincidir exactamente excepcional.
. Please set status of the employee as 'Left',". Por favor, establecer el estado del empleado como de &quot;izquierda&quot;"
. You can not mark his attendance as 'Present',. No se puede marcar su asistencia como &quot;presente&quot;
"000 is black, fff is white","000 es negro, es blanco fff"
1 Currency = [?] FractionFor e.g. 1 USD = 100 Cent,"1 Moneda = [?] FractionFor por ejemplo, 1 USD = 100 Cent"
1. To maintain the customer wise item code and to make them searchable based on their code use this option,"1. Para mantener el código de artículo del cliente racional, y efectuar búsquedas en ellos sobre la base de su código de usar esta opción"
12px,12px
13px,13px
14px,14px
15px,15px
16px,16px
2 days ago,Hace 2 días
: Duplicate row from same ,: Duplicar fila del mismo
: It is linked to other active BOM(s),: Está vinculado a otro BOM activo (s)
: Mandatory for a Recurring Invoice.,: Obligatorio para una factura recurrente.
"<a href=""#!Sales Browser/Customer Group"">To manage Customer Groups, click here</a>","<a href=""#!Sales Browser/Customer Group"">Para administrar grupos de clientes, haga clic aquí</a>"
"<a href=""#!Sales Browser/Item Group"">Manage Item Groups</a>","<a href=""#!Sales Browser/Item Group"">Gestionar grupos de artículos</a>"
"<a href=""#!Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#!Sales Browser/Territory"">Para gestionar Territorio, haga clic aquí</a>"
"<a href=""#Sales Browser/Customer Group"">Manage Customer Groups</a>","<a href=""#Sales Browser/Customer Group"">Gestionar grupos de clientes</a>"
"<a href=""#Sales Browser/Customer Group"">To manage Territory, click here</a>","<a href=""#Sales Browser/Customer Group"">Para gestionar Territorio, haga clic aquí</a>"
"<a href=""#Sales Browser/Item Group"">Manage Item Groups</a>","<a href=""#Sales Browser/Item Group"">Administrar los grupos de artículos</a>"
"<a href=""#Sales Browser/Territory"">Territory</a>","<a href=""#Sales Browser/Territory"">Territorio</a>"
"<a href=""#Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#Sales Browser/Territory"">Para gestionar Territorio, haga clic aquí</a>"
"<a onclick=""msgprint('<ol>\<li><b>field:[fieldname]</b> - By Field\<li><b>naming_series:</b> - By Naming Series (field called naming_series must be present\<li><b>eval:[expression]</b> - Evaluate an expression in python (self is doc)\<li><b>Prompt</b> - Prompt user for a name\<li><b>[series]</b> - Series by prefix (separated by a dot); for example PRE.#####\</ol>')"">Naming Options</a>","<a onclick=""msgprint('<ol>\<li><b>field:[fieldname]</b> - By Field\<li><b>naming_series:</b> - By Naming Series (field called naming_series must be present\<li><b>eval:[expression]</b> - Evaluate an expression in python (self is doc)\<li><b>Prompt</b> - Prompt user for a name\<li><b>[series]</b> - Series by prefix (separated by a dot); for example PRE.#####\</ol>')"">Opciones de nombre</a>"
<b>Cancel</b> allows you change Submitted documents by cancelling them and amending them.,<b>Cancel</b> le permite cambiar los documentos presentados por cancelarlos y enmendarlos.
"<span class=""sys_manager"">To setup, please go to Setup > Naming Series</span>","<span class=""sys_manager"">Para configurar, por favor, vaya a Configuración&gt; Serie de nombres</span>"
A Customer exists with same name,Un cliente que existe con el mismo nombre
A Lead with this email id should exist,Un cable con este correo electrónico de identificación debe existir
"A Product or a Service that is bought, sold or kept in stock.","Un producto o un servicio que se compra, se vende o se mantienen en stock."
A Supplier exists with same name,Un Proveedor existe con el mismo nombre
A condition for a Shipping Rule,Una condición para una regla de envío
A logical Warehouse against which stock entries are made.,Un almacen de depósito lógico en el que las entradas en existencias están hechos.
A new popup will open that will ask you to select further conditions.,Una ventana se abrirá que le pedirá que seleccione otras condiciones.
A symbol for this currency. For e.g. $,"Un símbolo de esta moneda. Por ejemplo, $"
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distribuidor tercero / dealer / comisionista / filial / distribuidor que vende los productos de las empresas de una comisión.
A user can have multiple values for a property.,Un usuario puede tener varios valores para una propiedad.
A+,A +
A-,A-
AB+,AB +
AB-,AB-
AMC Expiry Date,AMC Fecha de Caducidad
ATT,ATT
Abbr,Abbr
About,Sobre
About Us Settings,La Empresa Ajustes
About Us Team Member,Acerca de Nosotros Miembro del Equipo
Above Value,Por encima del valor
Absent,Ausente
Acceptance Criteria,Criterios de Aceptación
Accepted,Aceptado
Accepted Quantity,Cantidad aceptada
Accepted Warehouse,Almacén Aceptado
Account,Cuenta
Account Balance,Saldo de la cuenta
Account Details,Detalles de la cuenta
Account Head,Cuenta Head
Account Id,ID de la cuenta
Account Name,Nombre de la cuenta
Account Type,Tipo de Cuenta
Accounting,Contabilidad
Accounting Year.,Ejercicio contable.
"Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.","Asiento contable congelado hasta la fecha, nadie puede hacer / modificar la entrada, excepto el papel se especifica a continuación."
Accounting journal entries.,Contabilidad entradas del diario.
Accounts,Cuentas
Accounts Frozen Upto,Hasta que las cuentas congeladas
Accounts Payable,Cuentas por pagar
Accounts Receivable,Cuentas por cobrar
Accounts Settings,Configuración de cuentas
Action,Acción
Active,Activo
Active: Will extract emails from ,Activo: Will extraer correos electrónicos de
Activity,Actividad
Activity Log,Registro de actividad
Activity Type,Tipo de actividad
Actual,Real
Actual Budget,Presupuesto Real
Actual Completion Date,Fecha de Terminación del Real
Actual Date,Fecha Actual
Actual End Date,Fecha de finalización real
Actual Invoice Date,Actual Fecha de la factura
Actual Posting Date,Actual Fecha de Publicación
Actual Qty,Cantidad real
Actual Qty (at source/target),Cantidad real (en origen / destino)
Actual Qty After Transaction,Cantidad real después de la transacción
Actual Quantity,Cantidad real
Actual Start Date,Fecha real de inicio
Add,Añadir
Add / Edit Taxes and Charges,Agregar / Editar Impuestos y Cargos
Add A New Rule,Agregar una nueva regla
Add A Property,Agregue una propiedad
Add Attachments,Adición de archivos adjuntos
Add Bookmark,Añadir a Favoritos
Add CSS,Añadir CSS
Add Column,Añadir columna
Add Comment,Añadir comentario
Add Google Analytics ID: eg. UA-89XXX57-1. Please search help on Google Analytics for more information.,"Añadir Google Analytics ID: por ejemplo. UA-89XXX57-1. Por favor, ayudar a buscar en Google Analytics para obtener más información."
Add Message,Agregar mensaje
Add New Permission Rule,Añadir regla Nuevo permiso
Add Reply,Añadir respuesta
Add Terms and Conditions for the Material Request. You can also prepare a Terms and Conditions Master and use the Template,Añadir Términos y Condiciones para la solicitud de materiales. También puede preparar un documento de Términos y Condiciones dominar y utilizar la plantilla
Add Terms and Conditions for the Purchase Receipt. You can also prepare a Terms and Conditions Master and use the Template.,Añadir Términos y Condiciones para el recibo de compra. También se puede preparar a un Maestro Términos y Condiciones y el uso de la plantilla.
"Add Terms and Conditions for the Quotation like Payment Terms, Validity of Offer etc. You can also prepare a Terms and Conditions Master and use the Template","Añadir Términos y Condiciones de la Oferta como condiciones de pago, la validez de una oferta, etc También se puede preparar a un Maestro Términos y Condiciones y el uso de la plantilla"
Add Total Row,Añadir fila total
Add a banner to the site. (small banners are usually good),Añadir un banner en el sitio. (Pequeños banners son generalmente buenos)
Add attachment,Añadir adjunto
Add code as &lt;script&gt;,Agregue código como &lt;script&gt;
Add new row,Añadir nueva fila
Add or Deduct,Agregar o deducir
Add rows to set annual budgets on Accounts.,Añada filas para fijar presupuestos anuales de Cuentas.
"Add the name of <a href=""http://google.com/webfonts"" target=""_blank"">Google Web Font</a> e.g. ""Open Sans""","Añadir el nombre de <a href=""http://google.com/webfonts"" target=""_blank"">Google Web Font</a> ejemplo &quot;Open Sans&quot;"
Add to To Do,Añadir a To Do
Add to To Do List of,Agregar a la lista de tareas de
Add/Remove Recipients,Agregar / Quitar destinatarios
Additional Info,Información adicional
Address,Dirección
Address & Contact,Dirección y contacto
Address & Contacts,Dirección y contactos
Address Desc,Abordar la descripción
Address Details,Detalles de las direcciones
Address HTML,Dirección HTML
Address Line 1,Dirección Línea 1
Address Line 2,Dirección Línea 2
Address Title,Título Dirección
Address Type,Tipo de dirección
Address and other legal information you may want to put in the footer.,Dirección y otra información legal es posible que desee poner en el pie de página.
Address to be displayed on the Contact Page,Dirección que se mostrará en la página de contacto
Adds a custom field to a DocType,Agrega un campo personalizado a un tipo de documento
Adds a custom script (client or server) to a DocType,Añade un script personalizado (cliente o servidor) a un tipo de documento
Advance Amount,Avance Importe
Advance amount,Avance cantidad
Advanced Scripting,Advanced Scripting
Advanced Settings,Configuración avanzada
Advances,Insinuaciones
Advertisement,Anuncio
After Sale Installations,Después Instalaciones Venta
Against,Contra
Against Account,Contra Cuenta
Against Docname,Contra DocNombre
Against Doctype,Contra Doctype
Against Document Date,Contra Fecha del Documento
Against Document Detail No,Contra Detalle documento n
Against Document No,Contra el documento n º
Against Expense Account,Contra la Cuenta de Gastos
Against Income Account,Contra la Cuenta de Ingresos
Against Journal Voucher,Contra del diario de comprobantes
Against Purchase Invoice,Contra la factura de compra
Against Sales Invoice,Contra la factura de venta
Against Voucher,Contra Voucher
Against Voucher Type,Contra el tipo de comprobante
Agent,Agente
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials","Grupo global de productos ** ** en otro artículo **. ** Esto es útil si usted está empaquetando un cierto ** ** Los productos en un paquete y usted mantiene un balance de los artículos envasados ​​** ** y no el agregado del artículo **. ** El paquete ** artículo ** habrá &quot;es el tema de&quot; como &quot;No&quot; y &quot;¿Sales Item&quot; como &quot;Sí&quot;, por ejemplo:. Si usted está vendiendo computadoras portátiles y Mochilas por separado y recibir un descuento si el cliente compra a la vez , entonces el ordenador portátil + Mochila será una nueva lista de materiales de ventas Item.Note: BOM = Bill de Materiales"
Aging Date,Fecha de antigüedad
All Addresses.,Todas las direcciones.
All Contact,Todo contacto
All Contacts.,Todos los contactos.
All Customer Contact,Todo servicio al cliente
All Day,Todo el día
All Employee (Active),Todos los empleados (Activo)
All Lead (Open),Todos Plomo (Abierto)
All Products or Services.,Todos los Productos o Servicios.
All Sales Partner Contact,Todo contacto Sales Partner
All Sales Person,Todas Ventas Persona
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Todas las transacciones de ventas pueden ser marcados en contra de varias personas de ventas ** ** por lo que puede establecer y supervisar los objetivos.
All Supplier Contact,Todo contacto Proveedor
"All account columns should be after \							standard columns and on the right.							If you entered it properly, next probable reason \							could be wrong account name.							Please rectify it in the file and try again.","Todas las columnas de cuentas deben ser posterior al \ columnas estándar y el de la derecha. Si ha introducido correctamente, junto razón \ probable podría ser el nombre de cuenta equivocado. Por favor, rectificarla en el archivo y vuelva a intentarlo."
"All export related fields like currency, conversion rate, export total, export grand total etc are available in <br>Delivery Note, POS, Quotation, Sales Invoice, Sales Order etc.","Todos los campos relacionados, como la exportación de moneda, tasa de conversión, el total de las exportaciones, exportación, etc total general están disponibles en <br> Nota de entrega, puntos de venta, cotización, factura de compra, órdenes de venta, etc"
"All import related fields like currency, conversion rate, import total, import grand total etc are available in <br>Purchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.","Todos los campos relacionados, como la importación de moneda, tasa de conversión, el total de las importaciones, importación, etc total general están disponibles en <br> Recibo de compra, cotización del proveedor, factura de compra, orden de compra, etc"
All items have already been transferred \				for this Production Order.,Todos los artículos han sido ya traspasada \ para esta orden de producción.
"All possible Workflow States and roles of the workflow. <br>Docstatus Options: 0 is""Saved"", 1 is ""Submitted"" and 2 is ""Cancelled""","Todos los Estados de flujo de trabajo y roles posibles del flujo de trabajo. <br> Opciones DocStatus: 0 El &quot;Salvados&quot;, 1 es &quot;enviado&quot; y 2 es &quot;Cancelado&quot;"
All posts by,Todos los mensajes de
Allocate,Asignar
Allocate leaves for the year.,Asignar las hojas para el año.
Allocated Amount,Monto Asignado
Allocated Budget,Presupuesto asignado
Allocated amount,Cantidad asignada
Allow Attach,Permitir Adjuntar
Allow Bill of Materials,Permitir Lista de materiales
Allow Dropbox Access,Permitir Dropbox acceso
Allow Editing of Frozen Accounts For,Permitir edición de cuentas congeladas con
Allow Google Drive Access,Permitir acceso Google Drive
Allow Import,Permitir la importación
Allow Import via Data Import Tool,Permitir la importación a través de herramientas de importación de datos
Allow Negative Balance,Permitir balance negativo
Allow Negative Stock,Permitir Stock Negativo
Allow Production Order,Permitir orden de producción
Allow Rename,Permitir Renombre
Allow Samples,Deje que las muestras
Allow User,Permitir al usuario
Allow Users,Permitir que los usuarios
Allow on Submit,Deje en Enviar
Allow the following users to approve Leave Applications for block days.,Permitir que los usuarios siguientes para aprobar solicitudes Dejar de días de bloque.
Allow user to 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
Appraisal,Evaluación
Appraisal Goal,Evaluación Meta
Appraisal Goals,Objetivos Apreciación
Appraisal Template,Evaluación de plantilla
Appraisal Template Goal,Evaluación Meta plantilla
Appraisal Template Title,Evaluación título de la plantilla
Approval Status,Estado de aprobación
Approved,Aprobado
Approver,Aprobador
Approving Role,La aprobación de Papel
Approving User,Aprobación de Usuario
Are you sure you want to delete the attachment?,¿Está seguro que desea eliminar el archivo adjunto?
Arial,Arial
Arrear Amount,Monto de los atrasos
"As a best practice, do not assign the same set of permission rule to different Roles instead set multiple Roles to the User","Como práctica recomendada, no asigne el mismo conjunto de reglas permiso a roles diferentes en lugar establecer funciones múltiples para el usuario"
As existing qty for item: ,Como Cantidad existentes para el artículo:
As per Stock UOM,Según de la UOM
"As there are existing stock transactions for this \							item, you can not change the values of 'Has Serial No', \							'Is Stock Item' and 'Valuation Method'","Como hay transacciones de acciones existentes para este artículo \, no se puede cambiar los valores de &#39;tiene de serie n&#39;, \ &#39;¿Está Stock Item&#39; y &#39;Método de valoración&#39;"
Ascending,Ascendente
Assign To,Asignar a
Assigned By,Asignado por
Assignment,Asignación
Assignments,Asignaciones
Associate a DocType to the Print Format,Asociar un tipo de documento al formato de impresión
Atleast one warehouse is mandatory,Atleast un almacén es obligatorio
Attach,Adjuntar
Attach Document Print,Adjuntar Print Document
Attached To DocType,Se adjunta a DOCTYPE
Attached To Name,Atribuida al apellido
Attachment,Accesorio
Attachments,Archivos adjuntos
Attempted to Contact,Intentó establecer contacto con
Attendance,Asistencia
Attendance Date,Asistencia Fecha
Attendance Details,Datos de asistencia
Attendance From Date,Desde la fecha de Asistencia
Attendance To Date,Asistencia hasta la fecha
Attendance can not be marked for future dates,La asistencia no se puede marcar para fechas futuras
Attendance for the employee: ,La asistencia para el empleado:
Attendance record.,Asistencia récord.
Attributions,Atribuciones
Authorization Control,Autorización de Control
Authorization Rule,Autorización Regla
Auto Email Id,Auto Identificación del email
Auto Inventory Accounting,Contabilidad del inventario Auto
Auto Inventory Accounting Settings,Configuración de la contabilidad del inventario Auto
Auto Material Request,Auto Solicite material
Auto Name,Nombre Auto
Auto generated,Generado automáticamente
Auto-raise Material Request if quantity goes below re-order level in a warehouse,Auto-raise Solicitud de material si la cantidad está por debajo de nivel de re-orden en un almacén
Automatically updated via Stock Entry of type Manufacture/Repack,Se actualiza automáticamente a través de la entrada de Fabricación tipo / Repack
Autoreply when a new mail is received,Respuesta automática cuando un nuevo correo se recibe
Available Qty at Warehouse,Cantidad Disponible en almacén
Available Stock for Packing Items,Stock disponible para embalaje Artículos
"Available in BOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet","Disponible en la lista de materiales, albarán, factura de compra, orden de fabricación, orden de compra, recibo de compra, factura de venta, pedidos de venta, Entrada de Valores, parte de horas"
Avatar,Avatar
Average Discount,Descuento medio
B+,B +
B-,B-
BILL,BILL
BILLJ,BILLJ
BOM,BOM
BOM Detail No,BOM Detalle Desierto
BOM Explosion Item,Artículo BOM Explosion
BOM Item,Artículo BOM
BOM No,No BOM
BOM No. for a Finished Good Item,No. BOM para un buen artículo terminado
BOM Operation,BOM Operación
BOM Operations,Operaciones de la lista de materiales
BOM Replace Tool,BOM Tool Reemplazar
BOM replaced,BOM reemplazado
Background Color,Color de fondo
Background Image,Imagen de fondo
Backup Manager,Backup Manager
Backup Right Now,Copia de seguridad ahora mismo
Backups will be uploaded to,Las copias de seguridad se pueden cargar en
"Balances of Accounts of type ""Bank or Cash""",Los saldos de las cuentas de &quot;Banco o Efectivo&quot; tipo
Bank,Banco
Bank A/C No.,Bank A / C No.
Bank Account,Cuenta bancaria
Bank Account No.,Banco Número de cuenta
Bank Clearance Summary,Resumen de Liquidación del Banco
Bank Name,Nombre del banco
Bank Reconciliation,Conciliación Bancaria
Bank Reconciliation Detail,Banco Detalle Reconciliación
Bank Reconciliation Statement,Estado de conciliación bancaria
Bank Voucher,Banco Voucher
Bank or Cash,Banco o Caja
Bank/Cash Balance,Banco / Saldo de caja
Banner,Bandera
Banner HTML,Banner HTML
Banner Image,Imagen del Anuncio
Banner is above the Top Menu Bar.,Banner está por encima de la barra de menú superior.
Barcode,Código de barras
Based On,Basado en el
Basic Info,Información básica
Basic Information,Información Básica
Basic Rate,Tasa Básica
Basic Rate (Company Currency),De acceso básico (Empresa moneda)
Batch,Lote
Batch (lot) of an Item.,Batch (lote) de un elemento.
Batch Finished Date,Terminado batch Fecha
Batch ID,Identificación de lote
Batch No,Lote n º
Batch Started Date,Iniciado Fecha de lotes
Batch Time Logs for Billing.,Tiempo lotes los registros de facturación.
Batch Time Logs for billing.,Tiempo lotes los registros de facturación.
Batch-Wise Balance History,Wise lotes Historia Equilibrio
Batched for Billing,Lotes de facturación
Be the first one to comment,Sé el primero en comentar
Begin this page with a slideshow of images,Comience esta página con un pase de diapositivas de imágenes
Better Prospects,Mejores perspectivas
Bill Date,Bill Fecha
Bill No,Bill no
Bill of Material to be considered for manufacturing,Lista de materiales para ser considerado para la fabricación
Bill of Materials,Lista de materiales
Bill of Materials (BOM),Lista de Materiales (BOM)
Billable,Facturable
Billed,Anunciada
Billed Amt,Billed Amt
Billing,Facturación
Billing Address,Dirección de Facturación
Billing Address Name,Nombre Dirección de facturación
Billing Status,Facturación de Estado
Bills raised by Suppliers.,Proyectos de ley planteada por los Proveedores.
Bills raised to Customers.,Bills elevado a Clientes.
Bin,Papelera
Bio,Bio
Bio will be displayed in blog section etc.,"Bio se mostrará en la sección de blogs, etc"
Birth Date,Fecha de Nacimiento
Blob,Gota
Block Date,Bloque Fecha
Block Days,Días de bloque
Block Holidays on important days.,Bloque Vacaciones en días importantes.
Block leave applications by department.,Bloque dejar aplicaciones por departamento.
Blog Category,Blog Categoría
Blog Intro,Blog Intro
Blog Introduction,Blog Introducción
Blog Post,Blog
Blog Settings,Configuración de blog
Blog Subscriber,Blog suscriptor
Blog Title,Título del blog
Blogger,Blogger
Blood Group,Grupo sanguíneo
Bookmarks,Marcadores
Branch,Rama
Brand,Marca
Brand HTML,Marca HTML
Brand Name,Marca
"Brand is what appears on the top-right of the toolbar. If it is an image, make sure ithas a transparent background and use the &lt;img /&gt; tag. Keep size as 200px x 30px","La marca es lo que aparece en la parte superior derecha de la barra de herramientas. Si se trata de una imagen, hacer ithas seguro de un fondo transparente y el uso de la etiqueta &lt;img /&gt;. Mantener el tamaño 200px x 30px como"
Brand master.,Marca maestro.
Brands,Marcas
Breakdown,Desglose
Budget,Presupuesto
Budget Allocated,Presupuesto asignado
Budget Control,Control del Presupuesto
Budget Detail,Presupuesto Detalle
Budget Details,Datos del Presupuesto
Budget Distribution,Distribución del presupuesto
Budget Distribution Detail,Presupuesto Detalle Distribución
Budget Distribution Details,Detalles Distribución del presupuesto
Budget Variance Report,Informe Varianza Presupuesto
Build Modules,Construir módulos
Build Pages,Creación de páginas
Build Server API,Construir API servidor
Build Sitemap,Construir Sitemap
Bulk Email,E-mail a granel
Bulk Email records.,Correo electrónico masivo registros.
Bundle items at time of sale.,Agrupe elementos en tiempo de venta.
Button,Botón
Buyer of Goods and Services.,Comprador de Bienes y Servicios.
Buying,Comprar
Buying Amount,Comprar Cantidad
Buying Settings,Comprar Configuración
By,Por
C-FORM/,C-FORM /
C-Form,C-Form
C-Form Applicable,C-forma como se aplican
C-Form Invoice Detail,C-Form Detalle de la factura
C-Form No,C-Formulario No
CI/2010-2011/,CI/2010-2011 /
COMM-,COMM-
CSS,CSS
CUST,CUST
CUSTMUM,CUSTMUM
Calculate Based On,Calcula debido al
Calculate Total Score,Calcular la puntuación total
Calendar,Calendario
Calendar Events,Calendario de Eventos
Call,Llamar
Campaign,Campaña
Campaign Name,Nombre de la campaña
Can only be exported by users with role 'Report Manager',Solo puede ser exportado por los usuarios &quot;Administrador de informes &#39;papel
Cancel,Cancelar
Cancel permission also allows the user to delete a document (if it is not linked to any other document).,Cancelar permiso también permite al usuario eliminar un documento (si no está vinculado a ningún otro documento).
Cancelled,Cancelado
Cannot ,No se puede
Cannot approve leave as you are not authorized to approve leaves on Block Dates.,No se puede aprobar dejar ya que no está autorizado para aprobar las hojas en Fechas de bloque.
Cannot change from,No se puede cambiar de
Cannot continue.,No se puede continuar.
Cannot have two prices for same Price List,No se puede tener dos precios para el mismo Lista de Precios
Cannot map because following condition fails: ,No se puede asignar por la condición siguiente falla:
Capacity,Capacidad
Capacity Units,Unidades de capacidad
Carry Forward,Llevar adelante
Carry Forwarded Leaves,Llevar Hojas reenviados
Case No(s) already in use. Please rectify and try again.				Recommended <b>From Case No. = %s</b>,"Asunto (s) ya en uso. Por favor, rectificar y vuelva a intentarlo. Recomendado <b>Desde Caso No. =% s</b>"
Cash,Efectivo
Cash Voucher,Cash Voucher
Cash/Bank Account,Efectivo / Cuenta Bancaria
Categorize blog posts.,Clasificar las entradas del blog.
Category,Categoría
Category Name,Nombre Categoría
Category of customer as entered in Customer master,Categoría de cliente tal como aparece en Maestro de clientes
Cell Number,Móvil Número
Center,Centro
"Certain documents should not be changed once final, like an Invoice for example. The final state for such documents is called <b>Submitted</b>. You can restrict which roles can Submit.","Algunos documentos no se deben cambiar una vez final, como una factura, por ejemplo. El estado final de dichos documentos se llama <b>Enviado.</b> Puede restringir qué roles pueden Submit."
Change UOM for an Item.,Cambiar UOM de un elemento.
Change the starting / current sequence number of an existing series.,Cambiar el número de secuencia de arranque / corriente de una serie existente.
Channel Partner,Channel Partner
Charge,Cargo
Chargeable,Cobrable
Chart of Accounts,Plan General de Contabilidad
Chart of Cost Centers,Gráfico de centros de coste
Chat,Charlar
Check,Comprobar
Check / Uncheck roles assigned to the Profile. Click on the Role to find out what permissions that Role has.,Compruebe / roles Desmarcar asignado al perfil. Haga clic en la función para averiguar qué permisos que rol tiene.
Check all the items below that you want to send in this digest.,Compruebe todos los puntos a continuación que desea enviar en este compendio.
Check how the newsletter looks in an email by sending it to your email.,Comprobar cómo el boletín se ve en un correo electrónico mediante el envío a su correo electrónico.
"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Compruebe si factura recurrente, desmarque para detener recurrente o poner fecha de finalización correcta"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Compruebe si necesita automáticas facturas recurrentes. Después de presentar cualquier factura de venta, sección recurrente será visible."
Check if you want to send salary slip in mail to each employee while submitting salary slip,Compruebe si usted desea enviar nómina en el correo a cada empleado durante la presentación de nómina
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Seleccione esta opción si desea forzar al usuario a seleccionar una serie antes de guardar. No habrá ningún defecto si usted comprueba esto.
Check this if you want to send emails as this id only (in case of restriction by your email provider).,"Seleccione esta opción si desea enviar mensajes de correo electrónico, ya que sólo este id (en caso de restricción de su proveedor de correo electrónico)."
Check this if you want to show in website,Seleccione esta opción si desea mostrar en la página web
Check this to 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 Discount,Descuento al cliente
Customer Discounts,Descuentos Cliente
Customer Feedback,Comentarios del cliente
Customer Group,Grupo de clientes
Customer Group Name,Nombre del cliente Grupo
Customer Intro,Introducción al Cliente
Customer Issue,Customer Issue
Customer Issue against Serial No.,Problema al cliente contra el número de serie
Customer Name,Nombre del cliente
Customer Naming By,Cliente de nomenclatura
Customer Type,Tipo de cliente
Customer classification tree.,Cliente árbol de clasificación.
Customer database.,Cliente de base de datos.
Customer's Currency,Cliente de divisas
Customer's Item Code,Cliente Código del artículo
Customer's Purchase Order Date,Compra del Cliente Fecha de la Orden
Customer's Purchase Order No,Orden de Compra del Cliente No
Customer's Vendor,Cliente Proveedor
Customer's currency,Cliente moneda
"Customer's currency - If you want to select a currency that is not the default currency, then you must also specify the Currency Conversion Rate.","Moneda del cliente - Si desea seleccionar una moneda que no es la moneda por defecto, entonces también se debe especificar el porcentaje de conversiones de moneda."
Customers Not Buying Since Long Time,Los clientes no comprar desde Long Time
Customerwise Discount,Customerwise descuento
Customize,Personalizar
Customize Form,Personalizar formulario
Customize Form Field,Personalización de campos de formulario
"Customize Label, Print Hide, Default etc.","Personaliza etiquetas, Hide impresión, etc predeterminado"
Customize the Notification,Personalizar la notificación
Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,Personalizar el texto introductorio que va como una parte de dicho mensaje. Cada transacción tiene un texto introductorio separado.
DN,DN
DN Detail,DN Detalle
Daily,Diario
Daily Time Log Summary,Resumen del registro de tiempo diario
Danger,Peligro
Data,Datos
Data missing in table,Los datos que faltan en la tabla
Database,Base de datos
Database Folder ID,Base de datos ID Folder
Database of potential customers.,Base de datos de clientes potenciales.
Date,Fecha
Date Format,Formato de fecha
Date Of Retirement,Fecha de la jubilación
Date and Number Settings,Fecha y número de Ajustes
Date is repeated,La fecha se repite
Date must be in format,La fecha debe estar en formato
Date of Birth,Fecha de nacimiento
Date of Issue,Fecha de emisión
Date of Joining,Fecha de ingreso a
Date on which lorry started from supplier warehouse,Fecha en la que el camión partió de almacén proveedor
Date on which lorry started from your warehouse,Fecha en la que el camión comenzó a partir de su almacén
Date on which the lead was last contacted,Fecha en la que se estableció contacto con el plomo último
Dates,Fechas
Datetime,Fecha y hora
Days for which Holidays are blocked for this department.,Días de fiesta que están bloqueados para este departamento.
Dealer,Comerciante
Dear,Querido
Debit,Débito
Debit Amt,Débito Amt
Debit Note,Nota de Débito
Debit To,Para Débito
Debit or Credit,Débito o Crédito
Deduct,Deducir
Deduction,Deducción
Deduction Type,Deducción Tipo
Deduction1,Deduction1
Deductions,Deducciones
Default,Defecto
Default Account,Cuenta predeterminada
Default BOM,Por defecto BOM
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Por defecto Banco / Caja cuenta se actualiza automáticamente en la factura POS cuando se selecciona este modo.
Default Bank Account,Cuenta predeterminada Banco
Default Cash Account,Cuenta de Tesorería por defecto
Default Commission Rate,Tasa de Incumplimiento Comisión
Default Company,Predeterminado de la compañía
Default Cost Center,Defecto de centros de coste
Default Cost Center for tracking expense for this item.,Defecto de centros de coste para el seguimiento de los gastos por este concepto.
Default Currency,Moneda predeterminada
Default Customer Group,Valor predeterminado de grupo al Cliente
Default Expense Account,Cuenta predeterminada de gastos
Default Home Page,Página de inicio por defecto
Default Home Pages,Páginas de inicio por defecto
Default Income Account,Cuenta predeterminada de Ingresos
Default Item Group,Valor predeterminado de grupo del artículo
Default Price List,Por defecto Lista de precios
Default Print Format,Por defecto Formato de impresión
Default Purchase Account in which cost of the item will be debited.,Cuenta predeterminada de compra en las que el precio del artículo será debitada.
Default Sales Partner,Ventas predeterminados de los asociados
Default Settings,Configuración predeterminada
Default Source Warehouse,Predeterminado fuente de depósito
Default Stock UOM,Defecto de la UOM
Default Supplier 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 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
FCFS Rate,Tasa FCFS
FIFO,FIFO
Facebook Share,Facebook Share
Failed: ,Error:
Family Background,Antecedentes familiares
FavIcon,FavIcon
Fax,Fax
Features Setup,Características del programa de instalación
Feed,Alimentar
Feed Type,Alimente Tipo
Feedback,Realimentación
Female,Femenino
Fetch lead which will be converted into customer.,"Fetch de plomo, que se convierte en cliente."
Field Description,Campo Descripción
Field Name,Nombre del campo
Field Type,Tipo de campo
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Campo disponible en la Nota de Entrega, cotización, factura de compra, órdenes de venta"
"Field that represents the Workflow State of the transaction (if field is not present, a new hidden Custom Field will be created)","Campo que representa al Estado de flujo de trabajo de la operación (si el campo no está presente, un nuevo campo personalizado oculto se creará)"
Fieldname,Fieldname
Fields,Campos
"Fields separated by comma (,) will be included in the<br /><b>Search By</b> list of Search dialog box","Campos separados por una coma (,) se incluirá en la <br /> <b>Búsqueda por</b> lista de cuadro de diálogo Búsqueda"
File,Expediente
File Data,Archivo de datos
File Name,Nombre de archivo
File Size,Tamaño del archivo
File URL,URL del archivo
File size exceeded the maximum allowed size,Tamaño del archivo supera el tamaño máximo permitido
Files Folder ID,Archivos ID Folder
Filing in Additional Information about the Opportunity will help you analyze your data better.,La presentación de información adicional sobre la oportunidad le ayudará a analizar mejor sus datos.
Filing in Additional Information about the Purchase Receipt will help you analyze your data better.,La presentación de información adicional sobre el recibo de compra le ayudará a analizar mejor sus datos.
Filling in Additional Information about the Delivery Note will help you analyze your data better.,Rellenar Información adicional sobre la nota de entrega le ayudará a analizar mejor sus datos.
Filling in additional information about the Quotation will help you analyze your data better.,Introducción de información adicional sobre el Presupuesto le ayudará a analizar mejor sus datos.
Filling in additional information about the Sales Order will help you analyze your data better.,Introducción de información adicional sobre el pedido de ventas le ayudará a analizar mejor sus datos.
Filter,Filtrar
Filter By Amount,Filtrar por Importe
Filter By Date,Filtrar por fecha
Filter based on customer,Filtro basado en el cliente
Filter based on item,Filtro basado en el artículo
Final Confirmation Date,Confirmación de la fecha límite
Financial Analytics,Financial Analytics
Financial Statements,Estados Financieros
First Name,Nombre
First Responded On,Primero respondió el
Fiscal Year,Año Fiscal
Fixed Asset Account,Cuenta de Activos Fijos
Float,Flotar
Float Precision,Precision Float
Follow via Email,Siga por correo electrónico
Following Journal Vouchers have been created automatically,A raíz de documentos preliminares se han creado de forma automática
"Following table will show values if items are sub - contracted. These values will be fetched from the master of ""Bill of Materials"" of sub - contracted items.",Tras tabla mostrará valores si los artículos son sub - contratado. Estos valores se obtienen de la maestra de la &quot;Lista de materiales&quot; de la sub - productos contratados.
Font (Heading),Fuente (rúbrica)
Font (Text),Fuente (Texto)
Font Size (Text),Tamaño de fuente (texto)
Fonts,Fuentes
Footer,Pie de página
Footer Items,Artículos Footer
For All Users,Para todos los usuarios
For Company,Para la empresa
For Employee,Para los Empleados
For Employee Name,En Nombre del Empleado
For Item ,Por artículo
"For Links, enter the DocType as rangeFor Select, enter list of Options separated by comma","Para los enlaces, introduzca el tipo de documento como rangeFor Select, entrar en la lista de opciones separadas por comas"
For Production,Para Producción
For Reference Only.,Sólo de referencia.
For Sales Invoice,Para Factura
For Server Side Print Formats,Por el lado de impresión Formatos Server
For Territory,Por Territorio
For 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 Lead,De Plomo
From PR Date,Desde la fecha PR
From Package No.,De Paquete No.
From Purchase Order,De la Orden de Compra
From Purchase Receipt,Desde recibo de compra
From Sales Order,A partir de órdenes de venta
From Time,From Time
From Value,De Calidad
From Value should be less than To Value,De valor debe ser inferior al valor
Frozen,Congelado
Fulfilled,Cumplido
Full Name,Nombre Completo
Fully Completed,Totalmente Completada
GL Entry,GL entrada
GL Entry: Debit or Credit amount is mandatory for ,GL Entrada: Débito o Crédito cantidad es obligatorio para
GRN,GRN
Gantt Chart,Diagrama de Gantt
Gantt chart of all tasks.,Diagrama de Gantt de las tareas.
Gender,Género
General,General
General Ledger,Contabilidad General
Generate Description HTML,Descripción Generar HTML
Generate Material Requests (MRP) and Production Orders.,Generar solicitudes de material (MRP) y Órdenes de Producción.
Generate Salary Slips,Generar las nóminas
Generate Schedule,Generar Calendario
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Generar albaranes para los paquetes que se entregarán. Se utiliza para notificar el número de paquetes, el contenido del paquete y su peso."
Generates HTML to include selected image in the description,Genera HTML para incluir la imagen seleccionada en la descripción
Georgia,Georgia
Get,Conseguir
Get Advances Paid,Cómo anticipos pagados
Get Advances Received,Cómo anticipos recibidos
Get Current Stock,Obtener Stock actual
Get From ,Obtener de
Get Items,Obtener elementos
Get Last Purchase Rate,Cómo Tarifa de Último
Get Non Reconciled Entries,Consigue entradas para no conciliadas
Get Outstanding Invoices,Recibe facturas pendientes
Get Purchase Receipt,Obtener recibo de compra
Get Sales Orders,Recibe órdenes de venta
Get Specification Details,Obtenga los datos Especificaciones
Get Stock and Rate,Cómo y Tasa de
Get Template,Cómo Plantilla
Get Terms and Conditions,Cómo Términos y Condiciones
Get Weekly Off Dates,Cómo semanales Fechas Off
"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Obtener tasa de valorización y stock disponible en el almacén de origen / destino en la publicación mencionada fecha y hora. Si serializado artículo, por favor pulse este botón después de introducir los números de serie."
Give additional details about the indent.,Dar detalles sobre el guión.
Global Defaults,Predeterminados globales
Go back to home,Volver a Home
Go to Setup > <a href='#user-properties'>User Properties</a> to set \			'territory' for diffent Users.,Vaya a Configuración&gt; <a href='#user-properties'>Propiedades del usuario</a> para configurar \ &quot;territorio&quot; para los usuarios de diffent.
Goal,Objetivo
Goals,Objetivos de
Goods received from Suppliers.,Los bienes recibidos de proveedores.
Google Analytics ID,Google Analytics ID
Google Drive,Google Drive
Google Drive Access Allowed,Google Drive Acceso animales
Google Plus One,Google Plus One
Google Web Font (Heading),Google Web Fuente (rúbrica)
Google Web Font (Text),Google Web Fuente (Texto)
Grade,Grado
Graduate,Licenciado
Grand Total,Gran Total
Grand Total (Company Currency),Total general (Empresa moneda)
Gratuity LIC ID,La gratuidad ID LIC
Gross Margin %,% Margen Bruto
Gross Margin Value,Valor Margen Bruto
Gross Pay,Pago Bruto
Gross Pay + Arrear Amount +Encashment Amount - Total Deduction,Pago Bruto + + Importe Importe mora Cobro - Deducción total
Gross Profit,Beneficio bruto
Gross Profit (%),Utilidad Bruta (%)
Gross Weight,Peso Bruto
Gross Weight UOM,UOM Peso Bruto
Group,Grupo
Group or Ledger,Grupo o Ledger
Groups,Grupos
HR,HR
HTML,HTML
HTML / Banner that will show on the top of product list.,HTML / Banner que se mostrará en la parte superior de la lista de productos.
Half Day,Medio Día
Half Yearly,Semestral
Half-yearly,Semestral
Has Batch No,Tiene Lote n º
Has Child Node,Tiene nodo secundario
Has Serial No,No tiene de serie
Header,Encabezamiento
Heading,Título
Heading Text As,Título del texto como
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Jefes (o grupos) con el que se fabrican los asientos contables y los balances se mantienen.
Health Concerns,Preocupación por la salud
Health Details,Detalles de Salud
Held On,Celebrada el
Help,Ayudar
Help HTML,Ayuda HTML
"Help: To link to another record in the system, use ""#Form/Note/[Note Name]"" as the Link URL. (don't use ""http://"")","Ayuda: Para vincular a otro registro en el sistema, utilice &quot;# Form / nota / [nombre de la nota]&quot; como la URL Link. (No utilice &quot;http://&quot;)"
Helvetica Neue,Helvetica Neue
"Hence, maximum allowed Manufacturing Quantity","Por lo tanto, el máximo permitido Cantidad Fabricación"
"Here you can maintain family details like name and occupation of parent, spouse and children","Aquí usted puede mantener los detalles de la familia, como el nombre y la ocupación de los padres, cónyuge e hijos"
"Here you can maintain height, weight, allergies, medical concerns etc","Aquí se puede mantener la altura, el peso, alergias, etc preocupaciones médicas"
Hey there! You need to put at least one item in \				the item table.,Hey there! Es necesario poner al menos un artículo en \ table del elemento.
Hey! There should remain at least one System Manager,Hey! No debe permanecer al menos un administrador del sistema de
Hidden,Oculto
Hide Actions,Ocultar Acciones
Hide Copy,Ocultar Copy
Hide Currency Symbol,Ocultar Símbolo de moneda
Hide Email,Email Ocultar
Hide Heading,Ocultar Encabezado
Hide Print,Ocultar Imprimir
Hide Toolbar,Ocultar barra de herramientas
High,Alto
Highlight,Destacar
History,Historia
History In Company,Historia In Company
Hold,Mantener
Holiday,Fiesta
Holiday List,Holiday lista
Holiday List Name,Holiday Nombre de la lista
Holidays,Vacaciones
Home,Casa
Home Page,Home Page
Home Page is Products,Página de Inicio es Productos
Home Pages,Páginas de inicio
Host,Anfitrión
"Host, Email and Password required if emails are to be pulled","Host, correo electrónico y la contraseña requerida si los correos electrónicos han de ser retirado"
Hour Rate,Hora Tarifa
Hour Rate Consumable,Consumible Tipo horas
Hour Rate Electricity,Tarifario horas
Hour Rate Labour,Trabajo tarifa por hora
Hour Rate Rent,Alquiler Tarifa horas
Hours,Horas
How frequently?,¿Con qué frecuencia?
"How should this currency be formatted? If not set, will use system defaults","¿Cómo debe ser formateada esta moneda? Si no se define, se usará valores predeterminados del sistema"
How to upload,Cómo subir
Hrvatski,Hrvatski
Human Resources,Recursos humanos
Hurray! The day(s) on which you are applying for leave \					coincide with holiday(s). You need not apply for leave.,¡Hurra! El día (s) en el cual usted está solicitando para salir \ coincidir con día de fiesta (s). No es necesario solicitar permiso.
I,Yo
ID (name) of the entity whose property is to be set,Identificación (nombre) de la entidad cuya propiedad se va a establecer
IDT,IDT
II,II
III,III
IN,EN
INV,INV
INV/10-11/,INV/10-11 /
ITEM,ARTÍCULO
IV,IV
Icon,Icono
Icon will appear on the button,Aparecerá el icono en el botón
Id of the profile will be the email.,Id del perfil será el correo electrónico.
Identification of the package for the delivery (for print),Identificación del paquete para la entrega (para la impresión)
If Income or Expense,Si los ingresos o gastos
If Monthly Budget Exceeded,Si ha superado el presupuesto mensual
"If Sale BOM is defined, the actual BOM of the Pack is displayed as table.Available in Delivery Note and Sales Order","Si BOM venta está definida, la lista de materiales real del paquete se muestra como table.Available en la nota de entrega y de órdenes de venta"
"If Supplier Part Number exists for given Item, it gets stored here","Si Número de pieza del proveedor existente para el punto dado, se almacena aquí"
If Yearly Budget Exceeded,Si el presupuesto anual ha superado el
"If a User does not have access at Level 0, then higher levels are meaningless","Si un usuario no tiene acceso en el nivel 0, los niveles más altos no tienen sentido"
"If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.","Si se selecciona, la lista de materiales para los elementos de sub-ensamble serán considerados para obtener materias primas. De lo contrario, todos los elementos de montaje sub-será tratada como una materia prima."
"If checked, all other workflows become inactive.","Si se selecciona, todos los flujos de trabajo pasan a ser inactivos."
"If checked, an email with an attached HTML format will be added to part of the EMail body as well as attachment. To only send as attachment, uncheck this.","Si se selecciona, se agregará un correo electrónico con un formato HTML adjunto a una parte del cuerpo del correo electrónico, así como datos adjuntos. Para enviar sólo como archivo adjunto, desmarque esta."
"If checked, the Home page will be the default Item Group for the website.","Si se selecciona, la página de inicio será el grupo de elementos predeterminado para el sitio web."
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Si se selecciona, el importe del impuesto se considerará como ya se ha incluido en la tarifa de impresión / Cantidad Imprimir"
"If disable, 'Rounded Total' field will not be visible in any transaction","Si se desactiva, &#39;Total redondeado&#39; campo no será visible en cualquier transacción"
"If enabled, the system will post accounting entries for inventory automatically.","Si está habilitado, el sistema contabiliza los asientos contables para el inventario de forma automática."
"If image is selected, color will be ignored (attach first)","Si se selecciona una imagen, el color será ignorado (adjunte primero)"
If more than one package of the same type (for print),Si más de un paquete del mismo tipo (por impresión)
If non standard port (e.g. 587),Si no puerto estándar (por ejemplo 587)
If not applicable please enter: NA,Si no aplica por favor escriba: NA
"If not checked, the list will have to be added to each Department where it has to be applied.","Si no está activada, la lista tendrá que ser añadido a cada Departamento donde se ha de aplicar."
"If not, create a","Si no, crea una"
"If set, data entry is only allowed for specified users. Else, entry is allowed for all users with requisite permissions.","Si se establece, la entrada de datos sólo se permite a los usuarios especificados. Si no, se permite la entrada a todos los usuarios con los permisos necesarios."
"If specified, send the newsletter using this email address","Si se especifica, enviar el boletín utilizando la siguiente dirección de correo electrónico"
"If the 'territory' Link Field exists, it will give you an option to select it","Si el campo de &#39;territorio&#39; Link existe, se le dará la opción de seleccionar"
"If the account is frozen, entries are allowed for the ""Account Manager"" only.","Si la cuenta está congelada, las entradas se permitió el &quot;Administrador de cuentas&quot; solamente."
"If this Account represents a Customer, Supplier or Employee, set it here.","Si esta cuenta representa un cliente, proveedor o empleado, se establece aquí."
If you follow Quality Inspection<br>Enables item QA Required and QA No in Purchase Receipt,Si usted sigue Inspección de Calidad <br> Permite elemento de control de calidad y garantía de la calidad requerida no en recibo de compra
If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity,Si tiene equipo de ventas y socios de venta (Channel Partners) pueden ser etiquetados y mantener su contribución en la actividad de ventas
"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Si ha creado una plantilla estándar en los impuestos de compra y Master cargos, seleccione uno y haga clic en el botón de abajo."
"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Si ha creado un modelo estándar en el Impuesto de Ventas y Master cargos, seleccione uno y haga clic en el botón de abajo."
"If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page","Si hace mucho tiempo imprimir formatos, esta característica se puede utilizar para dividir la página que se imprimirá en varias páginas con todos los encabezados y pies de página en cada página"
If you involve in manufacturing activity<br>Enables item <b>Is Manufactured</b>,Si hace que la actividad manufacturera <br> Permite elemento <b>se fabrica</b>
Ignore,Pasar por alto
Ignored: ,Ignorado:
Image,Imagen
Image Link,Enlace a la imagen
Image View,Ver imagen
Implementation Partner,Aplicación Socio
Import,Importar
Import Attendance,Asistencia Import
Import Log,Importar sesión
Important dates and commitments in your project life cycle,Fechas importantes y compromisos en el ciclo de vida del proyecto
Imports,Importaciones
In Dialog,En diálogo
In Filter,En Filter
In Hours,En Horas
In List View,En Vista de lista
In Process,En proceso
In Report Filter,En Filtro de informe
In 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 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
Level,Nivel
"Level 0 is for document level permissions, higher levels for field level permissions.","El nivel 0 es para los permisos de nivel de documento, mayores niveles de permisos a nivel de campo."
Lft,Lft
Link,Enlace
Link to other pages in the side bar and next section,Enlace a otras páginas en el bar de al lado y en la sección siguiente
Linked In Share,Linked In Share
Linked With,Vinculada con
List,Lista
List items that form the package.,Lista de tareas que forman el paquete.
List of holidays.,Lista de los días festivos.
List of patches executed,Lista de parches ejecutados
List of records in which this document is linked,Lista de los registros en los que está vinculado este documento
List of users who can edit a particular Note,Lista de usuarios que pueden editar una nota en particular
List this Item in multiple groups on the website.,Enumero este artículo en varios grupos en la web.
Live Chat,Chat en Directo
Load Print View on opening of an existing form,Cargar Vista de Impresión en la apertura de un formulario existente
Loading,Carga
Loading Report,Carga Informe
Log,Log
"Log of Activities performed by users against Tasks that can be used for tracking time, billing.","Registro de las actividades realizadas por los usuarios en contra de Tareas que se pueden utilizar para el seguimiento de tiempo, de facturación."
Log of Scheduler Errors,Log de errores del programador
Login After,Ingresa Después
Login Before,Inicio de sesión antes
Login Id,ID de Usuario
Logo,Logo
Logout,Cerrar sesión
Long Text,Texto largo
Lost Reason,Razón Perdido
Low,Bajo
Lower Income,Menores ingresos
Lucida Grande,Lucida Grande
MIS Control,MIS control
MREQ-,MREQ-
MTN Details,MTN Detalles
Mail Footer,Correo pie de página
Mail Password,Mail Contraseña
Mail Port,Mail Port
Mail Server,Servidor de correo
Main Reports,Informes Principales
Main Section,Sección principal
Maintain Same Rate Throughout Sales Cycle,Mantener el mismo ritmo durante todo el ciclo de ventas
Maintain same rate throughout purchase cycle,Mantener el mismo ritmo durante todo el ciclo de compra
Maintenance,Mantenimiento
Maintenance Date,Mantenimiento Fecha
Maintenance Details,Detalles de Mantenimiento
Maintenance Schedule,Programa de mantenimiento
Maintenance Schedule Detail,Mantenimiento Detalle Horario
Maintenance Schedule Item,Mantenimiento elemento de programación
Maintenance Schedules,Programas de mantenimiento
Maintenance Status,Mantenimiento de estado
Maintenance Time,Tiempo de mantenimiento
Maintenance Type,Mantenimiento Tipo
Maintenance Visit,Mantenimiento Visita
Maintenance Visit Purpose,Mantenimiento Propósito Visita
Major/Optional Subjects,Temas principales / Opcional
Make Bank Voucher,Hacer comprobante bancario
Make Difference Entry,Hacer Entrada Diferencia
Make Time Log Batch,Hacer lotes Log Tiempo
Make a new,Hacer una nueva
Make sure that the transactions you want to restrict have a Link field 'territory' that maps to a 'Territory' master.,Asegúrese de que las operaciones que desea restringir tener &quot;territorio&quot; un campo de enlace que se asigna a un &#39;territorio&#39; master.
Male,Masculino
Manage cost of operations,Gestione costo de las operaciones
Manage exchange rates for currency conversion,Administrar los tipos de cambio para la conversión de divisas
Mandatory,Obligatorio
"Mandatory if Stock Item is ""Yes"". Also the default warehouse where reserved quantity is set from Sales Order.",Obligatorio si acción del artículo es &quot;Sí&quot;. También el almacén por defecto en que la cantidad reservada se establece a partir de órdenes de venta.
Manufacture against Sales Order,Fabricación contra pedido de cliente
Manufacture/Repack,Fabricación / Repack
Manufactured Qty,Fabricado Cantidad
Manufactured quantity will be updated in this warehouse,Fabricado cantidad se actualizará en este almacén
Manufacturer,Fabricante
Manufacturer Part Number,Código de Fabricante
Manufacturing,Fabricación
Manufacturing Quantity,Fabricación Cantidad
Margin,Margen
Marital Status,Estado civil
Market Segment,Sector de mercado
Married,Casado
Mass Mailing,Mass Mailing
Master,Maestro
Master Name,Maestro Nombre
Master Type,Type Master
Masters,Masters
Match,Partido
Match non-linked Invoices and Payments.,Coincidir no vinculados Facturas y Pagos.
Material Issue,Material de Emisión
Material Receipt,Recibo de Materiales
Material Request,Material de Solicitud
Material Request Date,Material de la Fecha de Solicitud
Material Request Detail No,Materiales Detalle Solicitud de No
Material Request For Warehouse,Material de Solicitud de Almacén
Material Request Item,Artículo Material Request
Material Request Items,Artículos de materiales Solicitar
Material Request No,Material de Solicitud de No
Material Request Type,Tipo de material Solicitud
Material Request used to make this Stock Entry,Solicitud de material utilizado para hacer esto Stock entrada
Material 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 permission to write / remove.,No tiene permiso para escribir / eliminar.
No record found,Ningún registro encontrado
No records tagged.,No hay registros marcados.
No salary slip found for month: ,No nómina encontrado al mes:
"No table is created for Single DocTypes, all values are stored in tabSingles as a tuple.","No se crean tablas para DocTypes individuales, todos los valores se almacenan en tabSingles como una tupla."
None,Ninguno
None: End of Workflow,Ninguno: Fin del flujo de trabajo
Not,No
Not Active,No está activo
Not Applicable,No aplicable
Not Billed,No Anunciado
Not Delivered,No entregado
Not Found,No se encuentra
Not Linked to any record.,No está vinculado a ningún registro.
Not Permitted,No se permite
Not allowed for: ,No permitido en:
Not enough permission to see links.,Sin permisos suficientes para ver los enlaces.
Not in Use,Sin usar
Not interested,No le interesa
Not linked,No vinculado
Note,Nota
Note User,Nota usuario
Note is a free page where users can share documents / notes,Nota es una página gratuita donde los usuarios pueden compartir documentos / notas
"Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.","Nota: Las copias de seguridad y archivos no se eliminan de Dropbox, que tendrá que hacerlo manualmente."
"Note: Backups and files are not deleted from Google Drive, you will have to delete them manually.","Nota: Las copias de seguridad y archivos no se eliminan de Google Drive, usted tendrá que eliminar manualmente."
Note: Email will not be sent to disabled users,Nota: El correo electrónico no será enviado a los usuarios con discapacidad
"Note: For best results, images must be of the same size and width must be greater than height.","Nota: Para obtener los mejores resultados, las imágenes deben ser del mismo tamaño y el ancho debe ser mayor que la altura."
Note: Other permission rules may also apply,Nota: El resto de normas de permiso también pueden solicitar
Note: You Can Manage Multiple Address or Contacts via Addresses & Contacts,Nota: Usted puede manejar varias direcciones o contactos a través de las direcciones y contactos
Note: maximum attachment size = 1mb,Nota: el tamaño máximo de archivo adjunto = 1mb
Notes,Notas
Nothing to show,Nada para mostrar
Notice - Number of Days,Aviso - Número de días
Notification Control,Notificación de control
Notification Email Address,Notificación de Correo Electrónico
Notify By Email,Notificaremos por correo electrónico
Notify by Email on creation of automatic Material Request,Notificarme por correo electrónico sobre la creación de la Solicitud de material automático
Number Format,Formato de los números
O+,O +
O-,O-
OPPT,OPPT
Office,Oficina
Old Parent,Padres Antiguo
On,En
On Net Total,En total neto
On Previous Row Amount,El Monto de la fila anterior
On Previous Row Total,El total de la fila anterior
"Once you have set this, the users will only be able access documents with that property.","Una vez que haya establecido esto, los usuarios sólo serán documentos capaces de acceso con esa propiedad."
Only Administrator allowed to create Query / Script Reports,Administrador con permiso para crear informes de consulta / Guión
Only Administrator can save a standard report. Please rename and save.,Sólo el administrador puede guardar un informe estándar. Cambie el nombre y guardar.
Only Allow Edit For,Sólo Permitir editar para
Only Stock Items are allowed for Stock Entry,Sólo los elementos de almacén están permitidos para la entrada
Only System Manager can create / edit reports,Sólo el administrador del sistema puede crear / editar informes
Only leaf nodes are allowed in transaction,Sólo los nodos hoja se permite en una transacción realizada
Open,Abierto
Open Sans,Sans abiertas
Open Tickets,Entradas Abierto
Opening Date,Fecha apertura
Opening Entry,Entrada de apertura
Opening Time,Tiempo de apertura
Opening for a Job.,Apertura de un trabajo.
Operating Cost,Costo de operación
Operation Description,Descripción de la operación
Operation No,Operación No
Operation Time (mins),Tiempo de operación (minutos)
Operations,Operaciones
Opportunity,Oportunidad
Opportunity Date,Oportunidad Fecha
Opportunity From,De Oportunidad
Opportunity Item,Oportunidad artículo
Opportunity Items,Artículos Oportunidad
Opportunity Lost,Oportunidad Perdida
Opportunity Type,Oportunidad Tipo
Options,Opciones
Options Help,Opciones Ayuda
Order Confirmed,Pedido confirmado
Order Lost,Orden Perdido
Order Type,Tipo de orden
Ordered Items To Be Billed,Los artículos pedidos a facturar
Ordered Items To Be Delivered,Los artículos pedidos para ser entregados
Ordered Quantity,Cantidad ordenada
Orders released for production.,Los pedidos a producción.
Organization Profile,Perfil de la organización
Original Message,Mensaje original
Other,Otro
Other Details,Otros detalles
Out,Fuera
Out of AMC,Fuera de AMC
Out of Warranty,Fuera de la Garantía
Outgoing,Saliente
Outgoing Mail Server,Servidor de correo saliente
Outgoing Mails,Los correos salientes
Outstanding Amount,Monto Pendiente
Outstanding for Voucher ,Sobresaliente para Voucher
Over Heads,Sobre las cabezas de
Overhead,Gastos generales
Overlapping Conditions found between,Condiciones superpuestas encuentran entre
Owned,Propiedad
PAN Number,Número PAN
PF No.,PF No.
PF Number,Número PF
PI/2011/,PI/2011 /
PIN,PIN
PO,Correos
POP3 Mail Server,Servidor de correo POP3
POP3 Mail Server (e.g. pop.gmail.com),POP3 Servidor de correo (por ejemplo pop.gmail.com)
POP3 Mail Settings,Configuración de correo POP3
POP3 mail server (e.g. pop.gmail.com),POP3 del servidor de correo (por ejemplo pop.gmail.com)
POP3 server e.g. (pop.gmail.com),"Por ejemplo, el servidor POP3 (pop.gmail.com)"
POS Setting,Configuración POS
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,"Por favor, especifique un"
Please specify a Price List which is valid for Territory,"Por favor, especifique una lista de precios que es válido para el territorio"
Please specify a valid,"Por favor, especifique una dirección válida"
Please specify a valid 'From Case No.',Especifique un válido &#39;De Caso No.&#39;
Please specify currency in Company,"Por favor, especifique la moneda en la empresa"
Point of Sale,Punto de Venta
Point-of-Sale Setting,Point-of-Sale Marco
Post Graduate,Postgrado
Post Topic,Publicar Tema
Postal,Postal
Posting Date,Fecha de Publicación
Posting Date Time cannot be before,Fecha de contabilización El tiempo no puede ser anterior a
Posting Time,Hora de publicación
Posts,Mensajes
Potential Sales Deal,Ventas posible acuerdo
Potential opportunities for selling.,Oportunidades potenciales para la venta.
"Precision for Float fields (quantities, discounts, percentages etc) 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 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 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 Series,Series Cotización
Quotation To,PRESUPUESTO a
Quotation Trend,Tendencia Cotización
Quotations received from Suppliers.,Citas recibidas de los proveedores.
Quotes to Leads or Customers.,Cotizaciones a clientes potenciales o clientes.
Raise Material Request,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...,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 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 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 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 prefix for numbering series on your transactions,Establecer prefijo de numeración de serie en sus transacciones
Set targets Item Group-wise for this Sales Person.,Establecer metas grupo que tienen el artículo de esta persona de ventas.
"Set your background color, font and image (tiled)","Establezca su color de fondo, tipo de letra y la imagen (mosaico)"
"Set your outgoing mail SMTP settings here. All system generated notifications, emails will go from this mail server. If you are not sure, leave this blank to use ERPNext servers (emails will still be sent from your email id) or contact your email provider.","Establezca la configuración de correo SMTP salientes aquí. Todo el sistema genera notificaciones, correos electrónicos irá desde este servidor de correo. Si no está seguro, deje este campo en blanco para utilizar servidores ERPNext (correos electrónicos seguirán siendo enviados a su correo electrónico de identificación) o póngase en contacto con su proveedor de correo electrónico."
Setting Account Type helps in selecting this Account in transactions.,Tipo de Ajuste de cuentas ayuda en la selección de esta cuenta en las transacciones.
Settings,Configuración
Settings for About Us Page.,Ajustes para Nosotros Pagina.
Settings for Accounts,Ajustes de cuentas
Settings for Buying Module,Ajustes para la compra de módulo
Settings for Contact Us Page,Ajustes para Contáctenos Página
Settings for Contact Us Page.,Ajustes para la página de contacto.
Settings for Selling Module,Ajustes para vender Módulo
Settings for the About Us Page,Ajustes de la página ¿Quiénes somos?
"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""",Ajustes para extraer los solicitantes de empleo a partir de un ejemplo buzón &quot;jobs@example.com&quot;
Setup,Disposición
Setup Control,Control de la instalación
Setup Series,Configuración Series
Setup of Shopping Cart.,Configuración de Compras.
Setup of fonts and background.,Configuración de fuentes y el fondo.
"Setup of top navigation bar, footer and logo.","Configuración de la barra de navegación superior, pie de página y el logotipo."
Setup to pull emails from support email account,Configuración para extraer mensajes de correo electrónico desde la cuenta de correo electrónico de apoyo
Share,Participación
Share With,Compartir Con
Shipments to customers.,Los envíos a los clientes.
Shipping,Envío
Shipping Account,Cuenta Envios
Shipping Address,Dirección de envío
Shipping Address Name,Nombre de embarque Dirección
Shipping Amount,Cantidad del envío
Shipping Rule,Regla del envío
Shipping Rule Condition,Condición inicial Regla
Shipping Rule Conditions,Envío Regla Condiciones
Shipping Rule Label,Etiqueta de envío Regla
Shipping Rules,Normas de Envío
Shop,Tienda
Shopping Cart,Cesta de la compra
Shopping Cart Price List,Compras Lista de Precios
Shopping Cart Price Lists,Carrito listas de precios
Shopping Cart Settings,Carrito Ajustes
Shopping Cart Shipping Rule,Compras Envios Regla
Shopping Cart Shipping Rules,Carrito Normas de Envío
Shopping Cart Taxes and Charges Master,Carrito impuestos y las cargas Maestro
Shopping Cart Taxes and Charges Masters,Carrito Impuestos y Masters
Short Bio,Nota Biográfica
Short Name,Nombre corto
Short biography for website and other publications.,Breve biografía de la página web y otras publicaciones.
Shortcut,Atajo
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Mostrar &quot;En Stock&quot; o &quot;no está en stock&quot;, basada en el stock disponible en este almacén."
Show Details,Mostrar detalles
Show In Website,Mostrar en el sitio web
Show Print First,Mostrar Imprimir Primera
Show a slideshow at the top of the page,Mostrar una presentación de diapositivas en la parte superior de la página
Show in Website,Mostrar en el sitio web
Show rows with zero values,Mostrar filas con valores iguales a cero
Show this slideshow at the top of the page,Ver este vídeo en la parte superior de la página
Showing only for,Mostrando sólo para
Signature,Firma
Signature to be appended at the end of every email,Firma que se adjunta al final de cada correo electrónico
Single,Solo
Single Post (article).,Mensaje Individual (artículo).
Single unit of an Item.,Una sola unidad de un elemento.
Sitemap Domain,Sitemap dominio
Slideshow,Presentación
Slideshow Items,Artículos Presentación
Slideshow Name,Nombre Presentación
Slideshow like display for the website,Presentación como visualización de la página web
Small Text,Texto pequeño
Solid background color (default light gray),Color de fondo sólido (gris claro defecto)
Sorry we were unable to find what you were looking for.,Lamentablemente no hemos podido encontrar lo que estabas buscando.
Sorry you are not permitted to view this page.,"Disculpe, no tiene permiso para ver esta página."
Sorry! We can only allow upto 100 rows for Stock Reconciliation.,¡Lo siento! Sólo podemos permitir hasta 100 filas por la Reconciliación de Valores.
Sorry. 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 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,Para hacer
To Do List,Para hacer la lista
To PR Date,Conocer PR
To Package No.,Para Paquete No.
To Reply,Para Responder
To Time,Para Tiempo
To Value,Para Valor
To Warehouse,Para Almacén
"To add a tag, open the document and click on ""Add Tag"" on the sidebar","Para agregar una etiqueta, abra el documento y haga clic en &quot;Añadir etiqueta&quot; en la barra lateral"
"To assign this issue, use the ""Assign"" button in the sidebar.","Para asignar este problema, utilice el botón &quot;Assign&quot; en la barra lateral."
"To automatically create Support Tickets from your incoming mail, set your POP3 settings here. You must ideally create a separate email id for the erp system so that all emails will be synced into the system from that mail id. If you are not sure, please contact your EMail Provider.","Para crear automáticamente Tickets de Soporte de su correo entrante, establecer la configuración de POP3 aquí. Lo ideal debe crear un ID de correo electrónico por separado para el sistema ERP para que todos los correos electrónicos se sincronizan en el sistema desde que id electrónico. Si no está seguro, póngase en contacto con su proveedor de correo electrónico."
"To create an Account Head under a different company, select the company and save customer.","Para crear un Jefe de Cuenta bajo una empresa diferente, seleccione la empresa y ahorrar al cliente."
To enable <b>Point of Sale</b> features,Para habilitar <b>Punto de Venta</b> características
"To 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 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 Remark,Usuario Comentario
User Remark will be added to Auto Remark,Observación de usuario se añadirá a Auto Observación
User Tags,Nube de etiquetas
User Type,Tipo de usuario
User must always select,Usuario siempre debe seleccionar
User not allowed entry in the Warehouse,No se permite la entrada del usuario en el almacén de
User not allowed to delete.,El usuario no permite eliminar.
UserRole,UserRole
Username,Nombre de usuario
Users who can approve a specific employee's leave applications,Los usuarios que pueden aprobar las solicitudes de licencia de un empleado específico
Users with this role are allowed to do / modify accounting entry before frozen date,Los usuarios con este rol pueden ver / modificar registro contable antes de la fecha congelado
Utilities,Utilidades
Utility,Utilidad
Valid For Territories,Válido para los territorios
Valid Upto,Válido Hasta que
Valid for Buying or Selling?,Válido para comprar o vender?
Valid for Territories,Válido para los territorios
Validate,Validar
Valuation,Valuación
Valuation Method,Método de valoración
Valuation Rate,Valoración de tipo
Valuation and Total,Valoración y Total
Value,Valor
Value missing for,Valor perdido para
Vehicle Dispatch Date,Vehículo Dispatch Fecha
Vehicle No,Vehículo No
Verdana,Verdana
Verified By,Verificado por
Visit,Visitar
Visit report for maintenance call.,Visita informe de llamada de mantenimiento.
Voucher Detail No,Vale Detalle Desierto
Voucher ID,Vale ID
Voucher Import Tool,Vale herramienta de importación
Voucher No,Vale No
Voucher Type,Vale Tipo
Voucher Type and Date,Tipo Bono y Fecha
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.
You may need to update: ,Es posible que tenga que actualizar:
Your Customer's TAX registration numbers (if applicable) or any general information,De sus clientes números impuesto de matriculación (si es aplicable) o cualquier otra información de carácter general
"Your download is being built, this may take a few moments...","Su descarga se está construyendo, esto puede tardar unos minutos ..."
Your letter head content 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
