,
 Reason: ,Razón:
 against same operation,contra la misma operación
 by Role ,por función
 cannot be 0,no puede ser 0
 does not belong to the company: ,no pertenece a la empresa:
 has been freezed. \				Only Accounts Manager can do transaction against this account,ha sido congelado. \ Sólo Administrador de cuentas puede hacer en contra de esta transacción cuenta
" is less than equals to zero in the system, \						valuation rate is mandatory for this item","es inferior a igual a cero en el sistema, la 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 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."
 or the BOM is cancelled or inactive,o la lista de materiales se cancela o inactivo
 should be same as that in ,debería ser la misma que en
 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%
% Installed,Instalado%
% Ordered,Ordenado%
% Received,Recibido%
% of materials billed against this Delivery Note,% De los materiales facturados en contra de esta nota de entrega
% of materials billed against this Purchase Order.,% De los materiales facturados en contra de esta Orden de Compra.
% of materials billed against this Purchase Receipt,% De materiales facturados contra este recibo 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 Purchase Requisition,% De los materiales ordenados en contra de esta solicitud de compra
% 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."
' does not exists in ,&#39;No existe en
* 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 **.
0,0
01,01
02,02
03,03
04,04
05,05
06,06
07,07
08,08
09,09
1,1
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"
10,10
100,100
11,11
12,12
12px,12px
13px,13px
14px,14px
15,15
15px,15px
16px,16px
2,2
2 days ago,Hace 2 días
20,20
25,25
3,3
30,30
35,35
4,4
40,40
45,45
5,5
50,50
55,55
6,6
60,60
65,65
70,70
75,75
80,80
85,85
90,90
95,95
: 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.
<,&lt;
<=,&lt;=
"<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"">To manage Territory, click here</a>","<a href=""#Sales Browser/Customer Group"">Para gestionar Territorio, haga clic aquí</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>"
=,=
>,&gt;
>=,&gt; =
A,La
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 is shown on the website and is linked to an item.,Un producto se muestra en la página web y está vinculada a un elemento.
"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 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 Info,Información de la cuenta
Account Name,Nombre de la cuenta
Account Type,Tipo de Cuenta
Account: ,Cuenta:
"Accounting entry frozen up to this date, nobody can do / modify entry except authorized person","Asiento contable congelado hasta la fecha, nadie puede hacer / modificar entrada excepto persona autorizada"
Accounting journal entries.,Contabilidad entradas del diario.
Accounts,Cuentas
Accounts Browser,Cuentas Browser
Accounts Frozen Upto,Hasta que las cuentas congeladas
Accounts Home,Inicio Cuentas
Accounts Payable,Cuentas por pagar
Accounts Receivable,Cuentas por cobrar
Action,Acción
Action Detail,Acción Detalle
Action html,Acción html
Active,Activo
Active: Will extract emails from ,Actividad: Se extraerán los correos electrónicos
Activity,Actividad
Activity Log,Registro de actividad
Activity Name,Nombre de la 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 End Time,Hora de finalización real
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
Actual Start Time,Tiempo 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 Message,Agregar mensaje
Add New Permission Rule,Añadir regla Nuevo permiso
Add Reply,Añadir respuesta
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 Purchase Requisition. You can also prepare a Terms and Conditions Master and use the Template,Añadir Términos y Condiciones para la solicitud 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 code as &lt;script&gt;,Agregue código como &lt;script&gt;
Add custom code to forms,Agregar código personalizado a las formas
Add fields to forms,Agregar campos a las formas
Add headers for standard print formats,Agregar encabezados para los formatos de impresión estándar
Add or Deduct,Agregar o deducir
Add rows to set annual budgets on Accounts.,Añada filas para fijar presupuestos anuales de Cuentas.
Add to To Do,Añadir a To Do
Add to To Do List of,Agregar a la lista de tareas de
Add/Remove Recipients,Agregar / Quitar destinatarios
"Add/remove users, set roles, passwords etc","Añadir / eliminar usuarios, roles establecidos, contraseñas, etc"
Additional Columns,Columnas adicionales
Additional Conditions,Condiciones adicionales
Additional Info,Información adicional
Additional Tables,Tablas adicionales
Address,Dirección
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 Line1,Dirección Línea 1
Address Line2,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
"After cancelling the Purchase Requisition, a dialog box will ask you reason for cancellation which will be reflected in this field","Después de cancelar la solicitud de compra, aparecerá un cuadro de diálogo le pedirá motivo de la cancelación, que se refleja en este campo"
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 Active Leads,Todas las derivaciones activas
All Addresses.,Todas las direcciones.
All Blog Subscribers,Todos los suscriptores de blog
All Contact,Todo contacto
All Contacts,Todos los contactos
All Contacts.,Todos los contactos.
All Customer Contact,Todo servicio al cliente
All Customer Contacts,Todos los contactos de clientes
All Employee (Active),Todos los empleados (Activo)
All Lead (Open),Todos Plomo (Abierto)
All Leads,Todos los cables
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 attendance dates inbetween selected Attendance From Date and Attendance To Date will come in the template with employees list.,Todas las fechas de asistencia Asistencia inbetween seleccionada Desde la fecha y asistencia hasta la fecha se vienen en la plantilla con la lista de empleados.
"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;"
Allocate,Asignar
Allocate leaves for the year.,Asignar las hojas para el año.
Allocated (%),Asignado (%)
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 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 make Leave Applications for block days.,Permitir a los usuarios realizar las siguientes aplicaciones dejan para los días de bloque.
Allow this price in purchase related forms,Permitir que este precio de compra en las formas conexas
Allow this price in sales related forms,Permitir que este precio de venta en las formas conexas
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
Amend,Enmendar
Amended From,De modificada
Amendment Date,Enmienda Fecha
Amount,Cantidad
Amount <=,Importe &lt;=
Amount >=,Monto&gt; =
Amount*,Importe *
"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
Answer,Responder
"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)
Applicable only if valuation method is moving average,Aplicable sólo si el método de valoración se media móvil
Applicant Name,Nombre del solicitante
Applicant for a Job,Pretendiente a un puesto
Applicant for a Job (extracted from jobs email).,Solicitante de empleo (extraído de email empleos).
Applications for leave.,Las solicitudes de licencia.
Applies to Company,Corresponde a la Empresa
Apply / Approve Leaves,Aplicar / Aprobar Hojas
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 existente para el artículo:
As per Stock UOM,Según de la UOM
Ascending,Ascendente
Assign To,Asignar a
Assigned By,Asignado por
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
Attachments,Archivos adjuntos
Attempted to Contact,Intentó establecer contacto con
Attendance,Asistencia
Attendance Control Panel,La asistencia del Panel de control
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 record.,Asistencia récord.
Attributions,Atribuciones
Authorization Control,Autorización de Control
Authorization Rule,Autorización Regla
Authorized Role (Frozen Entry),Rol Autorizado (Entrada congelada)
Authourized Role (Frozen Entry),Papel Authourized (Entrada congelada)
Auto Email Id,Auto Identificación del email
Auto Name,Nombre Auto
Auto generated,Generado automáticamente
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 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"
Average Discount,Descuento medio
B,B
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
Background shade of the top menu bar,Antecedentes sombra de la barra de menú superior
Bank,Banco
Bank A/C No.,Bank A / C No.
Bank Account,Cuenta bancaria
Bank Account No.,Banco Número de cuenta
Bank Balance,Saldo bancario
Bank Name,Nombre del banco
Bank Reconciliation,Conciliación Bancaria
Bank Reconciliation Detail,Banco Detalle Reconciliación
Bank Voucher,Banco Voucher
Bank or Cash,Banco o Caja
Banner,Bandera
Banner HTML,Banner HTML
Barcode,Código de barras
Based On,Basado en el
Based on,Basado en
Basic Info,Información básica
Basic Information,Información Básica
Basic Rate,Tasa Básica
Basic Rate*,* Tasa Básica
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
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)
Billed,Anunciada
Billed Amt,Billed Amt
Billed Quantity,Cantidad facturada
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
Birth Date,Fecha de Nacimiento
Black,Negro
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,Blog
Blog Subscriber,Blog suscriptor
Blog entry.,Entradas en el blog.
Blood Group,Grupo sanguíneo
Bookmarks,Marcadores
Branch,Rama
Brand,Marca
Brand HTML,Marca HTML
Brand Name,Marca
"Brand is what appears on the top-right of the toolbar. If it is an image, make sure ithas a transparent background and use the &lt;img /&gt; tag. Keep size as 200px x 30px","La marca es lo que aparece en la parte superior derecha de la barra de herramientas. Si se trata de una imagen, hacer ithas seguro de un fondo transparente y el uso de la etiqueta &lt;img /&gt;. Mantener el tamaño 200px x 30px como"
Brand master.,Marca maestro.
Branding and Printing,Branding y prensa
Brands,Marcas
Breakdown,Desglose
Budget,Presupuesto
Budget Allocated,Presupuesto asignado
Budget Control,Control del Presupuesto
Budget Detail,Presupuesto Detalle
Budget Details,Datos del Presupuesto
Budget Distribution,Distribución del presupuesto
Budget Distribution Detail,Presupuesto Detalle Distribución
Budget Distribution Details,Detalles Distribución del presupuesto
Build Report,Construir Informe
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 Cost,Comprar Costo
Buying Cost will be updated from Purchase Orders and Purchase Receipts. <br>The buying cost will calculated by moving average method.,Costo de Adquisición será actualizada de las órdenes de compra y recibos de compra. <br> El precio de compra se calcula moviendo método promedio.
Buying Home,Adquisición de Casas
By,Por
C,C
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
CGHelp,CGHelp
CI/2010-2011/,CI/2010-2011 /
COMM-,COMM-
CSS,CSS
CTC,CTC
CUST,CUST
CUSTMUM,CUSTMUM
Calculate Charges,Cálculo de Cargos
Calculate Tax,Cálculo de Impuestos
Calculate Taxes and Charges,Cálculo de Impuestos y Cargos
Calculate Total Score,Calcular la puntuación total
Calendar,Calendario
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 Reason,Cancelar Razón
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
Capacity,Capacidad
Capacity Units,Unidades de capacidad
Career History,Historia Historial
Carry Forward,Llevar adelante
Carry Forwarded Leaves,Llevar Hojas reenviados
Cash,Efectivo
Cash Voucher,Cash Voucher
Cash/Bank Account,Efectivo / Cuenta Bancaria
Category,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."
Certificate,Certificado
Challan Date,Challan Fecha
Challan No,No Challan
Change UOM for an Item.,Cambiar UOM de un elemento.
Change background fonts etc,Cambiar el fondo etc fuentes
"Change entry properties (hide fields, make mandatory etc)","Cambiar las propiedades de entrada (campos ocultar, maquillaje etc obligatorio)"
Change the starting / current sequence number of an existing series.,Cambiar el número de secuencia de arranque / corriente de una serie existente.
Channel Partner,Channel Partner
Charge,Cargo
Chargeable,Cobrable
Chart of Accounts,Plan General de Contabilidad
Chart of Cost Centers,Gráfico de centros de coste
Chat,Charlar
Cheating FieldPlease do not delete ,Hacer trampa FieldPlease no elimine
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 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
"Checking Operator (To Fld, Operator, From Fld)","Comprobación del operador (Para Fld, Operador De Fld)"
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 expenses made on behalf of the organization.,Las reclamaciones por gastos realizados en nombre de la organización.
Class / Percentage,Clase / Porcentaje
Classification of Customers by region,Clasificación de los clientes por región
Clear Cache & Refresh,Borrar la caché y Actualizar
Clear Pending,Borrar Pendiente
Clear Table,Borrar tabla
Clearance Date,Liquidación Fecha
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 on edit button to start a new report.,Haga clic en el botón Editar para iniciar un nuevo informe.
Click to Expand / Collapse,Haga clic aquí para Expandir / Contraer
Client,Cliente
Client Script,Script de cliente
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
Collections,Colecciones
Color,Color
Column Break,Salto de columna
Columns,Columnas
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 Log,Comunicación sesión
Communication Medium,Comunicación Medio
Communication by,La comunicación por
Communication log.,Comunicación de registro.
Communication type,Tipo de comunicación
Company,Empresa
Company Control,Control Company
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 Name,Nombre de la compañía
Company branches.,Sucursales de la compañía.
Company departments.,Departamentos de la empresa.
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
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)"
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,Contacto No
Contact No.,Contactar No.
Contact Person,Persona 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
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
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 must be specified for PL Account: ,Centro de costos 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 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: ,Cuenta Creada cabeza:
Created Customer Issue,Cliente Creado Issue
Created Group ,Fecha de creación
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.
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
Criteria Name,Criterios Nombre
Cross List Item Group,Grupo de la Cruz lista de elementos
Cross Listing of Item in multiple groups,Cruce Listado de artículos en varios grupos
Currency,Moneda
Currency & Price List,Moneda y lista de precios
Currency Format,Formato de moneda
Currency Name,Nombre de divisas
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
Cust/Supp Address,Cust / Supp Dirección
Cust/Supp Name,Cust / Supp Nombre
Custom Autoreply Message,Custom mensaje de respuesta automática
Custom CSS,Custom CSS
Custom Field,Campo personalizado
Custom Message,Mensaje personalizado
Custom Query,Consulta personalizada
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 Address,Dirección del cliente
Customer Addresses And Contacts,Las direcciones de clientes y contactos
Customer Code,Código de Cliente
Customer Codes,Códigos de clientes
Customer Details,Detalles del Cliente
Customer Feedback,Comentarios del cliente
Customer Group,Grupo de clientes
Customer Group Name,Nombre del cliente Grupo
Customer Intro,Introducción al Cliente
Customer Issue,Customer Issue
Customer Issue No,Customer Issue No
Customer Issue against a Serial No (warranty).,Customer Issue contra un número de serie (garantía).
Customer Master created by ,Maestro de clientes creado por
Customer Name,Nombre del cliente
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 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."
Customer/Supplier,Cliente / Proveedor
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, weekly, monthly email Digests","Diariamente, el correo electrónico semanal, mensual Digests"
Danger,Peligro
Data,Datos
Data Import,Importación de datos
Data Import Tool,Herramienta de importación de datos
Database,Base de datos
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 is repeated,La fecha se repite
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 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 Price List Currency,Precio de lista por defecto de divisas
Default Print Format,Por defecto Formato de impresión
Default Product Category,Predeterminado Categoría de producto
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 Reserved Warehouse,Por defecto Reservado Almacén
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 Type,Tipo predeterminado Almacén
Default values are set across the role and can be over-ridden by user permissions.,Los valores por defecto se establecen a través de la función y pueden ser anuladas por los permisos de usuario.
"Default: ""Product Search""",Default: &quot;Búsqueda de Productos&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>"
Define Rule,Definir regla
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
Delivered,Liberado
Delivered Items To Be Billed,Material que se adjunta a facturar
Delivered Qty,Cantidad Entregada
Delivery (shipment) to customers.,Entrega (envío) a los clientes.
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 Status,Estado de entrega
Delivery Time,Tiempo de Entrega
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 of a Job Opening,Descripción de una oferta de trabajo
Desert,Desierto
Designation,Designación
Desktop,Escritorio
Detail Name,Detalle Nombre
Detailed Breakup of the totals,Breakup detallada de los totales
Details,Detalles
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"
Disabled,Discapacitado
Disabled Filters,Filtros de movilidad reducida
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 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 Label,Etiqueta de tipo de documento
DocType Mapper,DocType Mapper
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
Document to rename,Documento para cambiar el nombre
Documentation,Documentación
Documents,Documentos
Domain List,Lista de dominios
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
Draft,Borrador
Drafts,Damas
Drag to sort columns,Arrastre para ordenar las columnas
Due Date,Fecha de vencimiento
Duration,Duración
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 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;"
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 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 Internal Work History,Empleado Historial de trabajo interno
Employee Internal Work Historys,Historys Empleados Interno de Trabajo
Employee Name,Nombre del empleado
Employee Number,Número de empleado
Employee Records to be created by ,Registros de los empleados a ser creado por
Employee Setup,Empleado de configuración
Employee Training,Capacitación de los empleados
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.
Employees Email Id,Empleados de correo electrónico de identificación
Employment Details,Detalles de Empleo
Employment Type,Tipo de empleo
Enable / disable currencies.,Activar / desactivar monedas.
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
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 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 domain names associated to this website, each on a new line","Escriba los nombres de dominio asociados a este sitio web, cada uno en una línea nueva"
"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 message,Ingrese mensaje
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
Estimated Material Cost,Costo estimado de material
Event,Evento
Event Date,Fecha del evento
Event Individuals,Los individuos del Evento
Event Name,Nombre del evento
Event Role,Evento Papel
Event Roles,Roles de eventos
Event Time,Evento
Event Type,Tipo de evento
Event Updates,Actualizaciones del Evento
Event User,Evento del usuario
Exchange Rate,Tipo de cambio
Excise Page Number,Número de página Impuestos Especiales
Excise Voucher,Vale Impuestos Especiales
Execute,Ejecutar
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 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
Expenses Booked,Gastos Reservados
Expiry Date,Fecha de caducidad
Export,Exportar
Exports,Exportaciones
External,Externo
Extra Condition,Condición adicional
Extract Emails,Extracto de mensajes de correo electrónico
Extract Job Applicant from jobs email id e.g. jobs@example.com,Extracto solicitante de empleo de puestos de trabajo Identificación del email por ejemplo jobs@example.com
Extract Leads from sales email id e.g. sales@example.com,Extracto Leads de ventas email id por ejemplo sales@example.com
FCFS Rate,Tasa FCFS
FIFO,FIFO
Family Background,Antecedentes familiares
FavIcon,FavIcon
Fax,Fax
Featured Item,Producto destacado
Featured Item in Item Group,Producto destacado en el Grupo del artículo
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,Campo
Field Description,Campo Descripción
Field Mapper Detail,Detalle de campo Mapper
Field Mapper Details,Campo Detalles Mapper
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 from other forms,Campo de otras formas
"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 Data,Archivo de datos
File LIst,Lista de archivos
File List,Lista de archivos
File Name,Nombre de archivo
File URL,URL del archivo
File Uploaded Sucessfully.,Archivo subido con éxito.
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.
Filing in Additional Information about the Purchase Requisition will help you analyze your data better.,La presentación de información adicional sobre la solicitud 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 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
Filters,Filtros
Final Confirmation Date,Confirmación de la fecha límite
Financial Analytics,Financial Analytics
Financial Statements,Estados Financieros
Financial Years for books of accounts,Ejercicios económicos respecto a los libros de contabilidad
First Name,Nombre
First Responded On,Primero respondió el
Fiscal Year,Año Fiscal
Fiscal Year Details,Datos del ejercicio fiscal
Fixed Asset Account,Cuenta de Activos Fijos
Float,Flotar
Float Precision,Precision Float
Floral,Floral
"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,Fuente
Font Size,Tamaño de la Fuente
Footer,Pie de página
Footer Items,Artículos Footer
For All Users,Para todos los usuarios
For Buying,Para la compra de
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 Links, use define linked","Para los enlaces, use definir vinculado"
For Production,Para Producción
For Reference Only.,Sólo de referencia.
For Selling,Para la venta de
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 opening invoice entry, this date will reflect in the period-wise aging report.","Para abrir el registro de facturas, esta fecha se reflejará en el informe del período sabio envejecimiento."
For ranges,Para los rangos de
For reference,Para referencia
For reference only.,Sólo para referencia.
"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"
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
Friday,Viernes
From Company,De Compañía
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 DocType,De DocType
From Employee,Del Empleado
From Field,Del Campo
From PR Date,Desde la fecha PR
From Package No.,De Paquete No.
From Table,De la Tabla
Frozen,Congelado
Full Name,Nombre Completo
Fully Billed,Totalmente Anunciada
Fully Completed,Totalmente Completada
GL Control,GL control
GL Entry,GL entrada
GL Entry: Debit or Credit amount is mandatory for ,Entrada GL: cantidad de débito o crédito es obligatoria para
GL Mapper,GL Mapper
GL Mapper Detail,GL Detalle Mapper
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 Purchase Requests (MRP) and Production Orders.,Generar Ordenes de Compra (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 Advances Paid,Cómo anticipos pagados
Get Advances Received,Cómo anticipos recibidos
Get Current Stock,Obtener Stock actual
Get Items,Obtener elementos
Get Last Purchase Rate,Cómo Tarifa de Último
Get Non Reconciled Entries,Consigue entradas para no conciliadas
Get Open Sales Order,Recibe órdenes de venta abierto
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 Tax Detail,Cómo detalle de impuestos
Get Taxes and Charges,Obtener Impuestos y Cargos
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 the template of the Attendance for which you want to import in CSV (Comma seperated values) format.Fill data in the template. Save the template in CSV format.All attendance dates inbetween 'Attendance From Date' and 'Attendance To Date' will come in the template with employees list.,Obtener la plantilla de la Asistencia para el que desea importar en formato CSV (valores separada por comas) format.Fill datos en la plantilla. Guarde la plantilla en formato CSV asistencia format.All data &#39;Asistencia De Date&#39; entre medio y &quot;asistencia hasta la fecha&quot; vendrá en la plantilla con la lista de empleados.
"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."
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.
Grade,Grado
Graduate,Licenciado
Grand Total,Gran Total
Grand Total (Export),Total general (Exportación)
Grand Total (Import),Total general (Import)
Grand Total*,Total general *
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 By,Agrupar por
Group or Ledger,Grupo o Ledger
Groups,Grupos
HR,HR
HTML,HTML
HTML / Banner that will show on the top of product list.,HTML / Banner que se mostrará en la parte superior de la lista de productos.
"HTML print formats for quotes, invoices etc","Formatos HTML impresión de cotizaciones, facturas, etc"
Half Day,Medio Día
Half Yearly,Semestral
Half-yearly,Semestral
Has Batch No,Tiene Lote n º
Has Child Node,Tiene nodo secundario
Has Serial No,No tiene de serie
Header,Encabezamiento
Heading,Título
Heading Font,La partida de letra
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
Helper for managing return of goods (sales or purchase),Ayudante para la gestión de devolución de mercancías (compra o venta)
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! You seem to be using the wrong template. \				Click on 'Download Template' button to get the correct template.,Hey! Usted parece estar utilizando el modelo equivocado. \ Haga clic en el botón &quot;Descargar plantilla&quot; para obtener la plantilla correcta.
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 In Company,Historia In Company
Hold,Mantener
Holiday,Fiesta
Holiday Block List,Holiday lista de bloqueo
Holiday Block List Allow,Lista Casas Bloquear Permitir
Holiday Block List Allowed,Holiday Lista de bloqueo animales
Holiday Block List Date,Bloque de vacaciones Lista Fecha
Holiday Block List Dates,Las fechas de vacaciones de listas de bloqueo
Holiday Block List Name,Bloque de vacaciones Lista de Nombres
Holiday List,Holiday lista
Holiday List Name,Holiday Nombre de la lista
Holidays,Vacaciones
Home,Casa
Home Control,Página principal Control
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
Human Resources Home,Recursos Humanos Home
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
IGHelp,IGHelp
II,II
III,III
IN,EN
INV,INV
INV/10-11/,INV/10-11 /
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 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, 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 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
Image,Imagen
Image View,Ver imagen
Implementation Partner,Aplicación Socio
Import,Importar
Import Date Format ,Importar formato de fecha
Import Log,Importar sesión
Import Log1,Importar Registro1
Import data from spreadsheet (csv) files,Importar datos de hojas de cálculo (CSV)
Important dates and commitments in your project life cycle,Fechas importantes y compromisos en el ciclo de vida del proyecto
Imports,Importaciones
In Dialog,En diálogo
In Filter,En Filter
In 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 (Export),En las palabras (Exportación)
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 (Import),En las palabras (Import)
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 Words(Import),En las palabras (Import)
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."
Inactive,Inactivo
Incentives,Incentivos
Incharge Name,InCharge Nombre
Income,Ingresos
Income Account,Cuenta de ingresos
Income Year to Date,Los ingresos año a la fecha
Incoming,Entrante
Incoming Mail Setting,Configuración de correo entrante
Incoming Rate,Tasa entrante
Incoming Time,Tiempo entrantes
Incoming quality inspection.,Inspección de calidad entrante.
Indent,Sangrar
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 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
Institute / Conducted By,Instituto / Conducido por los
Instructions,Instrucciones
Int,Int
Interested,Interesado
Internal,Interno
Intro HTML,Intro HTML
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 Email Address,Correo electrónico no es válido
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 PL Account,Es Cuenta PL
Is POS,Es el punto de venta
Is Primary Address,Es la dirección primaria
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 Shipping Address,Es la dirección de envío
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
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 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 Price,Artículo Precio
Item Prices,Precios de los artículos
Item Quality Inspection Parameter,Calidad Inspección Tema Parámetro
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 ,Elemento Detalle 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: ',Artículo: &quot;
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
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 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 ventas. Lleve un registro de Leads, citas, etc órdenes de venta 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.
Keep a track on communications regarding this Quotation. This will help you remember earlier communications in case the Customer comes back again,Mantenga un registro de las comunicaciones relativas a esta cita. Esto le ayudará a recordar anteriores comunicaciones en caso de que el cliente se vuelve otra vez
Key,Clave
Key Performance Area,Área Clave de Performance
Key Responsibility Area,Área de Responsabilidad Key
Knowledge Base,Base de conocimientos
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 Modified On,Last Modified On
Last Name,Apellido
Last Purchase Rate,Tarifa de Último
Last Update,Última actualización
Last Update By,Ultima actualización por
Latest Updates,Las últimas novedades
Lato,Lato
Lead,Conducir
Lead Details,Plomo Detalles
Lead Lost,El plomo Perdido
Lead Name,Plomo Nombre
Lead Owner,El plomo Propietario
Lead Ref,El plomo Ref
Lead 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 Purchase 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 solicitud de compra al seleccionar 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 Balance Before Application,Deja Saldo antes de la aplicación
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 can be approved by users with Role, ""Leave Approver""","Deje puede ser aprobado por los usuarios con rol, &quot;Deja Aprobador&quot;"
Ledger,Libro mayor
Left,Izquierda
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Entidad Legal / auxiliar con un gráfico separado de las cuentas pertenecientes a la Organización.
Letter Head,Carta Head
Letter Head Image,Carta de imagen Head
Letter Head Name,Carta Nombre Head
Letter heads for print,Cabezas de la letra para impresión
Level,Nivel
"Level 0 is for document level permissions, higher levels for field level permissions.","El nivel 0 es para los permisos de nivel de documento, mayores niveles de permisos a nivel de campo."
Lft,Lft
Link,Enlace
Link to other pages in the side bar and next section,Enlace a otras páginas en el bar de al lado y en la sección siguiente
Linked With,Vinculada con
List,Lista
List items that form the package.,Lista de tareas que forman el paquete.
"List of Item Groups to be shown in ""All Products"" menu - in the sequence wanted and with number of indents (left spacing to show a tree effect).",Lista de los grupos de artículos que se muestran en &quot;Todos los productos&quot; menú - en el orden deseado y con el número de guiones (espaciado izquierda para mostrar un efecto de árbol).
List of companies (not customers / suppliers),Lista de las empresas (no clientes / proveedores)
List of holidays.,Lista de los días festivos.
List of patches executed,Lista de parches ejecutados
List of records in which this document is linked,Lista de los registros en los que está vinculado este documento
List 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
Location,Ubicació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
Login Page,La página de inicio
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
MTN Details,MTN Detalles
Mail Footer,Correo pie de página
Mail Password,Mail Contraseña
Mail Port,Mail Port
Mail Server,Servidor de correo
Main Reports,Informes Principales
Main Section,Sección principal
Maintain same rate throughout purchase cycle,Mantener el mismo ritmo durante todo el ciclo de compra
Maintenance,Mantenimiento
Maintenance Date,Mantenimiento Fecha
Maintenance Details,Detalles de Mantenimiento
Maintenance Schedule,Programa de mantenimiento
Maintenance Schedule Detail,Mantenimiento Detalle Horario
Maintenance Schedule Item,Mantenimiento elemento de programación
Maintenance 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 Credit Note,Hacer Nota de Crédito
Make Debit Note,Hacer Nota de Débito
Make Difference Entry,Hacer Entrada Diferencia
Make Excise Invoice,Hacer Factura Impuestos Especiales
Make Stock Entry,Hacer de la entrada
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 numbering series,Gestione la numeración de serie
Manage sales or purchase returns,Administrar las ventas o devoluciones de compras
Mandatory,Obligatorio
"Mandatory if Stock Item is ""Yes""",Punto Obligatorio de si es &quot;Sí&quot;
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 Home,Fabricación Inicio
Manufacturing Quantity,Fabricación Cantidad
Map,Mapa
Margin,Margen
Marital Status,Estado civil
Markdown Reference,Markdown Referencia
Market Segment,Sector de mercado
Married,Casado
Mass Mailing,Mass Mailing
Master,Maestro
Master Name,Maestro Nombre
Master Type,Type Master
Masters,Masters
Mat Detail No,Mat Detalle Desierto
Match,Partido
Match Id,Coincidir ID
Match non-linked Invoices and Payments.,Coincidir no vinculados Facturas y Pagos.
Material Issue,Material de Emisión
Material Receipt,Recibo de Materiales
Material Transfer,Transferencia de material
Materials,Materiales
Materials Required (Exploded),Materiales necesarios (despiece)
Materials Requirement Planning (MRP),Materiales planificación de necesidades (MRP)
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
Merge,Unir
Merge Warehouses,Combinar Almacenes
Merge With,Combinar con
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
Message when Cond. False,Mensaje cuando Cond. Falso
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
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
Modules Setup,Módulos de configuración
Monday,Lunes
Month,Mes
Monthly,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
Multi Ledger Report Detail,Múltiples Ledger Informe detallado
Multiple Item Prices,Los precios de varios artículos
Mupltiple Item prices.,Precios Mupltiple artículo.
My Company,Mi Empresa
My Settings,Mis Opciones
NL-,NL-
Name,Nombre
Name Case,Nombre del caso
Name as entered in Sales Partner master,Nombre tal como aparece en maestro socio de ventas
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 Purchase Requisition,Nombre de la persona que ha solicitado para la solicitud de compra
Naming,Nombrar
Naming Series,Nombrar Series
Naming Series Options,Nombrar Opciones de serie
Negative balance is not allowed for account ,Saldo negativo no se permite 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 (Import),Total neta (Import)
Net Total*,* Total Neto
Net Weight,Peso neto
Net Weight UOM,UOM Peso neto
Net Weight of each Item,Peso neto de cada artículo
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 Leaves Allocated,Nueva Hojas Asignado
New Leaves Allocated (In Days),Las hojas nuevas asignado (en días)
New Name,Nuevo nombre
New Password,Nueva contraseña
New Projects,Nuevos Proyectos
New Purchase Orders,Nuevas órdenes de compra
New Purchase Receipts,Nuevos recibos de compra
New Purchase Requests,Las nuevas solicitudes 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 Update,Nueva Actualización
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
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 Action,Ninguna acción
No Communication tagged with this ,No hay comunicación etiquetado con este
No Copy,No hay copia
No Permission,Sin Permisos
No Permission to ,No tiene permiso para
No Permissions set for this criteria.,No hay permisos establecidos para este criterio.
No User Properties found.,No encontró Propiedades del usuario.
No of Requested SMS,N º de SMS solicitados
No of Sent SMS,N º de SMS enviados
No of Visits,N º de Visitas
No records tagged.,No hay registros marcados.
"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: 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,No se permite
Not allowed for: ,No permitido:
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: Email will not be sent to disabled users,Nota: El correo electrónico no será enviado a los usuarios con discapacidad
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 Re-order,Notificar por correo electrónico en la Re-order
Number Format,Formato de los números
O+,O +
O-,O-
OPPT,OPPT
Ocean,Océano
Old Parent,Padres Antiguo
Old Style Reports,Informes Old Style
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."
One or multiple Sales Order no which generated this Purchase Requisition,Una o ninguna múltiples órdenes de venta que generó esta solicitud de compra
Only Allow Edit For,Sólo Permitir editar para
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 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
Operator,Operador
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 No,No Opportunity
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 Qty,Cantidad Pedido
Ordered Quantity,Cantidad ordenada
Orders released for production.,Los pedidos a producción.
Organization,Organización
Original Message,Mensaje original
Other,Otro
Other Details,Otros detalles
Other Income Detail,Detalle de otros ingresos
Out going mail server and support ticket mailbox,Dirigirse hacia el servidor de correo y buzón de ticket de soporte
Out of AMC,Fuera de AMC
Out of Warranty,Fuera de la Garantía
Outgoing,Saliente
Outgoing Mail Server,Servidor de correo saliente
Outgoing Mails,Los correos salientes
Outstanding Amount,Monto Pendiente
Outstanding cannot be less than zero. \				 	Please match exact outstanding.,"Pendiente no puede ser menor que cero. \ Por favor, destacado partido exacto."
Outstanding for Voucher ,Destaca por Bono
Over Heads,Sobre las cabezas de
Overhead,Gastos generales
Overload Query,Sobrecarga de consulta
Overwrite,Sobrescribir
Owned,Propiedad
P.O. Date,PO Fecha
P.O. No,PO No
PAN Number,Número PAN
PF No.,PF No.
PF Number,Número PF
PI/2011/,PI/2011 /
PIN,PIN
PO,Correos
PO Date,PO Fecha
PO No,PO No
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
Packed Quantity,Cantidad Embalado
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
Page,Página
Page Break,Salto de página
Page HTML,Página HTML
Page Len,Página Len
Page Name,Nombre página
Page Role,Página Papel
Page content,Contenido de la página
Page not found,Página no encontrada
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 BOM,Padres BOM
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 Doc Type,Padres Tipo Doc.
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
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
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 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 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
Payroll Setup,Nómina de configuración
Pending,Pendiente
Pending Review,Pendientes de revisión
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. <p>For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to receive 110 units</p>,"Porcentaje que están autorizados a recibir o entregar más en contra de la cantidad pedida. <p> Por ejemplo: Si usted ha pedido 100 unidades. y su asignación es 10%, entonces se le permite recibir 110 unidades </p>"
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 Control,Permiso de Control
Permission Engine,Permiso de motor
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
Permissions will be based on this DocType,Permisos se basa en este tipo de documento
Person,Persona
Person To Be Contacted,Persona de contacto
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
Pin Code,Pin Code
Pincode,Código PIN
Place of Issue,Lugar de Emisión
Plan for scheduled maintenance contracts.,Plan de contratos de mantenimiento programadas.
Planned Qty,Cantidad de Planificación
Planned Quantity,Cantidad planificada
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 check,"Por favor, compruebe"
Please click on another report from the menu.,"Por favor, haga clic en otro informe en el menú."
Please enter Bill Date,Por favor introduzca la fecha de facturación
Please enter valid ,"Por favor, introduzca válido"
Please save the Newsletter before sending.,"Por favor, guarde el boletín antes de enviarlo."
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: ,"Por favor, seleccione:"
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 valid,"Por favor, especifique una dirección válida"
Plot Control,Parcela de control
Point of Sale,Punto de Venta
Point-of-Sale Setting,Point-of-Sale Marco
Points,Puntos
Post Graduate,Postgrado
Post Topic,Publicar Tema
Posting Date,Fecha de Publicación
Posting Time,Hora de publicación
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."
Prefix,Prefijo
Present,Presente
Prevdoc DocType,Prevdoc DocType
Prevdoc Doctype,Prevdoc Doctype
Preview,Avance
Previous Work Experience,Experiencia laboral previa
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*,Lista de precios * Evaluar
Price List and Currency,Lista de precios y de divisas
Price Lists and Rates,Listas de precios y tarifas
Primary,Primario
Print Format,Formato de impresión
Print Heading,Imprimir Encabezado
Print Hide,Imprimir Ocultar
Print Width,Ancho de impresión
Print Without Amount,Imprimir sin Importe
Priority,Prioridad
Private,Privado
Process,Proceso
Process Payroll,Proceso de Nómina
Produced Quantity,Cantidad producida
Product,Producto
Product Categories,Categorías de Productos
Product Category for website,Categoría de productos para el sitio web
Product Enquiry,Consulta de producto
Product Group,Grupo de productos
"Product Groups that are listed on the website. The first product group from this list will be listed by default on the ""Products Page""",Categoría de producto que aparecen en el sitio web. El grupo de primer producto de esta lista se enumeran de forma predeterminada en la &quot;Página de Productos&quot;
Product Settings,Configuración del producto
Production,Producción
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 Settings,Productos Settings
"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 Control,Perfil de control
Profile Defaults,Predeterminados del perfil
Profile Represents a User in the system.,Representa un perfil de usuario en el sistema.
Program / Seminar Title,Programa / Seminario de Título
Project,Proyecto
Project Activity,Actividad del Proyecto
Project Activity Update,Actualización del Proyecto de Actividad
Project Control,Proyecto de Control
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 Tasks,Tareas 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
Projected Qty,Cantidad proyectada
Projects,Proyectos
Projects Home,Home Proyectos
Prompt email sending to customers and suppliers,Solicitar el envío de correo electrónico a clientes y proveedores
Prompt for Email on Submission of,Preguntar por correo electrónico en la presentación de
Properties,Propiedades
Property,Propiedad
Property Setter,Propiedad Setter
Property Setter overrides a standard DocType or Field property,"Setter propiedad, se reemplaza una propiedad estándar de tipo de documento o Campo"
Property Type,Tipo de Inmueble
Provide email id registered in company,Proporcionar ID de correo electrónico registrada en la compañía
Public,Público
Published,Publicado
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 Opportunity Detail,Tire Detalle de Oportunidades
Pull Payment Entries,Tire de las entradas de pago
Pull Purchase Order Details,Tire Detalles de órdenes de compra
Pull Quotation Items,Tire Artículos Presupuesto
Pull Sales Order Items,Tire de artículos de órdenes de venta
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
Pur Order,Pur Orden
Pur Receipt,Pur Recibo
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 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 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 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 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 Request,Solicitud de compra
Purchase Request Date,Compra Fecha de Solicitud
Purchase Request Detail No,Detalle Solicitud de Compra No
Purchase Request For Warehouse,Solicitud de compra para el almacén
Purchase Request Item,Compra Solicitar Artículo
Purchase Request No,Solicitud de Compra No
Purchase Requisition Details,Compra Detalles requisiciones
Purchase Requisition No,Compra Requisición No
Purchase Return,Comprar Volver
Purchase Returned,Compra Devuelto
Purchase Returns,Devoluciones de compras
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
QA Inspection,QA Inspección
QA No,No QA
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 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 debería ser igual a la cantidad de fabricación.
Quarter,Trimestre
Quarterly,Trimestral
Query,Pregunta
Query Options,Opciones de consulta
Query Report,Consulta de informe
Question,Cuestión
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 No,Cotización No
Quotation No.,Cotización No.
Quotation Sent,Presupuesto enviado
Quotation To,PRESUPUESTO a
Quotation no against which this Sales Order is made ,Cotización no contra el que se hizo este pedido de ventas
Quotes to Leads or Customers.,Cotizaciones a clientes potenciales o clientes.
Raise Exception,Levante Excepción
Raise Production Order,Levante orden de producción
Raise Purchase Request,Elevar solicitud de compra
Raise Purchase Request when stock reaches re-order level,Levante Solicitud de compra cuando el stock llega a re-ordenar nivel
Raised By,Raised By
Raised By (Email),Raised By (correo electrónico)
Random,Azar
Range,Alcance
Rate,Velocidad
Rate ,Velocidad
Rate Of Materials Based On,Tasa de materiales basados ​​en
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
Rate*,* Evaluar
Raw Material Details,Detalles de materias primas
Raw Material Item Code,Materia Prima Código del artículo
Raw Materials Supplied Cost,Materias primas suministradas Costo
Re-Calculate Values,Vuelva a calcular los valores
Re-Order Level,Re-Order Nivel
Re-Order Qty,Re-Order 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
Recalculate,Recalcular
Recd Quantity,Cantidad RECD
Receivables,Cuentas por cobrar
Receivables Group,Deudores Grupo
Received Date,Fecha de recepción
Received Qty,Cantidad recibida
Receiver List,Receptor Lista
Receiver Name,Nombre del receptor
Receiver Parameter,Receptor de parámetros
Recent,Reciente
Recipient,Beneficiario
Recipients,Destinatarios
Reconciliation Data,Reconciliación de Datos
Reconciliation HTML,Reconciliación HTML
Reconciliation JSON,Reconciliación JSON
Recurring Id,Id recurrente
Recurring Invoice,Factura Recurrente
Recurring Type,Tipo recurrente
Ref Code,Ref. Código
Ref Doc should be submitted?,Ref. Doc. debe presentar?
Ref DocType,Ref DocType
Ref Name,Ref. Nombre
Ref Rate,Precio ref
Ref Rate ,Precio ref
Ref Rate*,Ref * Tarifa
Ref SQ,Ref SQ
Ref Type,Tipo de referencia
Reference,Referencia
Reference Date,Fecha de referencia
Reference DocType Key,Referencia DocType Key
Reference Docname Key,Referencia DocNombre Key
Reference Name,Referencia Nombre
Reference Number,Referencia
Reference Type,Tipo de referencia
Refresh,Refrescar
Registration Details,Detalles de registro
Registration Info,Registro de Información
Reject HTML,Rechazar HTML
Rejected,Rechazado
Rejected Quantity,Cantidad Rechazada
Rejected Serial No,No Rechazado serie
Rejected Warehouse,Almacén Rechazado
Related Page,Página Relacionada
Relation,Relación
Relieving Date,Aliviar Fecha
Remark,Observación
Remarks,Observaciones
Remove,Quitar
Remove Bookmark,Retire Bookmark
Rename,Rebautizar
Rename Tool,Cambiar el nombre de la herramienta
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 Date,Fecha del informe
Report Hide,Informe Ocultar
Report Name,Nombre del informe
Report Saved,Informe guardado
Report Script,Reporte de secuencia de comandos
Report Server Script,Informe script del servidor
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
Required By,Requerido por la
Required Date,Fecha requerida
Required Qty,Cantidad necesaria
Required only for sample item.,Se requiere sólo para el tema de la muestra.
Required raw materials issued to the supplier for producing a sub - contracted item.,Requeridos materias primas emitidas al proveedor para producir un sub - ítem contratado.
Reseller,Revendedores
Reserved Quantity,Cantidad reservada
Reserved Warehouse,Reservado Almacén
Resignation Letter Date,Renuncia Fecha Carta
Resolution,Resolución
Resolution Date,Resolución Fecha
Resolution Details,Detalles de la resolución
Resolved By,Resuelto por
Restrict IP,Restringir IP
Restrict submission rights based on amount,Restringir el derecho de presentación basado en la cantidad
Restrict user from this IP address only. Multiple IP addresses can be added by separating with commas. Also accepts partial IP addresses like (111.111.111),Restringir el usuario desde esta dirección IP. Varias direcciones IP se pueden agregar al separar con comas. También acepta parciales direcciones IP similares (111.111.111)
Restricting By User,Restricción por usuario
Retailer,Detallista
Return Date,Fecha de regreso
Return Type,Devuelto
Returned Qty,Cantidad devuelta
Review Date,Fecha de revisión
Rgt,Rgt
Right,Derecho
Role,Papel
Role Name,Rol Nombre
Roles,Roles
Roles HTML,Roles HTML
Rounded Total,Total redondeado
Rounded Total (Export),Total redondeado (Exportación)
Row,Fila
Row #,Fila #
Row # ,Fila #
Rule Definition,Definición de regla
Rule Name,Nombre de la regla
Rule Priority,Regla de prioridad
Rule Status,Regla Estado
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"
Run,Ejecutar
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 Receiver,SMS Receiver
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 Detail ,Detalle del 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 Browser,Ventas Browser
Sales Browser Control,Ventas control de explorador
Sales Common,Sales comunes
Sales Dashboard,Sales Dashboard
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 Message,Ventas Mensaje Factura
Sales Invoice No,Ventas factura n º
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 Orders Pending To Be Delivered,Órdenes de venta pendientes de entrega
Sales Orders Pending to be Delivered,Órdenes de venta pendientes de entrega
Sales Partner,Sales Partner
Sales Partner Details,Ventas Detalle interlocutor
Sales Partner Name,Denominación de venta Socio
Sales Partner Target,Sales Target Socio
Sales Person,Sales Person
Sales Person Name,Nombre de la persona de ventas
Sales Person Targets,Objetivos de ventas Persona
Sales Rate,Ventas Precio
Sales Return,Ventas Retorno
Sales Returns,Devoluciones de ventas
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 and Purchase Return Item,Venta y Compra de artículo de vuelta
Sales and Purchase Return Items,Ventas y comprar artículos de Retorno
Sales and Purchase Return Tool,Herramienta de ventas y devolución de compra
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
Sample Size,Tamaño de la muestra
Sanctioned Amount,Importe sancionado
Sandbox,Arenero
Saturday,Sábado
Save,Ahorrar
Schedule,Programar
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 Type,Tipo de secuencia
Script to attach to all web pages.,Script para unir a todas las páginas web.
Search,Buscar
Search Criteria,Criterios de Búsqueda
Search Fields,Campos de búsqueda
Search Help,Búsqueda Ayuda
Seasonality for setting budgets.,La estacionalidad para el establecimiento de los presupuestos.
Section Break,Salto de sección
Security Settings,Configuración de seguridad
Segment Name,Segmento Nombre
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 Form,Seleccione la Forma
Select Items from Delivery Note,Seleccionar elementos de la nota de entrega
Select Items from Purchase Order,Seleccionar elementos de orden de compra
Select Items from Purchase Receipt,Seleccionar elementos de recibo de compra
Select Items from Sales Order,Seleccionar elementos de órdenes de venta
Select PR,Seleccione PR
Select Print Format,Seleccione Formato de impresión
Select Print Heading,Seleccione Imprimir Encabezado
Select Purchase Request,Seleccione Solicitud de Compra
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 Shipping Address,Seleccione dirección de envío
Select Supplier Quotation,Seleccione Cita Proveedor
Select Terms and Conditions,Seleccione Términos y Condiciones
Select Transaction,Seleccione Transaction
Select Type,Seleccione el tipo de
Select User or Property to start.,Seleccionar usuario o propiedad para comenzar.
Select account head of the bank where cheque was deposited.,Seleccione cabeza cuenta del banco donde cheque fue depositado.
Select company name first.,Seleccione el nombre de la empresa en primer lugar.
Select name of Customer to whom project belongs,Seleccione el nombre del cliente al que pertenece proyecto
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
Selected Attendance date will comes in the attendance template.,Asistencia fecha seleccionada se presenta en la plantilla de la asistencia.
"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 Home,Venta de la casa
Send,Enviar
Send Autoreply,Enviar respuesta automática
Send Email,Enviar correo
Send From,Enviar desde
Send Me A Copy,Enviarme una copia
"Send Newsletters to your contacts, leads.","Enviar boletines a sus contactos, clientes potenciales."
Send SMS,Enviar SMS
Send To,Enviar a un
"Send an email to users of role ""Material Manager"" and ""Purchase Manager"" when re-order level is crossed.",Enviar un correo electrónico a los usuarios de &quot;Administrador de Material&quot; papel y &quot;Administrador de compra&quot; cuando re-ordenar nivel se cruza.
Send automatic emails to Contacts on Submitting transactions.,Enviar correos electrónicos automáticos en Contactos de Envío de transacciones.
"Send bulk SMS to leads, customers, contacts","Envíe SMS a granel a clientes potenciales, clientes, contactos"
Send mass SMS to your contacts,Envíe SMS masivos a sus contactos
Send regular summary reports via Email.,Enviar informes resumidos periódicos por correo electrónico.
Send to this list,Enviar a esta lista
Sender,Remitente
Sender Name,Nombre del remitente
"Sending newsletters is not allowed for Trial users, \				to prevent abuse of this feature.","Envío de boletines no se permite a los usuarios de prueba, \ para evitar el abuso de esta función."
Sent Mail,Correo enviado
Sent On,Enviado en
Sent Quotation,Presupuesto enviado
Separate production order will be created for each finished good item.,Para la producción por separado se crea para cada ítem buen acabado.
Serial No,Número de orden
Serial No Details,Detalles N º de serie
Serial No Service Contract Expiry,Número de orden de servicio de caducidad del contrato
Serial No Status,Serial No Estado
Serial No Warranty Expiry,Número de serie Garantía de caducidad
Serialized Item: ',Artículo serializado: &#39;
Series,Serie
Series Detail,Serie Detalle
Series List for this Transaction,Series de lista para esta transacción
Series Options,Opciones de serie
Server,Servidor
Server Script,Servidor de secuencias de comandos
Service Address,Dirección del Servicio
Service Person,Servicio Person
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 From Image,Set De Imagen
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Conjunto de objetos inteligentes Group-presupuestos en este Territorio. También puede incluir la estacionalidad mediante el establecimiento de la distribución.
Set Login and Password if authentication is required.,"Establecer inicio de sesión y contraseña, si se requiere autenticación."
Set New Password,Establecer nueva contraseña
Set Value,Establecer valor
"Set a new password and ""Save""",Establezca una contraseña nueva y &quot;Guardar&quot;
Set default values for entry,Establecer valores por defecto para la entrada
Set default values for users (also used for permissions).,Establecer valores predeterminados para los usuarios (también se usa para los permisos).
Set multiple numbering series for transactions,Establecer varias series de numeración para las transacciones
Set permissions on transactions / masters,Establecer permisos en las transacciones / maestros
Set prefix for numbering series on your transactions,Establecer prefijo de numeración de serie en sus transacciones
Set targets Item Group-wise for this Sales Person.,Establecer metas grupo que tienen el artículo de esta persona de ventas.
Set the POP3 email settings to pull emails directly from a mailbox and create Support Tickets,Establezca la configuración de correo electrónico POP3 para extraer los correos electrónicos directamente desde un buzón de correo y crear Tickets de Soporte
Set workflow rules.,Establezca reglas de flujo de trabajo.
"Set your background color, font and image (tiled)","Establezca su color de fondo, tipo de letra y la imagen (mosaico)"
"Set your outgoing mail SMTP settings here. All system generated notifications, emails will go from this mail server. If you are not sure, leave this blank to use ERPNext servers (emails will still be sent from your email id) or contact your email provider.","Establezca la configuración de correo SMTP salientes aquí. Todo el sistema genera notificaciones, correos electrónicos irá desde este servidor de correo. Si no está seguro, deje este campo en blanco para utilizar servidores ERPNext (correos electrónicos seguirán siendo enviados a su correo electrónico de identificación) o póngase en contacto con su proveedor de correo electrónico."
Setting Account Type helps in selecting this Account in transactions.,Tipo de Ajuste de cuentas ayuda en la selección de esta cuenta en las transacciones.
Settings for About Us Page.,Ajustes para Nosotros Pagina.
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 Product Catalog on the website,Ajustes de catálogo de productos en el sitio web
Settings for Product Catalog on the website.,Ajustes de catálogo de productos en el sitio web.
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 fonts and background.,Configuración de fuentes y el fondo.
"Setup of top navigation bar, footer and logo.","Configuración de la barra de navegación superior, pie de página y el logotipo."
Setup outgoing SMS via your bulk SMS provider,Configuración de SMS salientes a través de su proveedor de SMS a granel
Setup to pull emails from support email account,Configuración para extraer mensajes de correo electrónico desde la cuenta de correo electrónico de apoyo
Ship To,Enviamos
Shipping Address,Dirección de envío
Shipping Address Name,Nombre de embarque Dirección
Shipping Details,Detalles del envío
Short biography for website and other publications.,Breve biografía de la página web y otras publicaciones.
Shortcut,Atajo
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Mostrar &quot;En Stock&quot; o &quot;no está en stock&quot;, basada en el stock disponible en este almacén."
Show / Hide Modules,Mostrar / Ocultar Módulos
Show Details,Mostrar detalles
Show Filters,Mostrar Filtros
Show Price in Website (if set),Mostrar Precio en Sitio Web (si está configurado)
Show Print First,Mostrar Imprimir Primera
Show a slideshow at the top of the page,Mostrar una presentación de diapositivas en la parte superior de la página
Show in Website,Mostrar en el sitio web
Show rows with zero values,Mostrar filas con valores iguales a cero
Show this slideshow at the top of the page,Ver este vídeo en la parte superior de la página
"Show, hide modules","Mostrar, ocultar módulos"
Showing only for,Mostrando sólo para
Signature,Firma
Signature to be appended at the end of every email,Firma que se adjunta al final de cada correo electrónico
Simplify entry forms by disabling features,Simplificar los formularios de inscripción mediante la desactivación de funciones
Single,Solo
Single unit of an Item.,Una sola unidad de un elemento.
Sky,Cielo
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
Snow,Nieve
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.
Sort By,Ordenado por
Sort Order,Orden de Clasificación
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;"
Special Page Settings,Configuración de Página Especial
Specification Details,Detalles Especificaciones
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
Startup,Inicio
State,Estado
State Name,Estado Nombre
States,Estados
Static Parameters,Parámetros estáticos
Status,Estado
Status must be one of ,Estado debe ser uno de
Statutory info and other general information about your Supplier,Información legal y otra información general acerca de su Proveedor
Stock,Valores
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 Home,Inicio de la
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 Reconciliation,De la Reconciliación
Stock Reconciliation file not uploaded,Foto de archivo de la Reconciliación no cargado
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 level frozen up to this date, nobody can do / modify entry except authorized person","Nivel de existencias congeladas hasta la fecha, nadie puede hacer / modificar entrada excepto persona autorizada"
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
Success,Éxito
Suggestion,Sugerencia
Suggestions,Sugerencias
Sunday,Domingo
Sunny,Soleado
Supplier,Proveedor
Supplier (vendor) name as entered in supplier master,Proveedor (vendedor) Nombre tal como aparece en Maestro de proveedores
Supplier Address,Proveedor Dirección
Supplier Details,Detalles del producto
Supplier Intro,Proveedor Intro
Supplier Master created by ,Maestro de proveedores creada por
Supplier Name,Nombre del proveedor
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 Type,Proveedor Tipo
Supplier Warehouse,Proveedor Almacén
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 Home,Asistencia y descargas
Support Password,Soporte contraseña
Support Ticket,Ticket de soporte
Support Ticket Mail Settings,Apoyo ajustes de la ficha Correo
Support queries from customers via email or website.,Apoyo a las consultas de los clientes a través de correo electrónico o página web.
Symbol,Símbolo
Sync Inbox,Bandeja de entrada Sync
Sync Support Mails,Sincronizar correos de apoyo
System,Sistema
System Console,La consola del sistema
System Defaults,Valores predeterminados 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 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.
Table,Mesa
Table Field,Tabla de campo
Table Mapper Detail,Tabla Detalle Mapper
Table Mapper Details,Detalles Mesa Mapper
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
Task Id,Tarea Id
Task Name,Nombre de tarea
Tasks,Tareas
Tasks belonging to this Project.,Las tareas que pertenecen a este proyecto.
Tax,Impuesto
Tax Amount,Importe del impuesto
Tax Calculation,Cálculo de 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 (Import),Los impuestos y cargos adicionales (Import)
Taxes and Charges Calculation,Los impuestos y cargos de cálculo
Taxes and Charges Deducted,Los impuestos y gastos deducidos
Taxes and Charges Deducted (Import),Los impuestos y gastos deducidos (Import)
Taxes and Charges Total,Los impuestos y cargos totales
Taxes and Charges Total*,* Impuestos y cargos totales
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 HTML,Términos y Condiciones HTML
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 Targets,Objetivos del Territorio
TerritoryHelp,TerritoryHelp
Test,Prueba
Test Data,Datos de Prueba
Test Date,Fecha del Examen
Test Email Id,Prueba de Identificación del email
Test Link,Prueba de enlace
Test Select,Seleccione Test
Test Text,Prueba de Texto
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 corrected in the system.,La fecha en la que la entrada actual se corrige en el sistema.
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 factura generado automáticamente por ejemplo, 05, 28, etc"
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 quantity for the Purchase Request when the stock goes below re-order level.,La cantidad de la solicitud de compra cuando la población está por debajo de reordenar nivel.
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 system will generate a Purchase Request automatically when stock quantity goes below re-order level in warehouse of type ""Stores"" or ""Reserved Warehouse"".",El sistema generará una solicitud de compra de forma automática cuando la cantidad de existencias es inferior a re-ordenar nivel en el depósito de tipo &quot;tiendas&quot; o &quot;almacén reservada&quot;.
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.
Theme,Tema
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 Item Group represents ""products.html""",Este grupo de elementos representa &quot;products.html&quot;
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 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 With"" 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. Sustituirá a todos los eslabones de esta bodega por &quot;Combinar Con&quot; almacén. Después de la fusión puede eliminar este almacén, como el nivel de stock para este almacén será cero."
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 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 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 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
Timesheet,Parte de horas
Timesheet By,Por parte de horas
Timesheet Date,Fecha de parte de horas
Timesheet Detail,Detalle de parte de horas
Timesheet Details,Detalles del parte de horas
Timesheet for tasks.,Parte de horas para las tareas.
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 Date,Conocer
To Discuss,Para discutir
To Do,Para hacer
To DocType,Para DOCTYPE
To Field,Al campo
To PR Date,Conocer PR
To Package No.,Para Paquete No.
To Reply,Para Responder
To Table,Para la tabla
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 Quotation against Opportunity, Select Opportunity No. and click on 'Pull Opportunity Details' ","Para crear Cotización contra Opportunity, seleccione No. oportunidades y haga clic en &#39;Detalles de la oportunidad pull &quot;"
"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 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 import attendance data, click on ""Add"" button, select the saved CSV file and click on ""Upload"".Select the date format as attendance date format in CSV file.Click on ""Import"".","Para importar los datos de asistencia, haga clic en el botón &quot;Agregar&quot;, seleccione el archivo CSV guardado y haga clic en &quot;Upload&quot;. Seleccione el formato de fecha en formato de fecha en formato CSV asistencia file.Click en &quot;Importar&quot;."
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 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, Purchase 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 compra del artículo, 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 Bar,Bar Top
Top Bar Background,Fondo de la barra superior
Top Bar Item,Bar Producto Top
Top Bar Items,Los productos principales Bar
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 +Tax,Total + impuestos
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 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 (Actual),Horas totales (real)
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,Total de Impuestos
Total Tax Amount,Monto Total de Impuestos
Total Tax*,* Total de Impuestos
Total Taxes and Charges,Total de Impuestos y Cargos
Total days in month,Número total de días en el mes
Total in words,Total en palabras
Totals,Totales
Track Quotations received from Suppliers.,Seguimiento de citas recibidas de los proveedores.
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 stock from one warehouse to another.,Traslado de stock de un almacén a otro.
Transition Rules,Reglas de Transición
Transporter Info,Transportador Info
Transporter Name,Transportador Nombre
Transporter lorry number,Transportador número camión
Trash,Papelera
Trash Control,Control de Basura
Trash Reason,Trash Razón
Tree of item classification,Árbol de la clasificación del artículo
Trend Analyzer,Tendencia Analizador
Trend Analyzer Control,Trend Control Analizador
Trial Balance,Balance de Comprobación
Tropic,Trópico
Tuesday,Martes
Type,Tipo
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
Types of warehouse,Tipos de almacén
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
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
Unread Messages,Los mensajes no leídos
Unscheduled,No programada
Unsubscribe,Darse de baja
Unsubscribed,No suscrito
Update,Actualizar
Update Clearance Date,Actualizado Liquidación
Update Delivery Date,Actualización de Fecha de Entrega
Update Field,Actualizar campos
Update PR,Actualizar PR
Update Sales Order,Actualización de órdenes de venta
Update Series,Actualización de la Serie
Update Series Number,Actualización Número de Serie
Update Stock,Actualización de almacen
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.
Updates,Actualizaciones
Updates HTML,Actualizaciones HTML
Upload Attachment,Subir adjunto
Upload Attendance Data,Subir los datos de asistencia
Upload HTML,Sube HTML
Upload a file,Subir un archivo
Upload attendance,Sube asistencia
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.
Upper Income,Ingresos más altos
Urgent,Urgente
Use Multi-Level BOM,Utilice Multi-Level BOM
Use SSL,Usar SSL
User,Usuario
User Cannot Create,El usuario no puede crear
User Cannot Search,El usuario no puede buscar
User ID,ID de usuario
User Image,Imagen del usuario
User Name,Nombre de usuario
User Properties,Propiedades del usuario
User Remark,Usuario Comentario
User Remark will be added to Auto Remark,Observación de usuario se añadirá a Auto Observación
User Tags,Nube de etiquetas
User Type,Tipo de usuario
User must always select,Usuario siempre debe seleccionar
User not allowed entry in the Warehouse,No se permite la entrada del usuario en el almacén de
UserRole,UserRole
Username,Nombre de usuario
Users,Usuarios
Users Voted,Los usuarios Votado
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
Users with this role are allowed to do / modify stock entry before frozen date,Los usuarios con este rol pueden ver / modificar los valores antes de la fecha de entrada congelado
Utilities,Utilidades
Utility,Utilidad
Valid Upto,Válido Hasta que
Validation Logic,Lógica de validación
Valuation,Valuación
Valuation Control,Evaluación de Control
Valuation Method,Método de valoración
Valuation Rate,Valoración de tipo
Valuation and Total,Valoración y Total
Value,Valor
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
WIP Monitor,WIP monitor
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 Type,Depósito de tipo
Warehouse User,Almacén del usuario
Warehouse Users,Usuarios Almacén
Warehouse where you are maintaining stock of rejected items,Almacén donde usted está manteniendo un balance de los artículos rechazados
Warn,Advertir
Warning,Advertencia
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
Webforms,WebForms
Website,Sitio web
Website Description,Descripción del sitio
Website Home,Website Home
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 Price List,Website Lista de precios
Website Product Categories,Categorías sitio web del producto
Website Product Category,Sitio web Categoría de producto
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 (%)
"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.
White,Blanco
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
With Operations,Con operaciones
Work Done,Trabajo realizado
Work In Progress,Trabajo en curso
Workflow,Flujo de trabajo
Workflow Action,Acción de flujo de trabajo
Workflow Action Detail,Detalle de Acción de flujo de trabajo
Workflow Action Details,Detalles de flujo de trabajo de acción
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 Engine,Workflow Engine
Workflow Name,Nombre del flujo de trabajo
Workflow Rule,Flujo de trabajo de la Regla
Workflow Rule Detail,Detalle de la regla de flujo de trabajo
Workflow Rule Details,Datos Workflow Rule
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.
Workfow,Workfow
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
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 make a delivery note from multiple sales orders. Select sales orders one by one and click on the button below.,Usted puede hacer una nota de entrega de los pedidos de ventas múltiples. Seleccione las órdenes de venta de uno en uno y haga clic en el botón de abajo.
You can make a purchase order from multiple Purchase Requests. Select Purchase Requests one by one and click on the button below.,Usted puede hacer una orden de compra de varias Ordenes de Compra. Seleccione Ordenes de Compra uno por uno y haga clic en el botón de abajo.
You can make a purchase order from multiple Supplier Quotations. Select Supplier Quotations one by one and click on the button below.,Usted puede hacer una orden de compra de cotizaciones de proveedores múltiples. Seleccione Citas Proveedor de uno en uno y haga clic en el botón de abajo.
You can make a purchase receipt from multiple purchase orders. Select purchase orders one by one and click on the button below.,Usted puede hacer un recibo de compra a partir de órdenes de compra múltiples. Seleccione las órdenes de compra de uno en uno y haga clic en el botón de abajo.
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 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 cannot apply for a leave on the following date because it is blocked,Usted no puede solicitar una licencia en la siguiente fecha porque está bloqueado
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á!
[],[]
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
and,y
arrow-down,flecha hacia abajo
arrow-left,flecha izquierda
arrow-right,flecha derecha
arrow-up,flecha hacia arriba
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
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.
dashboard,salpicadero
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:
download,descargar
download-alt,download-alt
"e.g. 0.5, 2.5 etc","por ejemplo, 0,5, 2,5, etc"
"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"
"e.g. Office, Billing, Shipping","Oficina por ejemplo, facturación, envío"
edit,editar
eg. Cheque Number,por ejemplo. Número de Cheque
eject,expulsar
english,Inglés
envelope,sobre
equal,igual
español,español
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
greater than,más que
greater than equal,mayor o igual
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
hdd,hdd
headphones,auriculares
heart,corazón
home,casa
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 not a Stock Item,no es un elemento de serie
is not allowed.,no está permitido.
italic,itálico
leaf,hoja
less than,menos que
less than equal,menos de igual
lft,lft
list,lista
list-alt,lista-alt
lock,bloquear
magnet,imán
map-marker,mapa del marcador
minus,menos
minus-sign,signo menos
mm-dd-yyyy,dd-mm-aaaa
mm/dd/yy,mm / dd / aa
mm/dd/yyyy,mm / dd / aaaa
move,mover
music,música
nederlands,nederlands
not equal,no igual
not within Fiscal Year,no en el año fiscal
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
print,imprimir
qrcode,qrcode
question-sign,pregunta-sign
question-view,pregunta-view
questions,preguntas
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
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 dropped,que se cayó
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
српски,српски
العربية,العربية
हिंदी,हिंदी
தமிழ்,தமிழ்
