 (Half Day),(Medio día)
 and year: ,y el año:
""" does not exists","""No existe"
%  Delivered,Entregado %
% Amount Billed,% Importe Anunciado
% Billed,% Anunciado
% Completed,% completado
% Delivered,Entregado %
% Installed,instalado %
% Received,% Recibido
% of materials billed against this Purchase Order.,% De materiales facturados contra esta orden de compra .
% of materials billed against this Sales Order,% De materiales facturados contra esta Orden de Venta
% of materials delivered against this Delivery Note,% De los materiales entregados en contra de esta nota de entrega
% of materials delivered against this Sales Order,% De los materiales entregados en contra de esta Orden de Venta
% of materials ordered against this Material Request,% De materiales ordenados en contra de esta demanda de materiales
% of materials received against this Purchase Order,% Del material recibido en contra de esta orden de compra
'Actual Start Date' can not be greater than 'Actual End Date',"' Fecha de Comienzo real ' no puede ser mayor que ' Actual Fecha de finalización """
'Based On' and 'Group By' can not be same,"""Basado en "" y "" Agrupar por "" no puede ser el mismo"
'Days Since Last Order' must be greater than or equal to zero,' Días desde el último pedido ' debe ser mayor o igual a cero
'Entries' cannot be empty,' Comentarios ' no puede estar vacío
'Expected Start Date' can not be greater than 'Expected End Date',"'Fecha de inicio esperaba' no puede ser mayor que ' esperada Fecha de finalización """
'From Date' is required,"' A partir de la fecha "" se requiere"
'From Date' must be after 'To Date',"' A partir de la fecha "" debe ser después de ' A Fecha '"
'Has Serial No' can not be 'Yes' for non-stock item,"""No tiene de serie 'no puede ser ' Sí ' para la falta de valores"
'Notification Email Addresses' not specified for recurring invoice,"«Notificación Direcciones de correo electrónico "" no especificadas para la factura recurrente"
'Profit and Loss' type account {0} not allowed in Opening Entry,""" Pérdidas y Ganancias "" tipo de cuenta {0} no se permite la entrada con apertura"
'To Case No.' cannot be less than 'From Case No.',' Para el caso núm ' no puede ser inferior a ' De Caso No. '
'To Date' is required,""" Hasta la fecha "" se requiere"
'Update Stock' for Sales Invoice {0} must be set,"'Actualización de la "" factura de venta para {0} debe ajustarse"
* Will be calculated in the transaction.,* Se calculará en la transacción.
1 Currency = [?] FractionFor e.g. 1 USD = 100 Cent,"1 moneda = [?] Fracción  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 del artículo sabia cliente y para efectuar búsquedas en ellos en función de su uso de código de esta opción
"<a href=""#Sales Browser/Customer Group"">Add / Edit</a>","<a href=""#Sales Browser/Customer grupo""> Añadir / Editar < / a>"
"<a href=""#Sales Browser/Item Group"">Add / Edit</a>","<a href=""#Sales Browser/Item grupo""> Añadir / Editar < / a>"
"<a href=""#Sales Browser/Territory"">Add / Edit</a>","<a href=""#Sales Browser/Territory""> Añadir / Editar < / a>"
"<h4>Default Template</h4><p>Uses <a href=""http://jinja.pocoo.org/docs/templates/"">Jinja Templating</a> and all the fields of Address (including Custom Fields if any) will be available</p><pre><code>{{ address_line1 }}&lt;br&gt;{% if address_line2 %}{{ address_line2 }}&lt;br&gt;{% endif -%}{{ city }}&lt;br&gt;{% if state %}{{ state }}&lt;br&gt;{% endif -%}{% if pincode %} PIN:  {{ pincode }}&lt;br&gt;{% endif -%}{{ country }}&lt;br&gt;{% if phone %}Phone: {{ phone }}&lt;br&gt;{% endif -%}{% if fax %}Fax: {{ fax }}&lt;br&gt;{% endif -%}{% if email_id %}Email: {{ email_id }}&lt;br&gt;{% endif -%}</code></pre>","<h4> defecto plantilla </ h4>  <p> Usos <a href=""http://jinja.pocoo.org/docs/templates/""> Jinja plantillas </ a> y todos los campos de la Dirección ( incluyendo campos personalizados en su caso) estará disponible </ p>  <pre> <code> {{}} address_line1 <br>  {% if address_line2%} {{}} address_line2 <br> { endif% -%}  {{city}} <br>  {% if estado%} {{Estado}} {% endif <br> -%}  {% if%} pincode PIN: {{pincode}} {% endif <br> -%}  {{país}} <br>  {% if%} de teléfono Teléfono: {{phone}} {<br> endif% -%}  {% if%} fax Fax: {{fax}} {% endif <br> -%}  {% if%} email_ID Email: {{}} email_ID <br> ; {% endif -%}  </ code> </ pre>"
A Customer Group exists with same name please change the Customer name or rename the Customer Group,"Existe un Grupo de Clientes con el mismo nombre, por favor cambie el nombre del Cliente o cambie el nombre del Grupo de Clientes"
A Customer exists with same name,Existe un Cliente con el mismo nombre
A Lead with this email id should exist,Una Iniciativa con este correo electrónico debería existir
A Product or Service,Un Producto o Servicio
A Supplier exists with same name,Existe un Proveedor con el mismo nombre
A symbol for this currency. For e.g. $,"Un símbolo para esta moneda. Por ejemplo, $"
AMC Expiry Date,AMC Fecha de caducidad
Abbr,Abrev
Abbreviation cannot have more than 5 characters,Abreviatura no puede tener más de 5 caracteres
Above Value,Valor Superior
Absent,Ausente
Acceptance Criteria,Criterios de Aceptación
Accepted,Aceptado
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Cantidad Aceptada + Rechazada debe ser igual a la cantidad Recibida por el Artículo {0}
Accepted Quantity,Cantidad Aceptada
Accepted Warehouse,Almacén Aceptado
Account,Cuenta
Account Balance,Balance de la Cuenta
Account Created: {0},Cuenta Creada: {0}
Account Details,Detalles de la Cuenta
Account Head,cuenta Head
Account Name,Nombre de la Cuenta
Account Type,Tipo de Cuenta
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Balance de la cuenta ya en Crédito, no le está permitido establecer 'Balance Debe Ser' como 'Débito'"
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Balance de la cuenta ya en Débito, no le está permitido establecer ""Balance Debe Ser"" como ""Crédito"""
Account for the warehouse (Perpetual Inventory) will be created under this Account.,Cuenta para el almacén ( Inventario Permanente ) se creará en esta Cuenta.
Account head {0} created,Cabeza de cuenta {0} creado
Account must be a balance sheet account,La cuenta debe ser una cuenta de balance
Account with child nodes cannot be converted to ledger,Cuenta con nodos hijos no se puede convertir a cuentas del libro mayor
Account with existing transaction can not be converted to group.,Cuenta con transacción existente no se puede convertir al grupo.
Account with existing transaction can not be deleted,Cuenta con transacción existente no se puede eliminar
Account with existing transaction cannot be converted to ledger,Cuenta con la transacción existente no se puede convertir en el libro mayor
Account {0} cannot be a Group,Cuenta {0} no puede ser un Grupo
Account {0} does not belong to Company {1},Cuenta {0} no pertenece a la Compañía {1}
Account {0} does not belong to company: {1},Cuenta {0} no pertenece a la compañía: {1}
Account {0} does not exist,Cuenta {0} no existe
Account {0} has been entered more than once for fiscal year {1},Cuenta {0} se ha introducido más de una vez para el año fiscal {1}
Account {0} is frozen,Cuenta {0} está congelada
Account {0} is inactive,Cuenta {0} está inactiva
Account {0} is not valid,Cuenta {0} no es válida
Account {0} must be of type 'Fixed Asset' as Item {1} is an Asset Item,Cuenta {0} debe ser de tipo 'Activos Fijos' porque Artículo {1} es un Elemento de Activo Fijo
Account {0}: Parent account {1} can not be a ledger,Cuenta {0}: Cuenta Padre {1} no puede ser un libro de contabilidad
Account {0}: Parent account {1} does not belong to company: {2},Cuenta {0}: Cuenta Padre {1} no pertenece a la compañía: {2}
Account {0}: Parent account {1} does not exist,Cuenta {0}: Cuenta Padre {1} no existe
Account {0}: You can not assign itself as parent account,Cuenta {0}: Usted no lo puede asignar como cuenta padre
Account: {0} can only be updated via \					Stock Transactions,Cuenta: {0} sólo puede ser actualizado a través de \ Transacciones de Inventario
Accountant,Contador
Accounting,Contabilidad
"Accounting Entries can be made against leaf nodes, called","Los comentarios de Contabilidad se pueden hacer contra los nodos hoja , llamada"
"Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.","Asiento contable congelado hasta la fecha , nadie puede hacer / modificar la entrada , excepto el roll que se especifica a continuación ."
Accounting journal entries.,Entradas de diario de contabilidad.
Accounts,Cuentas
Accounts Browser,Navegador de Cuentas
Accounts Frozen Upto,Cuentas Congeladas Hasta
Accounts Payable,Cuentas por Pagar
Accounts Receivable,Cuentas por Cobrar
Accounts Settings,Configuración de Cuentas
Active,Activo
Active: Will extract emails from ,Activo: Extraerá correos electrónicos de
Activity,Actividad
Activity Log,Registro de Actividad
Activity Log:,Registro de Actividad:
Activity Type,Tipo de Actividad
Actual,Real
Actual Budget,Presupuesto Real
Actual Completion Date,Fecha Real de Terminación
Actual Date,Fecha Real
Actual End Date,Fecha Real de Finalización
Actual Invoice Date,Fecha Real de Factura
Actual Posting Date,Fecha Real de Envío
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 Qty: Quantity available in the warehouse.,Cantidad Actual: Cantidad disponible en el almacén.
Actual Quantity,Cantidad Real
Actual Start Date,Fecha de Comienzo Real
Add,Añadir
Add / Edit Taxes and Charges,Añadir / Editar Impuestos y Cargos
Add Child,Añadir Hijo
Add Serial No,Añadir Serial No
Add Taxes,Añadir impuestos
Add Taxes and Charges,Añadir las tasas y cargos
Add or Deduct,Agregar o Deducir
Add rows to set annual budgets on Accounts.,Añadir filas para establecer los presupuestos anuales de las Cuentas .
Add to Cart,Añadir a la Cesta
Add to calendar on this date,Añadir al calendario en esta fecha
Add/Remove Recipients,Añadir / Quitar Destinatarios
Address,dirección
Address & Contact,Dirección y Contacto
Address & Contacts,Dirección y contactos
Address Desc,Dirección 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 Template,Plantilla de Dirección
Address Title,Dirección Título
Address Title is mandatory.,Dirección Título es obligatorio.
Address Type,Tipo de dirección
Address master.,Master Dirección .
Administrative Expenses,gastos de Administración
Administrative Officer,Oficial Administrativo
Advance Amount,Cantidad Anticipada
Advance amount,cantidad anticipada
Advances,insinuaciones
Advertisement,anuncio
Advertising,publicidad
Aerospace,aeroespacial
After Sale Installations,Después de la venta Instalaciones
Against,contra
Against Account,contra cuenta
Against Bill {0} dated {1},Contra Bill {0} de fecha {1}
Against Docname,contra docName
Against Doctype,contra Doctype
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 Utilidad
Against Journal Voucher,Contra Diario Voucher
Against Journal Voucher {0} does not have any unmatched {1} entry,Contra Diario Vale {0} aún no tiene parangón {1} entrada
Against Purchase Invoice,Contra la factura de compra
Against Sales Invoice,Contra la factura de venta
Against Sales Order,Contra la Orden de Venta
Against Voucher,contra Voucher
Against Voucher Type,Contra Tipo Voucher
Ageing Based On,Envejecimiento Basado En
Ageing Date is mandatory for opening entry,Envejecimiento Fecha es obligatorio para la apertura de la entrada
Ageing date is mandatory for opening entry,Fecha Envejecer es obligatorio para la apertura de la entrada
Agent,agente
Aging Date,Fecha Envejecimiento
Aging Date is mandatory for opening entry,El envejecimiento de la fecha es obligatoria para la apertura de la entrada
Agriculture,agricultura
Airline,línea aérea
All Addresses.,Todas las direcciones .
All Contact,Todo contacto
All Contacts.,Todos los contactos .
All Customer Contact,Todo cliente Contacto
All Customer Groups,Todos los Grupos de clientes
All Day,Todo el día
All Employee (Active),Todo Empleado (Activo)
All Item Groups,Todos los grupos de artículos
All Lead (Open),Todo Plomo ( abierto)
All Products or Services.,Todos los Productos o Servicios .
All Sales Partner Contact,Todo punto de venta de Contacto
All Sales Person,Todos Persona Ventas
All Supplier Contact,Todo proveedor Contactar
All Supplier Types,Todos los tipos de proveedores
All Territories,Todos los estados
"All export related fields like currency, conversion rate, export total, export grand total etc are available in Delivery Note, POS, Quotation, Sales Invoice, Sales Order etc.","Campos relacionados Todas las exportaciones como moneda , tasa de conversión , el total de las exportaciones, las exportaciones totales grand etc están disponibles en la nota de entrega , POS, cotización , factura de venta , órdenes de venta , etc"
"All import related fields like currency, conversion rate, import total, import grand total etc are available in Purchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.","Todos los ámbitos relacionados con la importación como la moneda , tasa de conversión , el total de las importaciones , la importación total de grand etc están disponibles en recibo de compra , proveedor de cotización , factura de compra , orden de compra , etc"
All items have already been invoiced,Todos los artículos que ya se han facturado
All these items have already been invoiced,Todos estos elementos ya se han facturado
Allocate,asignar
Allocate leaves for a period.,Asignar las hojas por un período .
Allocate leaves for the year.,Asignar las hojas para el año.
Allocated Amount,Monto asignado
Allocated Budget,Presupuesto asignado
Allocated amount,cantidad asignada
Allocated amount can not be negative,Monto asignado no puede ser negativo
Allocated amount can not greater than unadusted amount,Monto asignado no puede superar el importe en unadusted
Allow Bill of Materials,Permitir lista de materiales
Allow Bill of Materials should be 'Yes'. Because one or many active BOMs present for this item,"Permita que la lista de materiales debe ser ""Sí"" . Debido a que una o varias listas de materiales activos presentes para este artículo"
Allow Children,Permita que los niños
Allow Dropbox Access,Permitir Dropbox Acceso
Allow Google Drive Access,Permitir acceso Google Drive
Allow Negative Balance,Permitir saldo negativo
Allow Negative Stock,Permitir Negativo Stock
Allow Production Order,Permitir Orden de Producción
Allow User,Permitir al usuario
Allow Users,Permitir que los usuarios
Allow the following users to approve Leave Applications for block days.,Permitir a los usuarios siguientes para aprobar solicitudes Dejar de días de bloque.
Allow user to edit Price List Rate in transactions,Permitir al usuario editar Precio de lista Cambio en las transacciones
Allowance Percent,Porcentaje de Asignación
Allowance for over-{0} crossed for Item {1},Previsión por exceso de {0} cruzados por artículo {1}
Allowance for over-{0} crossed for Item {1}.,Previsión por exceso de {0} cruzado para el punto {1}.
Allowed Role to Edit Entries Before Frozen Date,Animales de funciones para editar las entradas antes de Frozen Fecha
Amended From,Modificado Desde
Amount,cantidad
Amount (Company Currency),Importe ( Compañía de divisas )
Amount Paid,Total pagado
Amount to Bill,La cantidad a Bill
An Customer exists with same name,Existe un cliente con el mismo nombre
"An Item Group exists with same name, please change the item name or rename the item group","Existe un grupo de elementos con el mismo nombre , por favor, cambie el nombre del artículo , o cambiar el nombre del grupo de artículos"
"An item exists with same name ({0}), please change the item group name or rename the item","Existe un elemento con el mismo nombre ({0} ) , cambie el nombre del grupo de artículos o cambiar el nombre del elemento"
Analyst,analista
Annual,anual
Another Period Closing Entry {0} has been made after {1},Otra entrada Período de Cierre {0} se ha hecho después de {1}
Another Salary Structure {0} is active for employee {0}. Please make its status 'Inactive' to proceed.,"Otra estructura salarial {0} está activo para empleado {0} . Por favor haga su estatus de "" inactivo "" para proceder ."
"Any other comments, noteworthy effort that should go in the records.","Cualquier otro comentario , notable esfuerzo que debe ir en los registros ."
Apparel & Accessories,Ropa y Accesorios
Applicability,aplicabilidad
Applicable For,aplicable para
Applicable Holiday List,Aplicable Lista Holiday
Applicable Territory,Territorio aplicable
Applicable To (Designation),Aplicables a (Denominación )
Applicable To (Employee),Aplicables a ( Empleado )
Applicable To (Role),Aplicables a (Rol )
Applicable To (User),Aplicables a (Usuario)
Applicant Name,Nombre del solicitante
Applicant for a Job.,Solicitante de empleo .
Application of Funds (Assets),Aplicación de Fondos (Activos )
Applications for leave.,Las solicitudes de licencia .
Applies to Company,Se aplica a la empresa
Apply On,Aplique En
Appraisal,evaluación
Appraisal Goal,evaluación Meta
Appraisal Goals,Objetivos de la valoración
Appraisal Template,Plantilla de evaluación
Appraisal Template Goal,Objetivo Plantilla Appraisal
Appraisal Template Title,Evaluación Plantilla Título
Appraisal {0} created for Employee {1} in the given date range,Appraisal {0} creado por Empleado {1} en el rango de fechas determinado
Apprentice,aprendiz
Approval Status,Estado de aprobación
Approval Status must be 'Approved' or 'Rejected',"Estado de aprobación debe ser "" Aprobado "" o "" Rechazado """
Approved,aprobado
Approver,aprobador
Approving Role,Aprobar Rol
Approving Role cannot be same as role the rule is Applicable To,Aprobar rol no puede ser igual que el papel de la regla es aplicable a
Approving User,Aprobar usuario
Approving User cannot be same as user the rule is Applicable To,Aprobar usuario no puede ser igual que el usuario que la regla es aplicable a
Are you sure you want to STOP ,
Are you sure you want to UNSTOP ,
Arrear Amount,mora Importe
"As Production Order can be made for this item, it must be a stock item.","Como orden de producción puede hacerse por este concepto , debe ser un elemento de serie ."
As per Stock UOM,Según Stock UOM
"As there are existing stock transactions for this item, you can not change the values of 'Has Serial No', 'Is Stock Item' and 'Valuation Method'","Como hay transacciones de acciones existentes para este artículo , no se puede cambiar los valores de ""no tiene de serie ',' Is Stock Punto "" y "" Método de valoración '"
Asset,baza
Assistant,asistente
Associate,asociado
Atleast one of the Selling or Buying must be selected,Al menos uno de la venta o compra debe seleccionar
Atleast one warehouse is mandatory,Al menos un almacén es obligatorio
Attach Image,Adjuntar imagen
Attach Letterhead,Conecte con membrete
Attach Logo,Adjunte Logo
Attach Your Picture,Adjunte su imagen
Attendance,asistencia
Attendance Date,asistencia Fecha
Attendance Details,Datos de asistencia
Attendance From Date,Asistencia De Fecha
Attendance From Date and Attendance To Date is mandatory,Asistencia Desde la fecha y Hasta la fecha asistencia es obligatoria
Attendance To Date,La asistencia anual
Attendance can not be marked for future dates,La asistencia no se puede marcar para fechas futuras
Attendance for employee {0} is already marked,Asistencia para el empleado {0} ya está marcado
Attendance record.,Registro de asistencia .
Authorization Control,control de Autorización
Authorization Rule,Regla de Autorización
Auto Accounting For Stock Settings,Auto de contabilidad para la Configuración de archivo
Auto Material Request,Solicitud de materiales Auto
Auto-raise Material Request if quantity goes below re-order level in a warehouse,Auto -raise Solicitud de material si la cantidad está por debajo de nivel de re- orden en un almacén
Automatically compose message on submission of transactions.,Componer automáticamente el mensaje en la presentación de las transacciones.
Automatically extract Job Applicants from a mail box ,
Automatically extract Leads from a mail box e.g.,"Extraer automáticamente los conductores de un buzón de correo electrónico , por ejemplo,"
Automatically updated via Stock Entry of type Manufacture/Repack,Actualiza automáticamente a través de la entrada de tipo Fabricación / Repack
Automotive,automotor
Autoreply when a new mail is received,Respuesta automática cuando se recibe un nuevo correo
Available,disponible
Available Qty at Warehouse,Disponible Cantidad en almacén
Available Stock for Packing Items,Disponible Stock de artículos de embalaje
"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 , inventario de entrada, parte de horas"
Average Age,Edad Media
Average Commission Rate,Promedio Comisión de Tarifas
Average Discount,Descuento medio
Awesome Products,Awesome Products
Awesome Services,Servicios impresionantes
BOM Detail No,Detalle BOM No
BOM Explosion Item,BOM Explosion Artículo
BOM Item,BOM artículo
BOM No,BOM No
BOM No. for a Finished Good Item,BOM N º de producto terminado artículo
BOM Operation,BOM Operación
BOM Operations,Operaciones BOM
BOM Replace Tool,BOM Replace Tool
BOM number is required for manufactured Item {0} in row {1},Se requiere el número de lista de materiales para el artículo manufacturado {0} en la fila {1}
BOM number not allowed for non-manufactured Item {0} in row {1},Número de la lista de materiales no autorizados para la partida no manufacturado {0} en la fila {1}
BOM recursion: {0} cannot be parent or child of {2},BOM recursividad : {0} no puede ser padre o hijo de {2}
BOM replaced,BOM reemplazado
BOM {0} for Item {1} in row {2} is inactive or not submitted,BOM {0} para el artículo {1} en la fila {2} está inactivo o no presentado
BOM {0} is not active or not submitted,BOM {0} no está activo o no presentado
BOM {0} is not submitted or inactive BOM for Item {1},BOM {0} no se presenta o inactivo lista de materiales para el elemento {1}
Backup Manager,Administrador de Respaldos
Backup Right Now,Respaldar Ya
Backups will be uploaded to,Respaldos serán subidos a
Balance Qty,Cantidad en Balance
Balance Sheet,Hoja de Balance
Balance Value,Valor de Balance
Balance for Account {0} must always be {1},Balance de Cuenta {0} debe ser siempre {1}
Balance must be,Balance debe ser
"Balances of Accounts of type ""Bank"" or ""Cash""","Los Balances de Cuentas de tipo ""Banco"" o ""Efectivo"""
Bank,Banco
Bank / Cash Account,Cuenta de Banco / Efectivo
Bank A/C No.,Número de Cuenta de Banco
Bank Account,Cuenta Bancaria
Bank Account No.,Número de Cuenta Bancaria
Bank Accounts,Cuentas Bancarias
Bank Clearance Summary,Resumen de Liquidación del Banco
Bank Draft,Cheque de Gerencia
Bank Name,Nombre del Banco
Bank Overdraft Account,Cuenta crédito en cuenta corriente
Bank Reconciliation,Conciliación Bancaria
Bank Reconciliation Detail,Detalle de Conciliación Bancaria
Bank Reconciliation Statement,Declaración de Conciliación Bancaria
Bank Voucher,Banco de Vales
Bank/Cash Balance,Banco / Balance de Caja
Banking,Banca
Barcode,Código de Barras
Barcode {0} already used in Item {1},Barcode {0} ya se utiliza en el elemento {1}
Based On,Basado en el
Basic,Básico
Basic Info,Información Básica
Basic Information,Datos Básicos
Basic Rate,Tasa Básica
Basic Rate (Company Currency),Basic Rate ( Compañía de divisas )
Batch,Lote
Batch (lot) of an Item.,Batch (lote ) de un elemento .
Batch Finished Date,Fecha lotes Terminado
Batch ID,ID de lote
Batch No,Lote Nro
Batch Started Date,Lotes Comienza Fecha
Batch Time Logs for billing.,Registros de tiempo de lotes para la facturación .
Batch-Wise Balance History,Batch- Wise Historial de saldo
Batched for Billing,Por lotes de facturación
Better Prospects,mejores perspectivas
Bill Date,Bill Fecha
Bill No,Bill No
Bill No {0} already booked in Purchase Invoice {1},Bill n {0} ya está reservado en Purchase Factura {1}
Bill of Material,Lista de Materiales
Bill of Material to be considered for manufacturing,Lista de materiales para ser considerado para la fabricación
Bill of Materials (BOM),Lista de Materiales (BOM )
Billable,facturable
Billed,Anunciado
Billed Amount,Monto Anunciado
Billed Amt,Billed Amt
Billing,facturación
Billing Address,Dirección de Facturación
Billing Address Name,Dirección de Facturación Nombre
Billing Status,estado de facturación
Bills raised by Suppliers.,Bills planteadas por los proveedores.
Bills raised to Customers.,Bills planteadas a los clientes.
Bin,Papelera
Bio,Bio
Biotechnology,Biotecnología
Birthday,Cumpleaños
Block Date,Bloquear Fecha
Block Days,Bloquear Días
Block leave applications by department.,Bloquee aplicaciones de permiso por departamento.
Blog Post,Entrada al Blog
Blog Subscriber,Suscriptor del Blog
Blood Group,Grupos Sanguíneos
Both Warehouse must belong to same Company,Ambos Almacenes deben pertenecer a una misma empresa
Box,Caja
Branch,Rama
Brand,Marca
Brand Name,Marca
Brand master.,Master Marca .
Brands,Marcas
Breakdown,desglose
Broadcasting,radiodifusión
Brokerage,Corretaje
Budget,Presupuesto
Budget Allocated,Presupuesto asignado
Budget Detail,Detalle del Presupuesto
Budget Details,Presupuesto detalles
Budget Distribution,Presupuesto de Distribución
Budget Distribution Detail,Detalle Presupuesto Distribución
Budget Distribution Details,Detalles Presupuesto de Distribución
Budget Variance Report,Informe de  Varianza en el Presupuesto 
Budget cannot be set for Group Cost Centers,El presupuesto no se puede establecer para Centros de costes del Grupo
Build Report,Construir Informe
Bundle items at time of sale.,Agrupe elementos en el momento de la venta.
Business Development Manager,Gerente de Desarrollo de Negocios
Buying,Compra
Buying & Selling,Compra y Venta
Buying Amount,La compra Importe
Buying Settings,La compra de Ajustes
"Buying must be checked, if Applicable For is selected as {0}","Compra debe comprobar, si se selecciona aplicable Para que {0}"
C-Form,C - Forma
C-Form Applicable,C -Form Aplicable
C-Form Invoice Detail,Detalle C -Form Factura
C-Form No,C -Form No
C-Form records,Registros C -Form
CENVAT Capital Goods,CENVAT Bienes de Capital
CENVAT Edu Cess,CENVAT Edu Cess
CENVAT SHE Cess,CENVAT SHE Cess
CENVAT Service Tax,CENVAT Tax Service
CENVAT Service Tax Cess 1,Servicio CENVAT Impuesto Cess 1
CENVAT Service Tax Cess 2,Servicio CENVAT Impuesto Cess 2
Calculate Based On,Calcular basado en
Calculate Total Score,Calcular Puntaje Total
Calendar Events,Calendario de Eventos
Call,Llamada
Calls,Llamadas
Campaign,Campaña
Campaign Name,Nombre de la campaña
Campaign Name is required,Es necesario ingresar el nombre  de la Campaña 
Campaign Naming By,Nombramiento de la Campaña Por
Campaign-.####,Campaña-.#### 
Can be approved by {0},Puede ser aprobado por {0}
"Can not filter based on Account, if grouped by Account","No se puede filtrar en función de la cuenta , si se agrupan por cuenta"
"Can not filter based on Voucher No, if grouped by Voucher","No se puede filtrar en función del número de hoja, si agrupados por Bono"
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Puede referirse fila sólo si el tipo de carga es 'On anterior Importe Fila ""o"" Anterior Fila Total """
Cancel Material Visit {0} before cancelling this Customer Issue,Cancelar material Visita {0} antes de cancelar esta edición al Cliente
Cancel Material Visits {0} before cancelling this Maintenance Visit,Cancelar Visitas Materiales {0} antes de cancelar el Mantenimiento Visita
Cancelled,Cancelado
Cancelling this Stock Reconciliation will nullify its effect.,Cancelación de esto Stock Reconciliación anulará su efecto.
Cannot Cancel Opportunity as Quotation Exists,No se puede cancelar Oportunidad como existe Cotización
Cannot approve leave as you are not authorized to approve leaves on Block Dates,"No se puede aprobar la licencia , ya que no está autorizado para aprobar las hojas en bloquear las fechas"
Cannot cancel because Employee {0} is already approved for {1},No se puede cancelar porque Empleado {0} ya está aprobado para {1}
Cannot cancel because submitted Stock Entry {0} exists,No se puede cancelar debido a la entrada Stock presentado {0} existe
Cannot carry forward {0},No se puede llevar adelante {0}
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,No se puede cambiar el año fiscal Fecha de inicio y Fecha de finalización del año fiscal una vez que el año fiscal se guarda.
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","No se puede cambiar la moneda por defecto de la empresa, porque existen operaciones existentes. Las transacciones deben ser canceladas para cambiar la moneda por defecto."
Cannot convert Cost Center to ledger as it has child nodes,"No se puede convertir de centros de coste para el libro mayor , ya que tiene nodos secundarios"
Cannot covert to Group because Master Type or Account Type is selected.,No se puede encubierta al grupo porque se selecciona Type Master o Tipo de Cuenta .
Cannot deactive or cancle BOM as it is linked with other BOMs,No se puede Desactivado o BOM cancle ya que está vinculado con otras listas de materiales
"Cannot declare as lost, because Quotation has been made.","No se puede declarar como perdido , porque la cita se ha hecho."
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',No se puede deducir cuando categoría es para ' Valoración ' o ' de Valoración y Total '
"Cannot delete Serial No {0} in stock. First remove from stock, then delete.","No se puede eliminar de serie n {0} en stock . Primero quite de la acción, a continuación, eliminar ."
"Cannot directly set amount. For 'Actual' charge type, use the rate field","No se puede establecer directamente cantidad . Para el tipo de carga ' real ' , utilice el campo Velocidad"
"Cannot overbill for Item {0} in row {0} more than {1}. To allow overbilling, please set in Stock Settings","No se puede cobrar demasiado a para el punto {0} en la fila {0} más {1}. Para permitir la facturación excesiva, ajuste en Ajustes de archivo"
Cannot produce more Item {0} than Sales Order quantity {1},No se puede producir más artículo {0} que en la cantidad de pedidos de cliente {1}
Cannot refer row number greater than or equal to current row number for this Charge type,No se puede hacer referencia número de la fila superior o igual al número de fila actual de este tipo de carga
Cannot return more than {0} for Item {1},No se puede devolver más de {0} para el artículo {1}
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,No se puede seleccionar el tipo de carga como 'On Fila Anterior Importe ' o ' En Fila Anterior integrales' dentro de la primera fila
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for valuation. You can select only 'Total' option for previous row amount or previous row total,"No se puede seleccionar el tipo de carga como 'On Fila Anterior Importe ' o ' En Fila Anterior Total "" para la valoración. Sólo puede seleccionar la opción ""Total"" para la cantidad fila anterior o siguiente de filas total"
Cannot set as Lost as Sales Order is made.,No se puede definir tan perdido como está hecha de órdenes de venta .
Cannot set authorization on basis of Discount for {0},No se puede establecer la autorización sobre la base de Descuento para {0}
Capacity,Capacidad
Capacity Units,Unidades de Capacidad
Capital Account,cuenta de Capital
Capital Equipments,Equipos de capitales
Carry Forward,llevar adelante
Carry Forwarded Leaves,Llevar Hojas reenviados
Case No(s) already in use. Try from Case No {0},Case No. (s ) ya en uso. Trate de Caso n {0}
Case No. cannot be 0,Caso No. No puede ser 0
Cash,Efectivo
Cash In Hand,Efectivo Disponible
Cash Voucher,Bono Cash
Cash or Bank Account is mandatory for making payment entry,Dinero en efectivo o cuenta bancaria es obligatoria para la toma de entrada de pago
Cash/Bank Account,Cuenta de Caja / Banco
Casual Leave,Dejar Casual
Cell Number,Número de la célula
Change UOM for an Item.,Cambie UOM para un artículo .
Change the starting / current sequence number of an existing series.,Cambie el inicio / número de secuencia actual de una serie existente .
Channel Partner,Channel Partner
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Cargo del tipo ' real ' en la fila {0} no puede ser incluido en el Punto de Cambio
Chargeable,Cobrable
Charity and Donations,Caridad y Donaciones
Chart Name,Nombre del diagrama
Chart of Accounts,Plan General de Contabilidad
Chart of Cost Centers,Gráfico de Centros de Costos
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 se repite la factura , desmarque para detener recurrente o poner fin propio Fecha"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Compruebe si necesita facturas recurrentes automáticos. Después de la presentación de 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 , mientras que 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 obligar al usuario a seleccionar una serie antes de guardar. No habrá ningún defecto si marca esta .
Check this if you want to show in website,Seleccione esta opción si desea que aparezca en el sitio web
Check this to disallow fractions. (for Nos),Active esta opción para no permitir fracciones. ( para refs )
Check this to pull emails from your mailbox,Active esta opción para tirar de correos electrónicos de su buzón
Check to activate,Compruebe para activar
Check to make Shipping Address,Seleccione para hacer ésta la de dirección de envío
Check to make primary address,Verifique que la dirección primaria
Chemical,Químico
Cheque,Cheque
Cheque Date,Cheque Fecha
Cheque Number,Número de Cheque
Child account exists for this account. You can not delete this account.,Cuenta Child existe para esta cuenta. No es posible eliminar esta cuenta.
City,Ciudad
City/Town,Ciudad / Pueblo
Claim Amount,Reclamación Importe
Claims for company expense.,Las reclamaciones por los gastos de la empresa.
Class / Percentage,Clase / Porcentaje
Classic,Clásico
Clear Table,Borrar la tabla
Clearance Date,Liquidación Fecha
Clearance Date not mentioned,Liquidación La fecha no se menciona
Clearance date cannot be before check date in row {0},Fecha de Liquidación no puede ser antes de la fecha de verificación de la fila {0}
Click on 'Make Sales Invoice' button to create a new Sales Invoice.,"Haga clic en el botón ' Hacer la factura de venta ""para crear una nueva factura de venta ."
Click on a link to get options to expand get options ,
Client,Cliente
Close Balance Sheet and book Profit or Loss.,Cerrar Balance General y el libro de pérdidas y ganancias .
Closed,Cerrado
Closing (Cr),Cierre (Cr)
Closing (Dr),Cierre (Dr)
Closing Account Head,Cierre Head Cuenta
Closing Account {0} must be of type 'Liability',Cuenta {0} de cierre debe ser de tipo ' Responsabilidad '
Closing Date,Fecha de Cierre
Closing Fiscal Year,Cerrando el Año Fiscal
Closing Qty,Cantidad de Clausura
Closing Value,Valor de Cierre
CoA Help,CoA Ayuda
Code,Código
Cold Calling,Llamadas en frío
Color,Color
Column Break,Salto de columna
Comma separated list of email addresses,Lista separada por comas de direcciones de correo electrónico separados
Comment,Comentario
Comments,Comentarios
Commercial,Comercial
Commission,comisión
Commission Rate,Comisión de Tarifas
Commission Rate (%),Comisión de Cambio (% )
Commission on Sales,Comisión de Ventas
Commission rate cannot be greater than 100,Tasa de comisión no puede ser superior a 100
Communication,comunicación
Communication HTML,Comunicación HTML
Communication History,Historia de Comunicación
Communication log.,Registro de Comunicación.
Communications,Comunicaciones
Company,Empresa
Company (not Customer or Supplier) master.,Company (no cliente o proveedor ) maestro.
Company Abbreviation,Abreviatura de la empresa
Company Details,Datos de la empresa
Company Email,Empresa Email
"Company Email ID not found, hence mail not sent","Empresa Email ID no se encuentra, por lo tanto, no envíe por correo enviado"
Company Info,Información de la empresa
Company Name,Nombre de compañía
Company Settings,Configuración de la compañía
Company is missing in warehouses {0},Compañía no se encuentra en los almacenes {0}
Company is required,Se requiere Compañía
Company registration numbers for your reference. Example: VAT Registration Numbers etc.,"Los números de registro de la empresa para su referencia . Los números de registro de IVA , etc : Ejemplo"
Company registration numbers for your reference. Tax numbers etc.,"Los números de registro de la empresa para su referencia . Números fiscales, etc"
"Company, Month and Fiscal Year is mandatory","Company, mes y del año fiscal es obligatoria"
Compensatory Off,compensatorio
Complete,Completar
Complete Setup,Instalación completa
Completed,terminado
Completed Production Orders,Órdenes de fabricación completadas
Completed Qty,"Cantidad Completada
"
Completion Date,Fecha de Terminación
Completion Status,Estado de finalización
Computer,"Computador
"
Computers,Computadoras
Confirmation Date,Confirmación Fecha
Confirmed orders from Customers.,Pedidos en firme de los clientes.
Consider Tax or Charge for,Considere impuesto ni un cargo por
Considered as Opening Balance,Considerado como balance de apertura
Considered as an Opening Balance,Considerado como un saldo inicial
Consultant,consultor
Consulting,Consuloría
Consumable,consumible
Consumable Cost,Costo de consumibles
Consumable cost per hour,Costo de consumibles por hora
Consumed Qty,consumido Cantidad
Consumer Products,Productos de Consumo
Contact,Contacto
Contact Control,Contactar con el Control
Contact Desc,Contactar con la descripción
Contact Details,Datos del Contacto
Contact Email,Correo electrónico de contacto
Contact HTML,"HTML del Contacto
"
Contact Info,Información del Contacto
Contact Mobile No,Contacto Móvil No
Contact Name,Nombre de contacto
Contact No.,Contacto No.
Contact Person,persona de Contacto
Contact Type,Tipo de contacto
Contact master.,Contacto (principal).
Contacts,Contactos
Content,Contenido
Content Type,Tipo de contenido
Contra Voucher,Contra Voucher
Contract,Contrato
Contract End Date,Fin del contrato Fecha
Contract End Date must be greater than Date of Joining,Fin del contrato Fecha debe ser mayor que Fecha de acceso
Contribution (%),Contribución (% )
Contribution to Net Total,Contribución neta total
Conversion Factor,Factor de conversión
Conversion Factor is required,Se requiere el factor de conversión
Conversion factor cannot be in fractions,Factor de conversión no puede estar en fracciones
Conversion factor for default Unit of Measure must be 1 in row {0},Factor de conversión de unidad de medida predeterminada debe ser de 1 en la fila {0}
Conversion rate cannot be 0 or 1,La tasa de conversión no puede ser 0 o 1
Convert into Recurring Invoice,Convertir en Factura Recurrente
Convert to Group,Convertir al Grupo
Convert to Ledger,Convertir a Ledger
Converted,convertido
Copy From Item Group,Copiar de Grupo Tema
Cosmetics,productos cosméticos
Cost Center,Centro de Costos
Cost Center Details,"Detalles del Centro de Costos
"
Cost Center Name,Costo Nombre del centro
Cost Center is required for 'Profit and Loss' account {0},"Se requiere de centros de coste para la cuenta "" Pérdidas y Ganancias "" {0}"
Cost Center is required in row {0} in Taxes table for type {1},Se requiere de centros de coste en la fila {0} en la tabla Impuestos para el tipo {1}
Cost Center with existing transactions can not be converted to group,Centro de costos de las transacciones existentes no se puede convertir al grupo
Cost Center with existing transactions can not be converted to ledger,Centro de costos de las transacciones existentes no se puede convertir en el libro mayor
Cost Center {0} does not belong to Company {1},Centro de coste {0} no pertenece a la empresa {1}
Cost of Goods Sold,Costo de las Ventas
Costing,Costeo
Country,País
Country Name,Nombre del país
Country wise default Address Templates,Plantillas País sabia dirección predeterminada
"Country, Timezone and Currency","País , Zona horaria y moneda"
Create Bank Voucher for the total salary paid for the above selected criteria,Cree Banco Vale para el salario total pagado por los criterios seleccionados anteriormente
Create Customer,Crear cliente
Create Material Requests,Crear solicitudes de material
Create New,Crear Nuevo
Create Opportunity,Crear Oportunidad
Create Production Orders,Crear órdenes de producción
Create Quotation,Cree Cotización
Create Receiver List,Crear Lista de receptores
Create Salary Slip,Crear nómina
Create Stock Ledger Entries when you submit a Sales Invoice,Crear Ledger entradas de archivo al momento de enviar una factura de venta
"Create and manage daily, weekly and monthly email digests.","Creación y gestión de resúmenes de correo electrónico diarias , semanales y mensuales."
Create rules to restrict transactions based on values.,Crear reglas para restringir las transacciones basadas en valores .
Created By,Creado por
Creates salary slip for above mentioned criteria.,Crea nómina de los criterios antes mencionados.
Creation Date,Fecha de Creación
Creation Document No,Creación del documento No
Creation Document Type,Tipo de creación de documentos
Creation Time,Momento de la creación
Credentials,cartas credenciales
Credit,Crédito
Credit Amt,crédito Amt
Credit Card,Tarjeta de Crédito
Credit Card Voucher,Vale la tarjeta de crédito
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
Currency,Divisa
Currency Exchange,Cambio de divisas
Currency Name,Nombre de Divisa
Currency Settings,Configuración de Moneda
Currency and Price List,Moneda y Lista de precios
Currency exchange rate master.,Maestro del tipo de cambio de divisas .
Current Address,Dirección actual
Current Address Is,Dirección actual es
Current Assets,Activo Corriente
Current BOM,BOM actual
Current BOM and New BOM can not be same,BOM actual y Nueva BOM no pueden ser iguales
Current Fiscal Year,El año fiscal actual
Current Liabilities,pasivo exigible
Current Stock,Stock actual
Current Stock UOM,Stock actual UOM
Current Value,Valor actual
Custom,Personalizar
Custom Autoreply Message,Mensaje de autorespuesta personalizado
Custom Message,Mensaje personalizado
Customer,Cliente
Customer (Receivable) Account,Cliente ( por cobrar ) Cuenta
Customer / Item Name,Nombre del cliente / artículo
Customer / Lead Address,Cliente / Dirección de plomo
Customer / Lead Name,Cliente / Nombre de plomo
Customer > Customer Group > Territory,Cliente> Grupo de Clientes> Territorio
Customer Account Head,Cuenta Cliente Head
Customer Acquisition and Loyalty,Adquisición de clientes y fidelización
Customer Address,Dirección del cliente
Customer Addresses And Contacts,Las direcciones de clientes y contactos
Customer Addresses and Contacts,Las direcciones de clientes y contactos
Customer Code,Código de Cliente
Customer Codes,Los códigos de los clientes
Customer Details,Datos del cliente
Customer Feedback,Comentarios del cliente
Customer Group,Grupo de Clientes
Customer Group / Customer,Grupo de Clientes / Clientes
Customer Group Name,Nombre del grupo al Cliente
Customer Intro,Introducción al Cliente
Customer Issue,Problema al Cliente
Customer Issue against Serial No.,Problema al cliente contra el número de serie
Customer Name,Nombre del cliente
Customer Naming By,Naming Cliente Por
Customer Service,Servicio al Cliente
Customer database.,Base de datos de clientes .
Customer is required,Se requiere al Cliente
Customer master.,Maestro de clientes .
Customer required for 'Customerwise Discount',Cliente requiere para ' Customerwise descuento '
Customer {0} does not belong to project {1},Cliente {0} no pertenece a proyectar {1}
Customer {0} does not exist,{0} no existe Cliente
Customer's Item Code,Área de clientes Código del artículo
Customer's Purchase Order Date,Orden de compra de los clientes Fecha
Customer's Purchase Order No,Área de clientes Orden de Compra No
Customer's Purchase Order Number,Número de Orden de Compra del Cliente
Customer's Vendor,Proveedor del Cliente
Customers Not Buying Since Long Time,Clientes No comprando desde hace mucho tiempo
Customerwise Discount,Customerwise Descuento
Customize,Personalizar
Customize the Notification,Personalice 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 de introducción que va como una parte de ese correo electrónico. Cada transacción tiene un texto introductorio separada.
DN Detail,Detalle DN
Daily,Diario
Daily Time Log Summary,Resumen diario Hora de registro
Database Folder ID,Base de Datos de Identificación de carpetas
Database of potential customers.,Base de datos de clientes potenciales.
Date,Fecha
Date Format,Formato de la fecha
Date Of Retirement,Fecha de la jubilación
Date Of Retirement must be greater than Date of Joining,Fecha de la jubilación debe ser mayor que Fecha de acceso
Date is repeated,Fecha se repite
Date of Birth,Fecha de nacimiento
Date of Issue,Fecha de emisión
Date of Joining,Fecha de ingreso
Date of Joining must be greater than Date of Birth,Fecha de acceso debe ser mayor que Fecha de Nacimiento
Date on which lorry started from supplier warehouse,Fecha en la que se inició desde el almacén camión proveedor
Date on which lorry started from your warehouse,Fecha en la que comenzó camión de su almacén
Dates,Fechas
Days Since Last Order,Días desde el último pedido
Days for which Holidays are blocked for this department.,Días para el cual Holidays se bloquean para este departamento .
Dealer,comerciante
Debit,débito
Debit Amt,débito Amt
Debit Note,Nota de Débito
Debit To,débito para
Debit and Credit not equal for this voucher. Difference is {0}.,Débito y Crédito no es igual para este bono. La diferencia es {0} .
Deduct,deducir
Deduction,deducción
Deduction Type,Tipo Deducción
Deduction1,Deduction1
Deductions,Deducciones
Default,defecto
Default Account,cuenta predeterminada
Default Address Template cannot be deleted,Plantilla de la dirección predeterminada no puede eliminarse
Default Amount,Default Amou
Default BOM,Por defecto la lista de materiales
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Banco de la cuenta / Cash defecto se actualizará automáticamente en el punto de venta de facturas cuando se selecciona este modo .
Default Bank Account,Cuenta bancaria por defecto
Default Buying Cost Center,Por defecto compra de centros de coste
Default Buying Price List,Por defecto Compra Lista de precios
Default Cash Account,Cuenta de Tesorería por defecto
Default Company,compañía predeterminada
Default Currency,moneda predeterminada
Default Customer Group,Grupo predeterminado Cliente
Default Expense Account,Cuenta de Gastos por defecto
Default Income Account,Cuenta de Ingresos por defecto
Default Item Group,Grupo predeterminado artículo
Default Price List,Por defecto Lista de precios
Default Purchase Account in which cost of the item will be debited.,Cuenta de Compra por defecto en la que se cargará el costo del artículo.
Default Selling Cost Center,Por defecto Venta de centros de coste
Default Settings,Configuración predeterminada
Default Source Warehouse,Origen predeterminado Almacén
Default Stock UOM,Predeterminado Stock UOM
Default Supplier,predeterminado Proveedor
Default Supplier Type,Tipo predeterminado Proveedor
Default Target Warehouse,Destino predeterminado Almacén
Default Territory,Territorio predeterminado
Default Unit of Measure,Unidad de medida predeterminada
"Default Unit of Measure can not be changed directly because you have already made some transaction(s) with another UOM. To change default UOM, use 'UOM Replace Utility' tool under Stock module.","Unidad de medida predeterminada no se puede cambiar directamente porque ya ha realizado alguna transacción ( s ) con otro UOM . Para cambiar UOM predeterminado, utilice ' UOM reemplazar utilidad ' herramienta de bajo módulo de Stock ."
Default Valuation Method,Método predeterminado de Valoración
Default Warehouse,Por defecto Almacén
Default Warehouse is mandatory for stock Item.,Por defecto Warehouse es obligatorio para stock.
Default settings for accounting transactions.,Los ajustes por defecto para las transacciones contables.
Default settings for buying transactions.,Ajustes por defecto para la compra de las transacciones .
Default settings for selling transactions.,Los ajustes por defecto para la venta de las transacciones .
Default settings for stock transactions.,Los ajustes por defecto para las transacciones bursátiles.
Defense,Defensa
"Define Budget for this Cost Center. To set budget action, see <a href=""#!List/Company"">Company Master</a>","Definir Presupuesto para este centro de coste . Para configurar la acción presupuestaria, ver <a href=""#!List/Company""> Company Maestro < / a>"
Del,Sup.
Delete,Eliminar
Delete {0} {1}?,Eliminar {0} {1} ?
Delivered,liberado
Delivered Items To Be Billed,Material que se adjunta a facturar
Delivered Qty,Entregado Cantidad
Delivered Serial No {0} cannot be deleted,Entregado de serie n {0} no se puede eliminar
Delivery Date,Fecha de Entrega
Delivery Details,Detalles de la entrega
Delivery Document No,Entrega del documento No
Delivery Document Type,Tipo de documento de entrega
Delivery Note,Nota de entrega
Delivery Note Item,Nota de entrega Artículo
Delivery Note Items,Entrega Nota Los elementos
Delivery Note Message,Nota de entrega de mensajes
Delivery Note No,Entrega Nota No
Delivery Note Required,Nota de entrega requerida
Delivery Note Trends,Tendencias de entrega Nota
Delivery Note {0} is not submitted,Nota de entrega {0} no se presenta
Delivery Note {0} must not be submitted,Nota de entrega {0} no debe ser presentado
Delivery Notes {0} must be cancelled before cancelling this Sales Order,Albaranes {0} debe ser cancelado antes de cancelar esta orden Ventas
Delivery Status,Estado del Envío
Delivery Time,Tiempo de Entrega
Delivery To,Entrega Para
Department,departamento
Department Stores,Tiendas por Departamento
Depends on LWP,Depende LWP
Depreciation,depreciación
Description,Descripción
Description HTML,Descripción HTML
Designation,designación
Designer,diseñador
Detailed Breakup of the totals,Breakup detallada de los totales
Details,Detalles
Difference (Dr - Cr),Diferencia ( Db - Cr)
Difference Account,Cuenta para la Diferencia
"Difference Account must be a 'Liability' type account, since this Stock Reconciliation is an Opening Entry","Cuenta diferencia debe ser una cuenta de tipo ' Responsabilidad ' , ya que esta Stock reconciliación es una entrada de Apertura"
Different UOM for items will lead to incorrect (Total) Net Weight value. Make sure that Net Weight of each item is in the same UOM.,UOM diferente para elementos dará lugar a incorrecto ( Total) Valor neto Peso . Asegúrese de que peso neto de cada artículo esté en la misma UOM .
Direct Expenses,Gastos Directos
Direct Income,Ingreso Directo
Disable,Inhabilitar
Disable Rounded Total,Desactivar Total Redondeado
Disabled,discapacitado
Discount  %,Descuento%
Discount %,Descuento%
Discount (%),Descuento (% )
Discount Amount,Cantidad de Descuento
"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Los campos descuento estará disponible en orden de compra, recibo de compra , factura de compra"
Discount Percentage,Porcentaje de Descuento
Discount Percentage can be applied either against a Price List or for all Price List.,Porcentaje de descuento puede ser aplicado ya sea en contra de una lista de precios o para toda la lista de precios.
Discount must be less than 100,El descuento debe ser inferior a 100
Discount(%),Descuento (% )
Dispatch,despacho
Display all the individual items delivered with the main items,Ver todas las partidas individuales se suministran con los elementos principales
Distribute transport overhead across items.,Distribuir por encima transporte a través de artículos.
Distribution,Distribución
Distribution Id,Id Distribución
Distribution Name,Nombre del Distribución
Distributor,Distribuidor
Divorced,divorciado
Do Not Contact,No entre en contacto
Do not show any symbol like $ etc next to currencies.,No volver a mostrar cualquier símbolo como $ etc junto a monedas.
Do really want to unstop production order: ,
Do you really want to STOP ,
Do you really want to STOP this Material Request?,¿De verdad quiere dejar de esta demanda de materiales?
Do you really want to Submit all Salary Slip for month {0} and year {1},¿De verdad quieres a que me envíen toda la nómina para el mes {0} y {1} años
Do you really want to UNSTOP ,
Do you really want to UNSTOP this Material Request?,¿De verdad quiere destapar esta demanda de materiales?
Do you really want to stop production order: ,
Doc Name,Nombre del documento
Doc Type,Tipo Doc.
Document Description,Descripción del Documento
Document Type,Tipo de Documento
Documents,Documentos
Domain,Dominio
Don't send Employee Birthday Reminders,No envíe Empleado Birthday Reminders
Download Materials Required,Descargar Materiales Necesarios
Download Reconcilation Data,Descarga Reconciliación de Datos
Download Template,Descargar Plantilla
Download a report containing all raw materials with their latest inventory status,Descargar un informe con todas las materias primas con su estado actual inventario
"Download the Template, fill appropriate data and attach the modified file.","Descarga la plantilla , rellenar los datos correspondientes y adjuntar el archivo modificado."
"Download the Template, fill appropriate data and attach the modified file.All dates and employee combination in the selected period will come in the template, with existing attendance records","Descarga la plantilla, rellenar los datos correspondientes y adjuntar el archivo modificado. Todas las fechas y combinaciones de empleados en el período seleccionado vendrán en la plantilla, con los registros de asistencia existentes"
Draft,Borrador
Dropbox,Dropbox
Dropbox Access Allowed,Dropbox Acceso mascotas
Dropbox Access Key,Clave de Acceso de Dropbox 
Dropbox Access Secret,Acceso Secreto de Dropbox
Due Date,Fecha de vencimiento
Due Date cannot be after {0},Fecha de vencimiento no puede ser posterior a {0}
Due Date cannot be before Posting Date,Fecha de vencimiento no puede ser anterior Fecha de publicación
Duplicate Entry. Please check Authorization Rule {0},"Duplicate Entry. Por favor, consulte Autorización Rule {0}"
Duplicate Serial No entered for Item {0},Duplicar Serial No entró a la partida {0}
Duplicate entry,Entrada Duplicada
Duplicate row {0} with same {1},Duplicar fila {0} con el mismo {1}
Duties and Taxes,Derechos e Impuestos
ERPNext Setup,Configuración ERPNext
Earliest,Primeras
Earnest Money,dinero Earnest
Earning,Ganar
Earning & Deduction,Ganar y Deducción
Earning Type,Ganar Tipo
Earning1,Earning1
Edit,editar
Edu. Cess on Excise,Edu. Cess sobre Impuestos Especiales
Edu. Cess on Service Tax,Edu. Impuesto sobre el Servicio de Impuestos
Edu. Cess on TDS,Edu. Impuesto sobre el TDS
Education,Educación
Educational Qualification,Capacitación para la Educación
Educational Qualification Details,Educational Qualification Detalles
Eg. smsgateway.com/api/send_sms.cgi,Eg . smsgateway.com / api / send_sms.cgi
Either debit or credit amount is required for {0},Se requiere ya sea de débito o crédito para la cantidad {0}
Either target qty or target amount is mandatory,Cualquiera Cantidad de destino o importe objetivo es obligatoria
Either target qty or target amount is mandatory.,Cualquiera Cantidad de destino o importe objetivo es obligatoria.
Electrical,eléctrico
Electricity Cost,Costes de electricidad
Electricity cost per hour,Costo de electricidad por hora
Electronics,electrónica
Email,Email
Email Digest,boletín por correo electrónico
Email Digest Settings,Configuración de correo electrónico Digest
Email Digest: ,
Email Id,Identificación del email
"Email Id where a job applicant will email e.g. ""jobs@example.com""","Email Id donde un solicitante de empleo enviará por correo electrónico , por ejemplo, "" jobs@example.com """
Email Notifications,Notificaciones por correo electrónico
Email Sent?,Email Sent ?
"Email id must be unique, already exists for {0}","Identificación E-mail debe ser único , ya existe para {0}"
Email ids separated by commas.,ID de correo electrónico separados por comas.
"Email settings to extract Leads from sales email id e.g. ""sales@example.com""","Configuración de correo electrónico para extraer potenciales de ventas email Identificación del ejemplo "" sales@example.com """
Emergency Contact,Contacto de Emergencia
Emergency Contact Details,Detalles de Contacto de Emergencia
Emergency Phone,Teléfono de emergencia
Employee,empleado
Employee Birthday,Cumpleaños del Empleado
Employee Details,Detalles del Empleado
Employee Education,Educación Empleado
Employee External Work History,Empleado externa Historial de trabajo
Employee Information,Información del Empleado
Employee Internal Work History,Empleado Historial de trabajo interno
Employee Internal Work Historys,Empleado trabajo interno historys
Employee Leave Approver,Empleado Dejar aprobador
Employee Leave Balance,Dejar Empleado Equilibrio
Employee Name,Nombre del empleado
Employee Number,Número de empleados
Employee Records to be created by,Registros de empleados a ser creados por
Employee Settings,Configuración del Empleado
Employee Type,Tipo de empleo
"Employee designation (e.g. CEO, Director etc.).","Designación del empleado ( por ejemplo, director general, director , etc.)"
Employee master.,Maestro de empleados .
Employee record is created using selected field. ,Registro de empleado se crea utilizando el campo seleccionado.
Employee records.,Registros de empleados .
Employee relieved on {0} must be set as 'Left',"Empleado relevado en {0} debe definirse como ""izquierda"""
Employee {0} has already applied for {1} between {2} and {3},Empleado {0} ya se ha aplicado para {1} entre {2} y {3}
Employee {0} is not active or does not exist,Empleado {0} no está activo o no existe
Employee {0} was on leave on {1}. Cannot mark attendance.,Empleado {0} estaba de permiso en {1} . No se puede marcar la asistencia.
Employees Email Id,Empleados Email Id
Employment Details,Detalles de Empleo
Employment Type,Tipo de empleo
Enable / disable currencies.,Activar / desactivar las monedas .
Enabled,Activado
Encashment Date,cobro Fecha
End Date,Fecha de finalización
End Date can not be less than Start Date,Fecha de finalización no puede ser inferior a Fecha de Inicio
End date of current invoice's period,Fecha de finalización del periodo de facturación actual
End of Life,Final de la Vida
Energy,Energía
Engineer,Ingeniero
Enter Verification Code,Ingrese el Código de Verificación
Enter campaign name if the source of lead is campaign.,Ingrese nombre de la campaña si la fuente del plomo es la campaña .
Enter department to which this Contact belongs,Introduzca departamento al que pertenece este Contacto
Enter designation of this Contact,Introduzca designación de este contacto
"Enter email id separated by commas, invoice will be mailed automatically on particular date","Introduzca ID de correo electrónico separados por comas, factura le será enviada automáticamente en particular, la fecha"
Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Escriba artículos y Cantidad planificada para los que desea elevar las órdenes de producción o descargar la materia prima para su análisis.
Enter name of campaign if source of enquiry is campaign,Escriba 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 de URL estáticas aquí (Ej. sender = ERPNext , nombre de usuario = 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 virtud del cual la Cuenta Head se creará para este proveedor
Enter url parameter for message,Introduzca el parámetro url para el mensaje
Enter url parameter for receiver nos,Introduzca el parámetro url para el receptor nos
Entertainment & Leisure,Entretenimiento y Ocio
Entertainment Expenses,Gastos de Entretenimiento
Entries,Entradas
Entries against ,
Entries are not allowed against this Fiscal Year if the year is closed.,"Las entradas no están permitidos en contra de este año fiscal , si el año está cerrado."
Equity,equidad
Error: {0} > {1},Error: {0} > {1}
Estimated Material Cost,Costo estimado del material
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Incluso si hay varias reglas de precios con mayor prioridad, se aplican entonces siguientes prioridades internas:"
Everyone can read,Todo el mundo puede leer
"Example: ABCD.#####If series is set and Serial No is not mentioned in transactions, then automatic serial number will be created based on this series. If you always want to explicitly mention Serial Nos for this item. leave this blank.",". Ejemplo: ABCD # # # # #  Si la serie se establece y No de serie no se menciona en las transacciones, número de serie y luego automática se creará sobre la base de esta serie. Si siempre quiere mencionar explícitamente los números de serie para este artículo. déjelo en blanco."
Exchange Rate,Tipo de Cambio
Excise Duty 10,Impuestos Especiales 10
Excise Duty 14,Impuestos Especiales 14
Excise Duty 4,Impuestos Especiales 4
Excise Duty 8,Impuestos Especiales 8
Excise Duty @ 10,Impuestos Especiales @ 10
Excise Duty @ 14,Impuestos Especiales @ 14
Excise Duty @ 4,Impuestos Especiales @ 4
Excise Duty @ 8,Impuestos Especiales @ 8
Excise Duty Edu Cess 2,Impuestos Especiales Edu Cess 2
Excise Duty SHE Cess 1,Impuestos Especiales SHE Cess 1
Excise Page Number,Número Impuestos Especiales Página
Excise Voucher,vale de Impuestos Especiales
Execution,ejecución
Executive Search,Búsqueda de Ejecutivos
Exemption Limit,Límite de Exención
Exhibition,exposición
Existing Customer,cliente existente
Exit,salida
Exit Interview Details,Detalles Exit Interview
Expected,esperado
Expected Completion Date can not be less than Project Start Date,Fecha prevista de finalización no puede ser inferior al de inicio del proyecto Fecha
Expected Date cannot be before Material Request Date,Lanzamiento no puede ser anterior material Fecha de Solicitud
Expected Delivery Date,La fecha del alumbramiento
Expected Delivery Date cannot be before Purchase Order Date,Fecha prevista de entrega no puede ser anterior Orden de Compra Fecha
Expected Delivery Date cannot be before Sales Order Date,Fecha prevista de entrega no puede ser anterior Fecha de órdenes de venta
Expected End Date,Fecha de finalización prevista
Expected Start Date,Fecha prevista de inicio
Expense,gasto
Expense / Difference account ({0}) must be a 'Profit or Loss' account,"Cuenta de gastos / Diferencia ({0}) debe ser una cuenta de 'utilidad o pérdida """
Expense Account,cuenta de Gastos
Expense Account is mandatory,Cuenta de Gastos es obligatorio
Expense Claim,Reclamación de Gastos
Expense Claim Approved,Reclamación de Gastos Aprobado
Expense Claim Approved Message,Mensaje de Gastos Aprobado
Expense Claim Detail,Detalle de Gastos
Expense Claim Details,Detalles de la Reclamación de gastos
Expense Claim Rejected,Reclamación de Gastos Rechazados
Expense Claim Rejected Message,Mensaje de Gastos Rechazados
Expense Claim Type,Tipo de Gastos
Expense Claim has been approved.,Cuenta de gastos ha sido aprobado.
Expense Claim has been rejected.,Cuenta de gastos ha sido rechazada.
Expense Claim is pending approval. Only the Expense Approver can update status.,Cuenta de gastos está pendiente de aprobación . Sólo el aprobador de gastos se puede actualizar el estado .
Expense Date,Gasto Fecha
Expense Details,Detalles de Gastos
Expense Head,Jefe de gastos
Expense account is mandatory for item {0},Cuenta de gastos es obligatorio para el elemento {0}
Expense or Difference account is mandatory for Item {0} as it impacts overall stock value,"Cuenta de gastos o Diferencia es obligatorio para el elemento {0} , ya que los impactos valor de las acciones en general"
Expenses,gastos
Expenses Booked,gastos Reservados
Expenses Included In Valuation,Gastos dentro de la valoración
Expenses booked for the digest period,Gastos reservado para el período de digestión
Expiry Date,Fecha de caducidad
Exports,Exportaciones
External,externo
Extract Emails,extraer correos electrónicos
FCFS Rate,FCFS Cambio
Failed: ,Error:
Family Background,antecedentes familiares
Fax,Fax
Features Setup,Características del programa de instalación
Feed,Fuente
Feed Type,Tipo de Fuente
Feedback,feedback
Female,Femenino
Fetch exploded BOM (including sub-assemblies),Fetch BOM explotado (incluyendo subconjuntos )
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","El campo disponible en la nota de entrega , la cita , la factura de venta , órdenes de venta"
Files Folder ID,Carpeta de archivos ID
Fill the form and save it,Llene el formulario y guárdelo
Filter based on customer,Filtro basado en cliente
Filter based on item,Filtrar basada en el apartado
Financial / accounting year.,Ejercicio / contabilidad.
Financial Analytics,Financial Analytics
Financial Services,Servicios Financieros
Financial Year End Date,Ejercicio Fecha de finalización
Financial Year Start Date,Ejercicio Fecha de Inicio
Finished Goods,productos terminados
First Name,Nombre
First Responded On,Primero respondió el
Fiscal Year,Año Fiscal
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Año fiscal Fecha de Inicio y Fin de ejercicio Fecha ya están establecidas en el Año Fiscal {0}
Fiscal Year Start Date and Fiscal Year End Date cannot be more than a year apart.,Año fiscal Fecha de Inicio y Fin de ejercicio La fecha no puede ser más que un año de diferencia.
Fiscal Year Start Date should not be greater than Fiscal Year End Date,Año fiscal Fecha de inicio no debe ser mayor de Fin de ejercicio Fecha
Fixed Asset,Activos Fijos
Fixed Assets,Activos Fijos
Follow via Email,Siga a través de correo electrónico
"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.","La siguiente tabla se muestran los valores si los artículos son sub - contratado. Estos valores se pueden recuperar desde el maestro de la "" Lista de materiales "" de los sub - elementos contratados."
Food,Comida
"Food, Beverage & Tobacco","Alimentos, Bebidas y Tabaco"
"For 'Sales BOM' items, Warehouse, Serial No and Batch No will be considered from the 'Packing List' table. If Warehouse and Batch No are same for all packing items for any 'Sales BOM' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","Para los artículos 'BOM Ventas', bodega, Número de Serie y Lote No se considerará a partir de la tabla de ""Packing List"". Si Almacén y lotes No son las mismas para todos los elementos de embalaje para cualquier artículo 'BOM Sales', esos valores se pueden introducir en el cuadro principal del artículo, los valores se copiarán a la mesa ""Packing List""."
For Company,Para la empresa
For Employee,Para Empleados
For Employee Name,En Nombre del Empleado
For Price List,Por paquete Precio
For Production,Para Producción
For Reference Only.,Sólo como referencia .
For Sales Invoice,Para la factura de venta
For Server Side Print Formats,Para formatos de impresión del lado del servidor
For Supplier,Para Proveedor
For Warehouse,para el almacén
For Warehouse is required before Submit,Para se requiere antes de Almacén Enviar
"For e.g. 2012, 2012-13","Por ejemplo, 2012 , 2012-13"
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 comodidad de los clientes , estos códigos se pueden utilizar en formatos impresos como facturas y notas de entrega"
Fraction,fracción
Fraction Units,Unidades de fracciones
Freeze Stock Entries,Helada Stock comentarios
Freeze Stocks Older Than [Days],Congele Acciones Older Than [ días ]
Freight and Forwarding Charges,Freight Forwarding y Cargos
Friday,Viernes
From,Desde
From Bill of Materials,De la lista de materiales
From Company,De Compañía
From Currency,De moneda
From Currency and To Currency cannot be same,Desde moneda y moneda no puede ser el mismo
From Customer,De cliente
From Customer Issue,De Emisión Cliente
From Date,Desde la fecha
From Date cannot be greater than To Date,Desde La fecha no puede ser mayor que la fecha
From Date must be before To Date,Desde la fecha debe ser antes de la fecha
From Date should be within the Fiscal Year. Assuming From Date = {0},De fecha debe estar dentro del año fiscal. Suponiendo Desde Fecha = {0}
From Delivery Note,De la nota de entrega
From Employee,De Empleado
From Lead,De la iniciativa
From Maintenance Schedule,Desde Programa de mantenimiento
From Material Request,Desde Solicitud de material
From Opportunity,De Oportunidades
From Package No.,Del Paquete N º 
From Purchase Order,De la Orden de Compra
From Purchase Receipt,Desde recibo de compra
From Quotation,desde la cotización
From Sales Order,De órdenes de venta
From Supplier Quotation,Desde la cotización del proveedor
From Time,From Time
From Value,De Valor
From and To dates required,Desde y Hasta la fecha solicitada
From value must be less than to value in row {0},De valor debe ser inferior al valor de la fila {0}
Frozen,congelado
Frozen Accounts Modifier,Frozen Accounts modificador
Fulfilled,Cumplido
Full Name,Nombre Completo
Full-time,De jornada completa
Fully Billed,Totalmente Facturad
Fully Completed,totalmente Terminado
Fully Delivered,Totalmente Entregado
Furniture and Fixture,Muebles y Fixture
Further accounts can be made under Groups but entries can be made against Ledger,Otras cuentas se pueden hacer en Grupos pero las entradas se pueden hacer en contra de Ledger
"Further accounts can be made under Groups, but entries can be made against Ledger","Otras cuentas se pueden hacer en Grupos, pero las entradas se pueden hacer en contra de Ledger"
Further nodes can be only created under 'Group' type nodes,Otros nodos pueden ser sólo crean en los nodos de tipo ' Grupo '
GL Entry,Entrada GL
Gantt Chart,Diagrama de Gantt
Gantt chart of all tasks.,Diagrama de Gantt de todas las tareas .
Gender,género
General,general
General Ledger,Contabilidad General
Generate Description HTML,Generar Descripción HTML
Generate Material Requests (MRP) and Production Orders.,Generar solicitudes de material ( MRP ) y de las órdenes de producción .
Generate Salary Slips,Generar Salario Slips
Generate Schedule,Generar Horario
Generates HTML to include selected image in the description,Genera HTML para incluir la imagen seleccionada en la descripción
Get Advances Paid,Cómo anticipos pagados
Get Advances Received,Cómo anticipos recibidos
Get Current Stock,Obtenga Stock actual
Get Items,Obtener elementos
Get Items From Sales Orders,Obtener elementos De órdenes de venta
Get Items from BOM,Obtener elementos de la lista de materiales
Get Last Purchase Rate,Obtenga Última Tarifa de compra
Get Outstanding Invoices,Recibe las facturas pendientes
Get Relevant Entries,Obtenga Asientos correspondientes
Get Sales Orders,Recibe órdenes de venta
Get Specification Details,Obtenga Especificación Detalles
Get Stock and Rate,Obtenga Stock y Cambio
Get Template,Obtenga Plantilla
Get Terms and Conditions,Obtenga Términos y Condiciones
Get Unreconciled Entries,Consigue entradas no reconciliadas
Get Weekly Off Dates,Obtenga Semanal Off Fechas
"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.","Obtenga tasa de valorización y el stock disponible en la fuente del almacén / destino en la fecha mencionada publicación a tiempo . Si serializado tema, por favor, pulse este botón después de entrar nos serie."
Global Defaults,predeterminados globales
Global POS Setting {0} already created for company {1},POS Global Ajuste {0} ya creado para la compañía de {1}
Global Settings,Configuración global
"Go to the appropriate group (usually Application of Funds > Current Assets > Bank Accounts and create a new Account Ledger (by clicking on Add Child) of type ""Bank""","Ir al grupo apropiado (por lo general de Financiación > Activos Corrientes > Cuentas Bancarias y crear una nueva cuenta contable (haciendo clic en Add Child ) de tipo ""Banco"""
"Go to the appropriate group (usually Source of Funds > Current Liabilities > Taxes and Duties and create a new Account Ledger (by clicking on Add Child) of type ""Tax"" and do mention the Tax rate.","Ir al grupo apropiado (generalmente Fuente de Fondos > Pasivos actuales> Impuestos y derechos y crear una nueva cuenta contable (haciendo clic en Add Child ) de tipo "" Impuestos "" y no hablar de la tasa de impuestos ."
Goal,meta
Goals,Objetivos
Goods received from Suppliers.,Productos recibidos de proveedores .
Google Drive,Google Drive
Google Drive Access Allowed,Google Drive acceso permitido
Government,gobierno
Graduate,graduado
Grand Total,Gran Total
Grand Total (Company Currency),Total general ( Compañía de divisas )
"Grid ""","Grid """
Grocery,tienda de comestibles
Gross Margin %,Margen Bruto %
Gross Margin Value,Valor Margen bruto
Gross Pay,Pago bruto
Gross Pay + Arrear Amount +Encashment Amount - Total Deduction,Importe Bruto + Pay arrear Monto + Cobro - Deducción total
Gross Profit,beneficio bruto
Gross Profit (%),Ganancia bruta ( %)
Gross Weight,Peso bruto
Gross Weight UOM,Bruto UOM Peso
Group,grupo
Group by Account,Grupos Por Cuenta
Group by Voucher,Grupo por Bono
Group or Ledger,Grupo o Ledger
Groups,Grupos
HR Manager,Gerente de Recursos Humanos
HR Settings,Configuración de recursos humanos
HTML / Banner that will show on the top of product list.,HTML / Banner que aparecerá en la parte superior de la lista de productos.
Half Day,Medio Día
Half Yearly,Semestral
Half-yearly,Semestral
Happy Birthday!,¡Feliz cumpleaños!
Hardware,Hardware
Has Batch No,Tiene lotes No
Has Child Node,Tiene Nodo Niño
Has Serial No,Tiene de serie n
Head of Marketing and Sales,Director de Marketing y Ventas
Header,Encabezado
Health Care,Cuidado de la Salud
Health Concerns,Preocupaciones de salud
Health Details,Detalles de la Salud
Held On,celebrada el
Help HTML,Ayuda HTML
"Help: To link to another record in the system, use ""#Form/Note/[Note Name]"" as the Link URL. (don't use ""http://"")","Ayuda : Para vincular a otro registro en el sistema , utilice ""# Form / nota / [ Nota Nombre ]"" como la dirección URL Link. (no utilice "" http://"" )"
"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 ocupación de los padres, cónyuge e hijos"
"Here you can maintain height, weight, allergies, medical concerns etc","Aquí usted puede mantener la altura , el peso, alergias , problemas médicos , etc"
Hide Currency Symbol,Ocultar símbolo de moneda
High,alto
History In Company,Historia In Company
Hold,mantener
Holiday,fiesta
Holiday List,Lista de vacaciones
Holiday List Name,Lista de nombres de vacaciones
Holiday master.,Master de vacaciones .
Holidays,Vacaciones
Home,Casa
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 son para ser tirado"
Hour,Hora
Hour Rate,Hora de Cambio
Hour Rate Labour,Hora Cambio del Trabajo
Hours,Horas
How Pricing Rule is applied?,¿Cómo se aplica la Regla Precios?
How frequently?,¿Con qué frecuencia ?
"How should this currency be formatted? If not set, will use system defaults","¿Cómo se debe formatear esta moneda ? Si no se establece, utilizará valores predeterminados del sistema"
Human Resources,Recursos Humanos
Identification of the package for the delivery (for print),La identificación del paquete para la entrega (para impresión)
If Income or Expense,Si los ingresos o gastos
If Monthly Budget Exceeded,Si Presupuesto mensual excedido
"If Sale BOM is defined, the actual BOM of the Pack is displayed as table. Available in Delivery Note and Sales Order","Si se define la venta BOM , la lista de materiales real del paquete se muestra como mesa. Disponible en la nota de entrega y órdenes de venta"
"If Supplier Part Number exists for given Item, it gets stored here","Si existe Número de pieza del proveedor relativa a determinado tema , que se almacena aquí"
If Yearly Budget Exceeded,Si el presupuesto anual ha superado el
"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á considerado para conseguir materias primas. De lo contrario , todos los elementos de sub-ensamble serán tratados como materia prima ."
"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Si se marca , no total . de días de trabajo se incluirán los días , y esto reducirá el valor del salario por día"
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Si se marca, el importe del impuesto se considerará como ya incluido en el Monto Imprimir Vota / Imprimir"
If different than customer address,Si es diferente a la dirección del cliente
"If disable, 'Rounded Total' field will not be visible in any transaction","Si desactiva , el campo "" Total redondeado ' no será visible en cualquier transacción"
"If enabled, the system will post accounting entries for inventory automatically.","Si está habilitado, el sistema contabiliza los asientos contables para el inventario de forma automática."
If more than one package of the same type (for print),Si más de un paquete del mismo tipo (por impresión)
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Si hay varias reglas de precios siguen prevaleciendo, los usuarios se les pide que establezca la prioridad manualmente para resolver el conflicto."
"If no change in either Quantity or Valuation Rate, leave the cell blank.","Si no hay cambio , ya sea en cantidad o de valoración por tipo , deje en blanco la celda."
If not applicable please enter: NA,"Si no es aplicable , 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á marcada , la lista tendrá que ser añadido a cada Departamento donde ha de aplicarse ."
"If selected Pricing Rule is made for 'Price', it will overwrite Price List. Pricing Rule price is the final price, so no further discount should be applied. Hence, in transactions like Sales Order, Purchase Order etc, it will be fetched in 'Rate' field, rather than 'Price List Rate' field.","Si Regla Precios seleccionado está hecho para 'Precio', sobrescribirá Lista de Precios. Regla precio El precio es el precio final, así que no hay descuento adicional debe aplicarse. Por lo tanto, en las transacciones como pedidos de venta, orden de compra, etc, se fue a buscar en el campo 'Cambio', en lugar de campo 'Precio de lista Cambio'."
"If specified, send the newsletter using this email address","Si se especifica, enviar el boletín de utilizar esta dirección de correo electrónico"
"If the account is frozen, entries are allowed to restricted users.","Si la cuenta está congelada , las entradas se les permite a los usuarios restringidos."
"If this Account represents a Customer, Supplier or Employee, set it here.","Si esta cuenta representa un cliente, proveedor o empleado, Ponlo aquí ."
"If two or more Pricing Rules are found based on the above conditions, Priority is applied. Priority is a number between 0 to 20 while default value is zero (blank). Higher number means it will take precedence if there are multiple Pricing Rules with same conditions.","Si se encuentran dos o más reglas de precios sobre la base de las condiciones anteriores, se aplica la prioridad. La prioridad es un número entre 0 y 20, mientras que el valor por defecto es cero (en blanco). Un número más alto significa que va a tener prioridad si hay varias reglas de precios con las mismas condiciones."
If you follow Quality Inspection. Enables Item QA Required and QA No in Purchase Receipt,Si usted sigue la Inspección de calidad . Permite Artículo QA Obligatorio y QA 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 usted tiene equipo de ventas y Venta Partners ( Socios de canal ) 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 un modelo estándar de las tasas de compra y los cargos principales, 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 de las tasas y cargos de venta principales, 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 usted tiene formatos de impresión largos , esta característica puede ser utilizada 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. Enables Item 'Is Manufactured',Si usted involucra en la actividad manufacturera . Permite artículo ' está fabricado '
Ignore,Pasar por Alto
Ignore Pricing Rule,No haga caso de la Regla Precios
Ignored: ,Ignorado:
Image,imagen
Image View,Imagen Vista
Implementation Partner,socio de implementación
Import Attendance,Asistencia de importación
Import Failed!,Import Error !
Import Log,Importar registro
Import Successful!,¡Importación correcta!
Imports,Importaciones
In Hours,En Horas
In Process,En proceso
In Qty,Cdad
In Value,Valor
In Words,En palabras
In Words (Company Currency),En las palabras ( Company Moneda )
In Words (Export) will be visible once you save the Delivery Note.,En palabras (Export ) será visible una vez que guarde la nota de entrega .
In Words will be visible once you save the Delivery Note.,En palabras serán visibles una vez que se guarda la nota de entrega .
In Words 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 guarde el pedido de ventas .
Incentives,Incentivos
Include Reconciled Entries,Incluya los comentarios conciliadas
Include holidays in Total no. of Working Days,Incluya vacaciones en total no. de días laborables
Income,Ingresos
Income / Expense,Ingresos / gastos
Income Account,Cuenta de Ingresos
Income Booked,Ingresos Reservados
Income Tax,Impuesto sobre la Renta
Income Year to Date,Ingresos Año a la Fecha
Income booked for the digest period,Ingresos reservado para el período de digestión
Incoming,entrante
Incoming Rate,Incoming Cambio
Incoming quality inspection.,Inspección de calidad de entrada .
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Número incorrecto de entradas del libro mayor encontrado. Es posible que haya seleccionado una cuenta equivocada en la transacción.
Incorrect or Inactive BOM {0} for Item {1} at row {2},Incorrecta o Inactivo BOM {0} para el artículo {1} en la fila {2}
Indicates that the package is a part of this delivery (Only Draft),Indica que el paquete es una parte de esta entrega (Sólo borrador)
Indirect Expenses,gastos indirectos
Indirect Income,Ingresos Indirectos
Individual,individual
Industry,Industria
Industry Type,Tipo de Industria
Inspected By,Inspección realizada por
Inspection Criteria,Criterios de Inspección
Inspection Required,Inspección requerida
Inspection Type,Tipo de Inspección
Installation Date,Fecha de instalación
Installation Note,Nota de instalación
Installation Note Item,Nota de instalación de artículos
Installation Note {0} has already been submitted,Nota de instalación {0} ya se ha presentado
Installation Status,Estado de la instalación
Installation Time,Tiempo de instalación
Installation date cannot be before delivery date for Item {0},Fecha de instalación no puede ser antes de la fecha de entrega para el elemento {0}
Installation record for a Serial No.,Registro de la instalación para un número de serie
Installed Qty,Cantidad instalada
Instructions,instrucciones
Integrate incoming support emails to Support Ticket,Integrar los correos electrónicos de apoyo recibidas de Apoyo Ticket
Interested,Interesado
Intern,Interno
Internal,Interno
Internet Publishing,Internet Publishing
Introduction,Introducción
Invalid Barcode,Código de barras no válido
Invalid Barcode or Serial No,Código de barras de serie no válido o No
Invalid Mail Server. Please rectify and try again.,Servidor de correo válida . Por favor rectifique y vuelva a intentarlo .
Invalid Master Name,Nombre no válido Maestro
Invalid User Name or Support Password. Please rectify and try again.,No válida nombre de usuario o contraseña Soporte . Por favor rectifique y vuelva a intentarlo .
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Cantidad no válido para el elemento {0} . Cantidad debe ser mayor que 0 .
Inventory,inventario
Inventory & Support,Soporte de Inventario y
Investment Banking,Banca de Inversión
Investments,Inversiones
Invoice Date,Fecha de la factura
Invoice Details,Detalles de la Factura
Invoice No,Factura N º
Invoice Number,Número de la Factura
Invoice Period From,Factura Periodo Del
Invoice Period From and Invoice Period To dates mandatory for recurring invoice,Factura Periodo Del Período y Factura Para las fechas obligatorias para la factura recurrente
Invoice Period To,Período Factura Para
Invoice Type,Tipo de Factura
Invoice/Journal Voucher Details,Detalles de Factura / Comprobante de Diario
Invoiced Amount (Exculsive Tax),Cantidad facturada ( Impuesto exclusive )
Is Active,Está Activo
Is Advance,Es Avance
Is Cancelled,CANCELADO
Is Carry Forward,Es llevar adelante
Is Default,Es por defecto
Is Encash,Se convertirá en efectivo
Is Fixed Asset Item,Es partidas del activo inmovilizado
Is LWP,es LWP
Is Opening,está abriendo
Is Opening Entry,Es la entrada de apertura
Is POS,Es POS
Is Primary Contact,Es Contacto principal
Is Purchase Item,Es Compra de artículos
Is Sales Item,Es artículo de Ventas
Is Service Item,Es servicio de Artículo
Is Stock Item,Es Stock Artículo
Is Sub Contracted Item,Es subcontratación artículo
Is Subcontracted,se subcontrata
Is this Tax included in Basic Rate?,¿Está incluido este Impuesto la tarifa básica ?
Issue,cuestión
Issue Date,Fecha de Emisión
Issue Details,Detalles del problema
Issued Items Against Production Order,Los productos que emitan con cargo a la Orden de Producción
It can also be used to create opening stock entries and to fix stock value.,También puede ser utilizado para crear la apertura de las entradas en existencias y para fijar el valor de stock .
Item,artículo
Item Advanced,artículo avanzada
Item Barcode,Código de barras del artículo
Item Batch Nos,Lotes de artículos núms
Item Code,Código del artículo
Item Code > Item Group > Brand,Código del artículo> Grupo Elemento> Marca
Item Code and Warehouse should already exist.,Código del artículo y de almacenes ya deben existir.
Item Code cannot be changed for Serial No.,Código del artículo no se puede cambiar de número de serie
Item Code is mandatory because Item is not automatically numbered,Código del artículo es obligatorio porque El artículo no se numera automáticamente
Item Code required at Row No {0},Código del artículo requerido en la fila n {0}
Item Customer Detail,Elemento Detalle Cliente
Item Description,Descripción del Artículo
Item Desription,Desription del Artículo
Item Details,Detalles del artículo
Item Group,Grupo de artículos
Item Group Name,Nombre del grupo de artículos
Item Group Tree,Artículo Grupo Árbol
Item Group not mentioned in item master for item {0},Grupo El artículo no se menciona en maestro de artículos para el elemento {0}
Item Groups in Details,Grupos de componentes en detalles
Item Image (if not slideshow),"Imagen del Artículo (si no, presentación de diapositivas)"
Item Name,Nombre del elemento
Item Naming By,Artículo Naming Por
Item Price,Precio del Artículo
Item Prices,Precios de los Artículos
Item Quality Inspection Parameter,Artículo Calidad de parámetros de Inspección
Item Reorder,artículo reorden
Item Serial No,Artículo N º de serie
Item Serial Nos,N º de serie de los Artículo
Item Shortage Report,Artículo Escasez Reportar
Item Supplier,Proveedor del Artículo
Item Supplier Details,Detalles del Proveedor del artículo
Item Tax,Impuesto del artículo
Item Tax Amount,Total de impuestos de los artículos
Item Tax Rate,Artículo Tasa de Impuesto
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Artículo Impuesto Row {0} debe tener en cuenta el tipo de impuestos o ingresos o de gastos o Imponible
Item Tax1,Impuesto1 del  artículo
Item To Manufacture,Artículo Para Fabricación
Item UOM,artículo UOM
Item Website Specification,Artículo Website Especificación
Item Website Specifications,Especificaciones Elemento Web
Item Wise Tax Detail,Artículo Wise detalle de impuestos
Item Wise Tax Detail ,Detalle del artículo Tax Wise
Item is required,Se requiere de artículos
Item is updated,Artículo se actualiza
Item master.,Maestro de artículos .
"Item must be a purchase item, as it is present in one or many Active BOMs","El artículo debe ser un artículo de la compra , ya que está presente en una o varias listas de materiales activos"
Item or Warehouse for row {0} does not match Material Request,Artículo o Bodega para la fila {0} no coincide Solicitud de material
Item table can not be blank,Tabla de artículos no puede estar en blanco
Item to be manufactured or repacked,Artículo a fabricar o embalados de nuevo
Item valuation updated,Valoración Artículo actualizado
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 {0} appears multiple times in Price List {1},Artículo {0} aparece varias veces en Precio de lista {1}
Item {0} does not exist,Elemento {0} no existe
Item {0} does not exist in the system or has expired,Elemento {0} no existe en el sistema o ha expirado
Item {0} does not exist in {1} {2},Elemento {0} no existe en {1} {2}
Item {0} has already been returned,Artículo {0} ya se ha devuelto
Item {0} has been entered multiple times against same operation,Artículo {0} ha sido ingresado varias veces contra la misma operación
Item {0} has been entered multiple times with same description or date,Artículo {0} ha sido ingresado varias veces con misma descripción o fecha
Item {0} has been entered multiple times with same description or date or warehouse,Artículo {0} ha sido ingresado varias veces con misma descripción o de la fecha o de un depósito
Item {0} has been entered twice,Artículo {0} ha sido ingresado dos veces
Item {0} has reached its end of life on {1},Artículo {0} ha llegado al término de la vida en {1}
Item {0} ignored since it is not a stock item,Artículo {0} ignorado ya que no es un tema de valores
Item {0} is cancelled,Artículo {0} se cancela
Item {0} is not Purchase Item,Artículo {0} no se compra del artículo
Item {0} is not a serialized Item,Elemento {0} no es un artículo serializado
Item {0} is not a stock Item,Elemento {0} no es un producto imprescindible
Item {0} is not active or end of life has been reached,Elemento {0} no está activo o ha llegado al final de la vida
Item {0} is not setup for Serial Nos. Check Item master,Elemento {0} no está configurado para el amo números de serie del cheque Artículo
Item {0} is not setup for Serial Nos. Column must be blank,Elemento {0} no está configurado para Serial Columna Nos. debe estar en blanco
Item {0} must be Sales Item,Artículo {0} debe ser artículo de Ventas
Item {0} must be Sales or Service Item in {1},Artículo {0} debe ser ventas o servicio al artículo en {1}
Item {0} must be Service Item,Artículo {0} debe ser de servicio Artículo
Item {0} must be a Purchase Item,Artículo {0} debe ser una compra de artículos
Item {0} must be a Sales Item,Artículo {0} debe ser un elemento de Ventas
Item {0} must be a Service Item.,Artículo {0} debe ser un elemento de servicio .
Item {0} must be a Sub-contracted Item,Artículo {0} debe ser un artículo subcontratada
Item {0} must be a stock Item,Artículo {0} debe ser un producto imprescindible
Item {0} must be manufactured or sub-contracted,Artículo {0} debe ser fabricado o subcontratado
Item {0} not found,Elemento {0} no encontrado
Item {0} with Serial No {1} is already installed,Artículo {0} con N º de serie {1} ya está instalada
Item {0} with same description entered twice,Artículo {0} con misma descripción entrado dos veces
"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 recupera cuando se selecciona el número de serie ."
Item-wise Price List Rate,- Artículo sabio Precio de lista Cambio
Item-wise Purchase History,- Artículo sabio Historial de compras
Item-wise Purchase Register,- Artículo sabio Compra Registrarse
Item-wise Sales History,- Artículo sabio Historia Ventas
Item-wise Sales Register,- Artículo sabio ventas Registrarse
"Item: {0} managed batch-wise, can not be reconciled using \					Stock Reconciliation, instead use Stock Entry","Artículo: {0} gestionado por lotes, no se puede conciliar el uso de \ Stock Reconciliación, en lugar utilizar la entrada Stock"
Item: {0} not found in the system,Artículo: {0} no se encuentra en el sistema
Items,Artículos
Items To Be Requested,Los artículos que se solicitarán
Items required,Elementos necesarios
"Items to be requested which are ""Out of Stock"" considering all warehouses based on projected qty and minimum order qty","Elementos que deben exigirse que son "" Fuera de Stock "", considerando todos los almacenes basados ​​en Cantidad proyectada y pedido mínimo Cantidad"
Items which do not exist in Item master can also be entered on customer's request,Los artículos que no existen en maestro de artículos también se pueden introducir en la petición del cliente
Itemwise Discount,Itemwise Descuento
Itemwise Recommended Reorder Level,Itemwise Recomendado por reorden Nivel
Job Applicant,solicitante de empleo
Job Opening,Oportunidad de Empleo
Job Profile,Perfil Laboral
Job Title,Título del trabajo
"Job profile, qualifications required etc.","Perfil laboral , las cualificaciones necesarias , etc"
Jobs Email Settings,Trabajos Email
Journal Entries,entradas de diario
Journal Entry,Entrada de diario
Journal Voucher,Comprobante de Diario
Journal Voucher Detail,Detalle del Asiento de Diario
Journal Voucher Detail No,Detalle del Asiento de Diario No
Journal Voucher {0} does not have account {1} or already matched,Comprobante de Diario {0} no tiene cuenta {1} o ya emparejado
Journal Vouchers {0} are un-linked,Asientos de Diario {0} no están vinculados.
Keep a track of communication related to this enquiry which will help for future reference.,Mantenga un registro de la comunicación en relación con esta investigación que ayudará para futuras consultas.
Keep it web friendly 900px (w) by 100px (h),Manténgalo web 900px mascotas ( w ) por 100px ( h )
Key Performance Area,Área clave de rendimiento
Key Responsibility Area,Área de Responsabilidad Clave
Kg,kg
LR Date,LR Fecha
LR No,LR No
Label,Etiqueta
Landed Cost Item,Landed Cost artículo
Landed Cost Items,Landed Partidas de gastos
Landed Cost Purchase Receipt,Landed Cost recibo de compra
Landed Cost Purchase Receipts,Landed Cost Recibos de compra
Landed Cost Wizard,Asistente Landed Cost
Landed Cost updated successfully,Landed Cost actualizado correctamente
Language,Idioma
Last Name,Apellido
Last Purchase Rate,Última Compra Cambio
Latest,Más Reciente
Lead,Iniciativa
Lead Details,Detalle de la Iniciativa
Lead Id,Iniciativa ID
Lead Name,Nombre de la Iniciativa
Lead Owner,Propietario de la Iniciativa
Lead Source,Fuente de de la Iniciativa
Lead Status,Estado de la Iniciativa
Lead Time Date,Plazo de ejecución Fecha
Lead Time Days,Tiempo de Entrega Días
Lead Time days is number of days by which this item is expected in your warehouse. This days is fetched in Material Request when you select this item.,Plomo día Tiempo es el número de días en que se espera que este artículo en su almacén. Este día es descabellada en Solicitud de materiales cuando se selecciona este elemento .
Lead Type,Tipo de Iniciativa
Lead must be set if Opportunity is made from Lead,La iniciativa se debe establecer si la oportunidad está hecha de plomo
Leave Allocation,Deja Asignación
Leave Allocation Tool,Deja Herramienta de Asignación
Leave Application,Deja Aplicación
Leave Approver,Deja aprobador
Leave Approvers,Deja aprobadores
Leave Balance Before Application,Deja Saldo antes de la aplicación
Leave Block List,Deja Lista de bloqueo
Leave Block List Allow,Deja Lista de bloqueo Permitir
Leave Block List Allowed,Deja Lista de bloqueo animales
Leave Block List Date,Deja Lista de bloqueo Fecha
Leave Block List Dates,Deja lista Fechas Bloque
Leave Block List Name,Agregar Nombre Lista de bloqueo
Leave Blocked,Deja Bloqueado
Leave Control Panel,Salir del Panel de Control
Leave Encashed?,Deja cobrados ?
Leave Encashment Amount,Deja Cobro Monto
Leave Type,Deja Tipo
Leave Type Name,Deja Tipo Nombre
Leave Without Pay,Licencia sin sueldo
Leave application has been approved.,Solicitud de autorización haya sido aprobada.
Leave application has been rejected.,Solicitud de autorización ha sido rechazada.
Leave approver must be one of {0},Deja aprobador debe ser uno de {0}
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 can be approved by users with Role, ""Leave Approver""","Deja que se pueda aprobar por los usuarios con roles, "" Deja aprobador """
Leave of type {0} cannot be longer than {1},Dejar de tipo {0} no puede tener más de {1}
Leaves Allocated Successfully for {0},Hojas distribuidos con éxito para {0}
Leaves for type {0} already allocated for Employee {1} for Fiscal Year {0},Hojas para el tipo {0} ya asignado para Empleado {1} para el Año Fiscal {0}
Leaves must be allocated in multiples of 0.5,"Las hojas deben ser asignados en múltiplos de 0,5"
Ledger,Libro Mayor
Ledgers,Libros de contabilidad
Left,Izquierda
Legal,Legal
Legal Expenses,Gastos Legales
Letter Head,Membrete
Letter Heads for print templates.,Membretes para las plantillas de impresión.
Level,Nivel
Lft,Lft
Liability,responsabilidad
List a few of your customers. They could be organizations or individuals.,Enumere algunos de sus clientes. Pueden ser organizaciones o individuos.
List a few of your suppliers. They could be organizations or individuals.,Enumere algunos de sus proveedores. Pueden ser organizaciones o individuos.
List items that form the package.,Lista de tareas que forman el paquete .
List this Item in multiple groups on the website.,Este artículo no en varios grupos en el sitio web .
"List your products or services that you buy or sell. Make sure to check the Item Group, Unit of Measure and other properties when you start.",Publica tus productos o servicios que usted compra o vende .
"List your tax heads (e.g. VAT, Excise; they should have unique names) and their standard rates. This will create a standard template, which you can edit and add more later.","Enumere sus cabezas fiscales ( por ejemplo, IVA , impuestos especiales , sino que deben tener nombres únicos ) y sus tasas estándar."
Loading...,Loading ...
Loans (Liabilities),Préstamos (pasivos )
Loans and Advances (Assets),Préstamos y anticipos (Activos )
Local,local
Login,Iniciar Sesión
Login with your new User ID,Acceda con su nuevo ID de usuario
Logo,Logo
Logo and Letter Heads,Logo y Membrete
Lost,Perdido
Lost Reason,Razón de la pérdida
Low,Bajo
Lower Income,Ingreso Bajo
MTN Details,MTN Detalles
Main,Principal
Main Reports,Informes principales
Maintain Same Rate Throughout Sales Cycle,Mantener mismo ritmo durante todo el ciclo de ventas
Maintain same rate throughout purchase cycle,Mantener mismo ritmo durante todo el ciclo de compra
Maintenance,Mantenimiento
Maintenance Date,Mantenimiento Fecha
Maintenance Details,Detalles Mantenimiento
Maintenance Schedule,Programa de mantenimiento
Maintenance Schedule Detail,Programa de mantenimiento Detalle
Maintenance Schedule Item,Programa de mantenimiento de artículos
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"Programa de mantenimiento no se genera para todos los artículos. Por favor, haga clic en ' Generar la Lista de"
Maintenance Schedule {0} exists against {0},Programa de mantenimiento {0} existe en contra de {0}
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Programa de mantenimiento {0} debe ser cancelado antes de cancelar esta orden Ventas
Maintenance Schedules,Programas de mantenimiento
Maintenance Status,Estado de mantenimiento
Maintenance Time,Tiempo de mantenimiento
Maintenance Type,Tipo de Mantenimiento
Maintenance Visit,Mantenimiento Visita
Maintenance Visit Purpose,Mantenimiento Visita Propósito
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Mantenimiento Visita {0} debe ser cancelado antes de cancelar el pedido de ventas
Maintenance start date can not be before delivery date for Serial No {0},Mantenimiento fecha de inicio no puede ser antes de la fecha de entrega para la serie n {0}
Major/Optional Subjects,Principales / Asignaturas optativas
Make ,Hacer
Make Accounting Entry For Every Stock Movement,Hacer asiento contable para cada movimiento de acciones
Make Bank Voucher,Hacer Banco Voucher
Make Credit Note,Hacer Nota de Crédito
Make Debit Note,Haga nota de débito
Make Delivery,Hacer entrega
Make Difference Entry,Hacer Entrada Diferencia
Make Excise Invoice,Haga Impuestos Especiales de la factura
Make Installation Note,Hacer Nota de instalación
Make Invoice,Hacer factura
Make Maint. Schedule,Hacer Maint . horario
Make Maint. Visit,Hacer Maint . visita
Make Maintenance Visit,Hacer mantenimiento Visita
Make Packing Slip,Hacer lista de empaque
Make Payment,Realizar Pago
Make Payment Entry,Hacer Entrada Pago
Make Purchase Invoice,Hacer factura de compra
Make Purchase Order,Hacer la Orden de Compra
Make Purchase Receipt,Hacer recibo de compra
Make Salary Slip,Hacer nómina
Make Salary Structure,Hacer Estructura Salarial
Make Sales Invoice,Hacer la factura de venta
Make Sales Order,Asegúrese de órdenes de venta
Make Supplier Quotation,Hacer cita Proveedor
Make Time Log Batch,Haga la hora de lotes sesión
Male,Masculino
Manage Customer Group Tree.,Gestione Grupo de Clientes Tree.
Manage Sales Partners.,Administrar Puntos de ventas.
Manage Sales Person Tree.,Gestione Sales Person árbol .
Manage Territory Tree.,Gestione Territorio Tree.
Manage cost of operations,Gestione costo de las operaciones
Management,administración
Manager,Gerente
"Mandatory if Stock Item is ""Yes"". Also the default warehouse where reserved quantity is set from Sales Order.","Obligatorio si Stock Item es "" Sí"" . También el almacén por defecto en que la cantidad reservada se establece a partir de órdenes de venta ."
Manufacture against Sales Order,Fabricación contra pedido de ventas
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
Manufactured quantity {0} cannot be greater than planned quanitity {1} in Production Order {2},Cantidad Fabricado {0} no puede ser mayor que quanitity planeado {1} en la orden de producción {2}
Manufacturer,Fabricante
Manufacturer Part Number,Número de pieza
Manufacturing,fabricación
Manufacturing Quantity,Fabricación Cantidad
Manufacturing Quantity is mandatory,Fabricación Cantidad es obligatorio
Margin,Margen
Marital Status,Estado Civil
Market Segment,Sector de Mercado
Marketing,Mercadeo
Marketing Expenses,gastos de comercialización
Married,Casado
Mass Mailing,Mass Mailing
Master Name,Maestro Nombre
Master Name is mandatory if account type is Warehouse,Maestro nombre es obligatorio si el tipo de cuenta es Almacén
Master Type,Type Master
Masters,Masters
Match non-linked Invoices and Payments.,Coinciden con las facturas y pagos no vinculados.
Material Issue,material Issue
Material Receipt,Recibo de Materiales
Material Request,Solicitud de material
Material Request Detail No,Material de Información de la petición No
Material Request For Warehouse,Solicitud de material para el almacén
Material Request Item,Material de Solicitud de artículos
Material Request Items,Material de elementos de solicitud
Material Request No,Solicitud Material
Material Request Type,Material de Solicitud Tipo
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Solicitud de materiales de máxima {0} se puede hacer para el punto {1} en contra de órdenes de venta {2}
Material Request used to make this Stock Entry,Solicitud de material utilizado para hacer esta entrada Stock
Material Request {0} is cancelled or stopped,Solicitud de material {0} se cancela o se detiene
Material Requests for which Supplier Quotations are not created,Las solicitudes de material para los que no se crean Citas Proveedor
Material Requests {0} created,Las solicitudes de material {0} creado
Material Requirement,material Requirement
Material Transfer,transferencia de material
Materials,Materiales
Materials Required (Exploded),Materiales necesarios ( despiece )
Max 5 characters,Max 5 caracteres
Max Days Leave Allowed,Número máximo de días de baja por mascotas
Max Discount (%),Max Descuento (% )
Max Qty,Max Und
Max discount allowed for item: {0} is {1}%,Descuento máximo permitido para cada elemento: {0} es {1}%
Maximum Amount,Importe máximo
Maximum allowed credit is {0} days after posting date,Crédito máximo permitido es {0} días después de la fecha de publicar
Maximum {0} rows allowed,Máximo {0} filas permitidos
Maxiumm discount for Item {0} is {1}%,Descuento Maxiumm de elemento {0} es {1}%
Medical,Médico
Medium,Medio
"Merging is only possible if following properties are same in both records. Group or Ledger, Root Type, Company",La fusión sólo es posible si las propiedades son las mismas en ambos registros.
Message,Mensaje
Message Parameter,Parámetro Mensaje
Message Sent,Mensaje enviado
Message updated,Mensaje actualizado
Messages,Mensajes
Messages greater than 160 characters will be split into multiple messages,Los mensajes de más de 160 caracteres se dividirá en varios mensajes
Middle Income,Ingresos Medio
Milestone,hito
Milestone Date,Milestone Fecha
Milestones,hitos
Milestones will be added as Events in the Calendar,Hitos se agregarán como Eventos en el Calendario
Min Order Qty,Cantidad de pedido mínima
Min Qty,Qty del minuto
Min Qty can not be greater than Max Qty,Qty del minuto no puede ser mayor que Max Und
Minimum Amount,Volumen mínimo de
Minimum Order Qty,Mínimo Online con su nombre
Minute,Minuto
Misc Details,Otros Detalles
Miscellaneous Expenses,gastos varios
Miscelleneous,Miscelleneous
Mobile No,Mobile No
Mobile No.,Número Móvil
Mode of Payment,Modo de Pago
Modern,Moderno
Monday,Lunes
Month,Mes
Monthly,Mensual
Monthly Attendance Sheet,Hoja de Asistencia Mensual
Monthly Earning & Deduction,Ingresos mensuales y Deducción
Monthly Salary Register,Salario mensual Registrarse
Monthly salary statement.,Nómina Mensual.
More Details,Más detalles
More Info,Más información
Motion Picture & Video,Motion Picture & Video
Moving Average,media Móvil
Moving Average Rate,Mover Tarifa media
Mr,Sr.
Ms,Sra.
Multiple Item prices.,Precios de los artículos múltiples.
"Multiple Price Rule exists with same criteria, please resolve \			conflict by assigning priority. Price Rules: {0}","Múltiple Precio Regla existe con los mismos criterios, por favor resuelva \ conflicto mediante la asignación de prioridad. Reglas Precio: {0}"
Music,Música
Must be Whole Number,Debe ser un número entero
Name,Nombre
Name and Description,Nombre y descripción
Name and Employee ID,Nombre y ID de empleado
"Name of new Account. Note: Please don't create accounts for Customers and Suppliers, they are created automatically from the Customer and Supplier master","Nombre de la nueva cuenta . Nota : Por favor no crear cuentas para clientes y proveedores , se crean automáticamente desde el cliente y el proveedor principal"
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
Naming Series,Nombrar Series
Negative Quantity is not allowed,Cantidad negativa no se permite
Negative Stock Error ({6}) for Item {0} in Warehouse {1} on {2} {3} in {4} {5},Negativo Stock Error ( {6} ) para el punto {0} en Almacén {1} en {2} {3} en {4} {5}
Negative Valuation Rate is not allowed,Negativo valoración de tipo no está permitida
Negative balance in Batch {0} for Item {1} at Warehouse {2} on {3} {4},Saldo negativo en lotes {0} para el artículo {1} en Almacén {2} del {3} {4}
Net Pay,Pago neto
Net Pay (in words) will be visible once you save the Salary Slip.,Pago neto (en palabras) será visible una vez que guarde la nómina .
Net Profit / Loss,Utilidad Neta / Pérdida
Net Total,total Neto
Net Total (Company Currency),Total Neto ( Compañía de divisas )
Net Weight,Peso neto
Net Weight UOM,Peso neto UOM
Net Weight of each Item,Peso neto de cada artículo
Net pay cannot be negative,Salario neto no puede ser negativo
Never,nunca
New ,
New Account,Nueva cuenta
New Account Name,Nueva Cuenta Nombre
New BOM,Nueva lista de materiales
New Communications,nuevas comunicaciones
New Company,Nueva Empresa
New Cost Center,Nuevo Centro de Costo
New Cost Center Name,Nuevo nombre de centros de coste
New Delivery Notes,Nuevas notas de entrega
New Enquiries,Nuevas consultas
New Leads,nuevas pistas
New Leave Application,Nueva aplicación Dejar
New Leaves Allocated,Nuevas Hojas asignados
New Leaves Allocated (In Days),Nuevas Hojas Asignados ( en días)
New Material Requests,Las nuevas solicitudes de material
New Projects,Nuevos Proyectos
New Purchase Orders,Las nuevas órdenes de compra
New Purchase Receipts,Nuevos recibos de compra
New Quotations,Nuevas Citas
New Sales Orders,Las nuevas órdenes de venta
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Nueva serie n no puede tener Warehouse. Depósito debe ser ajustado por Stock Entrada o recibo de compra
New Stock Entries,Comentarios Nuevo archivo
New Stock UOM,Nuevo Stock UOM
New Stock UOM is required,Se requiere un nuevo Stock UOM
New Stock UOM must be different from current stock UOM,Nuevo Stock UOM debe ser diferente del de valores actuales UOM
New Supplier Quotations,Nuevas citas de proveedores
New Support Tickets,Nuevos Tickets de Soporte
New UOM must NOT be of type Whole Number,Nueva UOM NO debe ser de tipo entero Número
New Workplace,Nuevo lugar de trabajo
Newsletter,hoja informativa
Newsletter Content,Boletín de noticias de contenido
Newsletter Status,Boletín Estado
Newsletter has already been sent,Boletín de noticias ya ha sido enviada
"Newsletters to contacts, leads.","Boletines de contactos, clientes potenciales ."
Newspaper Publishers,Editores de Periódicos
Next,próximo
Next Contact By,Siguiente Contactar Por
Next Contact Date,Siguiente Contactar Fecha
Next Date,Siguiente Fecha
Next email will be sent on:,Siguiente correo electrónico será enviado el:
No,no
No Customer Accounts found.,Ningún cliente se encuentra .
No Customer or Supplier Accounts found,Ningún cliente o proveedor Cuentas encontrado
No Expense Approvers. Please assign 'Expense Approver' Role to atleast one user,No hay aprobadores gasto. Asigne roles ' aprobador de gastos ' a al menos un usuario
No Item with Barcode {0},Ningún artículo con Barcode {0}
No Item with Serial No {0},Ningún artículo con Serial No {0}
No Items to pack,No hay artículos para empacar
No Leave Approvers. Please assign 'Leave Approver' Role to atleast one user,No hay aprobadores irse. Asigne ' Dejar aprobador ' Rol de al menos un usuario
No Permission,Sin permiso
No Production Orders created,No hay órdenes de fabricación creadas
No Supplier Accounts found. Supplier Accounts are identified based on 'Master Type' value in account record.,No hay cuentas de proveedores encontrado . Cuentas de proveedores se identifican con base en el valor de ' Maestro Type' en el registro de cuenta.
No accounting entries for the following warehouses,No hay asientos contables para los siguientes almacenes
No addresses created,No hay direcciones creadas
No contacts created,No hay contactos creados
No default Address Template found. Please create a new one from Setup > Printing and Branding > Address Template.,"No se encontró la plantilla por defecto Dirección. Por favor, cree una nueva desde Configuración> Prensa y Branding> Plantilla de Dirección."
No default BOM exists for Item {0},No existe una lista de materiales por defecto para el elemento {0}
No description given,Sin descripción
No employee found,No se han encontrado empleado
No employee found!,Ningún empleado encontrado!
No of Requested SMS,No de SMS Solicitado
No of Sent SMS,No de SMS enviados
No of Visits,No de Visitas
No permission,No permission
No record found,No se han encontrado registros
No records found in the Invoice table,No se han encontrado en la tabla de registros de facturas
No records found in the Payment table,No se han encontrado en la tabla de registros de venta
No salary slip found for month: ,No nómina encontrado al mes:
Non Profit,Sin Fines De Lucro
Nos,nos
Not Active,No activo
Not Applicable,No aplicable
Not Available,No disponible
Not Billed,No Anunciado
Not Delivered,No Entregado
Not Set,No Especificado
Not allowed to update stock transactions older than {0},No se permite actualizar las transacciones de valores mayores de {0}
Not authorized to edit frozen Account {0},No autorizado para editar la cuenta congelada {0}
Not authroized since {0} exceeds limits,No distribuidor oficial autorizado desde {0} excede los límites
Not permitted,No se permite
Note,nota
Note User,Nota usuario
"Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.","Nota: Las copias de seguridad y archivos no se eliminan de Dropbox, que tendrá que hacerlo manualmente ."
"Note: Backups and files are not deleted from Google Drive, you will have to delete them manually.","Nota: Las copias de seguridad y archivos no se eliminan de Google Drive, usted tendrá que hacerlo manualmente ."
Note: Due Date exceeds the allowed credit days by {0} day(s),Nota: Fecha de vencimiento es superior a los días de crédito permitidas por {0} día ( s )
Note: Email will not be sent to disabled users,Nota: El correo electrónico no se envía a los usuarios con discapacidad
Note: Item {0} entered multiple times,Nota : El artículo {0} entrado varias veces
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Nota : La entrada de pago no se creará desde ' Dinero en efectivo o cuenta bancaria ' no se ha especificado
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Nota : El sistema no verificará la entrega excesiva y el exceso de reservas para el elemento {0} como la cantidad o la cantidad es 0
Note: There is not enough leave balance for Leave Type {0},Nota : No hay equilibrio permiso suficiente para Dejar tipo {0}
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Nota: este centro de coste es un grupo. No se pueden hacer asientos contables en contra de grupos .
Note: {0},Nota: {0}
Notes,Notas
Notes:,Notas:
Nothing to request,Nada de pedir
Notice (days),Aviso ( días )
Notification Control,control de Notificación
Notification Email Address,Notificación de E-mail
Notify by Email on creation of automatic Material Request,Notificación por correo electrónico en la creación de la Solicitud de material automático
Number Format,Formato de número
Offer Date,Fecha de Oferta
Office,oficina
Office Equipments,Equipos de Oficina
Office Maintenance Expenses,Los gastos de mantenimiento de oficinas
Office Rent,Alquiler Oficina
Old Parent,Antiguo Padres
On Net Total,En total neto
On Previous Row Amount,El anterior Importe Row
On Previous Row Total,El anterior fila Total
Online Auctions,Subastas en línea
Only Leave Applications with status 'Approved' can be submitted,"Sólo Agregar aplicaciones con estado "" Aprobado "" puede ser presentada"
"Only Serial Nos with status ""Available"" can be delivered.","Sólo los números de serie con el estado "" disponible"" puede ser entregado."
Only leaf nodes are allowed in transaction,Sólo los nodos hoja se permite en una transacción
Only the selected Leave Approver can submit this Leave Application,Sólo el aprobador Dejar seleccionado puede presentar esta solicitud de permiso
Open,abierto
Open Production Orders,Las órdenes Abrir Producción
Open Tickets,Entradas abiertas
Opening (Cr),Apertura (Cr )
Opening (Dr),Apertura ( Dr)
Opening Date,Fecha de apertura
Opening Entry,Entrada de apertura
Opening Qty,apertura Cant.
Opening Time,Tiempo de apertura
Opening Value,Valor de apertura
Opening for a Job.,Apertura de un trabajo .
Operating Cost,Costo de funcionamiento
Operation Description,Descripción de la operación
Operation No,Operación No
Operation Time (mins),Operación Tiempo ( minutos)
Operation {0} is repeated in Operations Table,Operación {0} se repite en la tabla Operaciones
Operation {0} not present in Operations Table,Operación {0} no está presente en la tabla Operaciones
Operations,Operaciones
Opportunity,oportunidad
Opportunity Date,Oportunidad Fecha
Opportunity From,Oportunidad De
Opportunity Item,Oportunidad artículo
Opportunity Items,Artículos Oportunidad
Opportunity Lost,Oportunidad perdida
Opportunity Type,Tipo de Oportunidad
Optional. This setting will be used to filter in various transactions.,Opcional . Este ajuste se utiliza para filtrar en varias transacciones.
Order Type,Tipo de Orden
Order Type must be one of {0},Tipo de orden debe ser uno de {0}
Ordered,ordenado
Ordered Items To Be Billed,Artículos pedidos a facturar
Ordered Items To Be Delivered,Artículos pedidos para ser entregados
Ordered Qty,pedido Cantidad
"Ordered Qty: Quantity ordered for purchase, but not received.","Pedido Cantidad : Cantidad a pedir para la compra, pero no recibió ."
Ordered Quantity,Cantidad pedida
Orders released for production.,Las órdenes publicadas para la producción.
Organization Name,Nombre de la organización
Organization Profile,Perfil de la organización
Organization branch master.,Master rama Organización.
Organization unit (department) master.,Unidad de Organización ( departamento) maestro.
Other,otro
Other Details,Otras Datos
Others,otros
Out Qty,Salir Cant.
Out Value,disponibles Valor
Out of AMC,Fuera de AMC
Out of Warranty,Fuera de Garantía
Outgoing,saliente
Outstanding Amount,Monto Pendiente
Outstanding for {0} cannot be less than zero ({1}),Sobresaliente para {0} no puede ser menor que cero ({1} )
Overhead,gastos generales
Overheads,gastos generales
Overlapping conditions found between:,La superposición de condiciones encontradas entre :
Overview,visión de conjunto
Owned,Propiedad
Owner,propietario
P L A - Cess Portion,PLA - Porción Cess
PL or BS,PL o BS
PO Date,PO Fecha
PO No,PO No
POP3 Mail Server,Servidor de Correo POP3
POP3 Mail Settings,Configuración de Mensajes POP3
POP3 mail server (e.g. pop.gmail.com),Servidor de Correo POP3 (por ejemplo pop.gmail.com )
POP3 server e.g. (pop.gmail.com),Por ejemplo el servidor POP3 ( pop.gmail.com )
POS Setting,POS Ajuste
POS Setting required to make POS Entry,POS de ajuste necesario para hacer la entrada POS
POS Setting {0} already created for user: {1} and company {2},POS Ajuste {0} ya creado para el usuario: {1} y {2} empresa
POS View,POS Ver
PR Detail,Detalle PR
Package Item Details,"Detalles del Contenido del Paquete
"
Package Items,"Contenido del Paquete
"
Package Weight Details,Peso del paquete Detalles
Packed Item,Artículo Empacado
Packed quantity must equal quantity for Item {0} in row {1},Embalado cantidad debe ser igual a la cantidad de elemento {0} en la fila {1}
Packing Details,Detalles del embalaje
Packing List,Lista de embalaje
Packing Slip,El resbalón de embalaje
Packing Slip Item,Packing Slip artículo
Packing Slip Items,Albarán Artículos
Packing Slip(s) cancelled,Slip ( s ) de Embalaje cancelado
Page Break,Salto de página
Page Name,Nombre de la Página
Paid Amount,Cantidad pagada
Paid amount + Write Off Amount can not be greater than Grand Total,Cantidad pagada + Escribir Off La cantidad no puede ser mayor que Gran Total
Pair,Par
Parameter,Parámetro
Parent Account,Cuenta Primaria
Parent Cost Center,Centro de Costo de Padres
Parent Customer Group,Padres Grupo de Clientes
Parent Detail docname,DocNombre Detalle de Padres
Parent Item,Artículo Padre
Parent Item Group,Grupo de Padres del artículo
Parent Item {0} must be not Stock Item and must be a Sales Item,Artículo Padre {0} debe estar Stock punto y debe ser un elemento de Ventas
Parent Party Type,Tipo Partido Padres
Parent Sales Person,Sales Person Padres
Parent Territory,Territorio de Padres
Parent Website Page,Sitio web Padres Page
Parent Website Route,Padres Website Ruta
Parenttype,ParentType
Part-time,Medio Tiempo
Partially Completed,Completó Parcialmente
Partly Billed,Parcialmente Anunciado
Partly Delivered,Parcialmente Entregado
Partner Target Detail,Detalle Target Socio
Partner Type,Tipos de Socios
Partner's Website,Sitio Web del Socio
Party,Parte
Party Account,Cuenta Party
Party Type,Tipo del partido
Party Type Name,Tipo del partido Nombre
Passive,Pasivo
Passport Number,Número de pasaporte
Password,Contraseña
Pay To / Recd From,Pagar a / Recd Desde
Payable,Pagadero
Payables,Cuentas por Pagar
Payables Group,Deudas Grupo
Payment Days,Días de Pago
Payment Due Date,Pago Fecha de Vencimiento
Payment Period Based On Invoice Date,Período de pago basado en Fecha de la factura
Payment Reconciliation,Reconciliación Pago
Payment Reconciliation Invoice,Factura Reconciliación Pago
Payment Reconciliation Invoices,Facturas Reconciliación Pago
Payment Reconciliation Payment,Reconciliación Pago Pago
Payment Reconciliation Payments,Pagos conciliación de pagos
Payment Type,Tipo de Pago
Payment cannot be made for empty cart,El pago no se puede hacer para el carro vacío
Payment of salary for the month {0} and year {1},El pago del salario correspondiente al mes {0} y {1} años
Payments,Pagos
Payments Made,Pagos Realizados
Payments Received,Los pagos recibidos
Payments made during the digest period,Los pagos efectuados durante el período de digestión
Payments received during the digest period,Los pagos recibidos durante el período de digestión
Payroll Settings,Configuración de Nómina
Pending,Pendiente
Pending Amount,Monto Pendiente
Pending Items {0} updated,Elementos Pendientes {0} actualizado
Pending Review,opinión pendiente
Pending SO Items For Purchase Request,A la espera de SO Artículos A la solicitud de compra
Pension Funds,Fondos de Pensiones
Percent Complete,Porcentaje Completado
Percentage Allocation,Porcentaje de asignación de
Percentage Allocation should be equal to 100%,Porcentaje de asignación debe ser igual al 100 %
Percentage variation in quantity to be allowed while receiving or delivering this item.,La variación porcentual de la cantidad que se le permita al recibir o entregar este artículo.
Percentage you are allowed to receive or deliver more against the quantity ordered. For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to receive 110 units.,"Porcentaje que se les permite recibir o entregar más en contra de la cantidad pedida . Por ejemplo : Si se ha pedido 100 unidades. y el subsidio es de 10 %, entonces se le permite recibir 110 unidades."
Performance appraisal.,Evaluación del Desempeño .
Period,Período
Period Closing Voucher,Vale Período de Cierre
Periodicity,Periodicidad
Permanent Address,Dirección Permanente
Permanent Address Is,Dirección permanente es
Permission,Permiso
Personal,Personal
Personal Details,Datos Personales
Personal Email,Correo Electrónico Personal
Pharmaceutical,Farmacéutico
Pharmaceuticals,Productos farmacéuticos
Phone,Teléfono
Phone No,Teléfono No
Piecework,trabajo a destajo
Pincode,pincode
Place of Issue,Lugar de emisión
Plan for maintenance visits.,Plan para las visitas de mantenimiento .
Planned Qty,Cantidad Planificada
"Planned Qty: Quantity, for which, Production Order has been raised, but is pending to be manufactured.","Planificada Cantidad : Cantidad , para lo cual, orden de producción se ha elevado , pero está a la espera de ser fabricados ."
Planned Quantity,Cantidad Planificada
Planning,Planificación
Plant,Planta
Plant and Machinery,Instalaciones técnicas y maquinaria
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 correctamente ya que se añadirá como sufijo a todos los Jefes de Cuenta."
Please Update SMS Settings,Por favor actualizar la configuración de SMS
Please add expense voucher details,"Por favor, añada detalles de gastos de vales"
Please add to Modes of Payment from Setup.,"Por favor, añada a Modos de Pago de Configuración."
Please check 'Is Advance' against Account {0} if this is an advance entry.,"Por favor, consulte ' Es Avance ' contra la cuenta {0} si se trata de una entrada por adelantado."
Please click on 'Generate Schedule',"Por favor, haga clic en ' Generar la Lista de"
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Por favor, haga clic en "" Generar Schedule ' en busca del cuento por entregas añadido para el elemento {0}"
Please click on 'Generate Schedule' to get schedule,"Por favor, haga clic en ' Generar la Lista de conseguir horario"
Please create Customer from Lead {0},"Por favor, cree Cliente de plomo {0}"
Please create Salary Structure for employee {0},"Por favor, cree Estructura salarial para el empleado {0}"
Please create new account from Chart of Accounts.,"Por favor, cree una nueva cuenta de Plan General de Contabilidad ."
Please do NOT create Account (Ledgers) for Customers and Suppliers. They are created directly from the Customer / Supplier masters.,"Por favor, no crean la cuenta ( Libros de contabilidad ) para clientes y proveedores . Son creados directamente de los maestros de cliente / proveedor ."
Please enter 'Expected Delivery Date',"Por favor, introduzca "" la fecha del alumbramiento '"
Please enter 'Is Subcontracted' as Yes or No,"Por favor, introduzca "" se subcontrata "" como Sí o No"
Please enter 'Repeat on Day of Month' field value,Por favor introduce 'Repeat en el Día del Mes ' valor del campo
Please enter Account Receivable/Payable group in company master,Por favor introduce el grupo de cobro / pago de cuentas en master empresa
Please enter Approving Role or Approving User,Por favor introduzca Aprobar Papel o Aprobar usuario
Please enter BOM for Item {0} at row {1},Por favor ingrese la lista de materiales para el punto {0} en la fila {1}
Please enter Company,Por favor introduzca Company
Please enter Cost Center,Por favor introduzca Centro de Costos
Please enter Delivery Note No or Sales Invoice No to proceed,"Por favor, ingrese la nota de entrega o No Factura No para continuar"
Please enter Employee Id of this sales parson,Por favor introduzca Empleado Id de este párroco ventas
Please enter Expense Account,"Por favor, ingrese Cuenta de Gastos"
Please enter Item Code to get batch no,"Por favor, introduzca el código del artículo para obtener lotes no"
Please enter Item Code.,"Por favor, introduzca el código del artículo ."
Please enter Item first,Por favor introduzca Artículo primero
Please enter Maintaince Details first,Por favor introduzca Maintaince Detalles primero
Please enter Master Name once the account is created.,"Por favor , ingrese el nombre una vez que se creó la cuenta ."
Please enter Planned Qty for Item {0} at row {1},Por favor introduzca Planificada Cantidad de elemento {0} en la fila {1}
Please enter Production Item first,Por favor introduzca Artículo Producción primera
Please enter Purchase Receipt No to proceed,Por favor introduzca recibo de compra en No para continuar
Please enter Reference date,Por favor introduzca la fecha de referencia
Please enter Warehouse for which Material Request will be raised,"Por favor introduzca Almacén, bodega en la que se planteará Solicitud de material"
Please enter Write Off Account,Por favor introduce Escriba Off Cuenta
Please enter atleast 1 invoice in the table,Por favor introduzca al menos 1 de facturas en la tabla
Please enter company first,Por favor introduzca compañía primero
Please enter company name first,"Por favor, introduzca nombre de la empresa primero"
Please enter default Unit of Measure,Por favor ingrese unidad de medida predeterminada
Please enter default currency in Company Master,Por favor introduce la moneda por defecto en la empresa principal
Please enter email address,"Por favor, introduzca la dirección de correo electrónico"
Please enter item details,Por favor ingrese los detalles del artículo
Please enter message before sending,Por favor introduce el mensaje antes de enviarlo
Please enter parent account group for warehouse account,Por favor ingrese grupo de cuentas de los padres para la cuenta de depósito
Please enter parent cost center,"Por favor, introduzca el centro de coste de los padres"
Please enter quantity for Item {0},Por favor introduzca la cantidad para el elemento {0}
Please enter relieving date.,Por favor introduzca la fecha aliviar .
Please enter sales order in the above table,Por favor ingrese para ventas en la tabla anterior
Please enter valid Company Email,Por favor introduzca válida Empresa Email
Please enter valid Email Id,Por favor introduzca válido Email Id
Please enter valid Personal Email,Por favor introduzca válido Email Personal
Please enter valid mobile nos,Por favor introduzca nos móviles válidos
Please find attached Sales Invoice #{0},Se adjunta la factura de venta # {0}
Please install dropbox python module,"Por favor, instale el módulo python dropbox"
Please mention no of visits required,"¡Por favor, no de visitas requeridas"
Please pull items from Delivery Note,"Por favor, tire de los artículos en la nota de entrega"
Please save the Newsletter before sending,"Por favor, guarde el boletín antes de enviar"
Please save the document before generating maintenance schedule,"Por favor, guarde el documento antes de generar el programa de mantenimiento"
Please see attachment,"Por favor, véase el documento adjunto"
Please select Bank Account,Por favor seleccione la cuenta bancaria
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,Por favor seleccione Carry Forward si también desea incluir el saldo del ejercicio anterior deja a este año fiscal
Please select Category first,Por favor seleccione primero Categoría
Please select Charge Type first,"Por favor, seleccione Tipo de Cargo primero"
Please select Fiscal Year,"Por favor, seleccione el año fiscal"
Please select Group or Ledger value,"Por favor, seleccione Grupo o Ledger valor"
Please select Incharge Person's name,"Por favor, seleccione el nombre de InCharge persona"
Please select Invoice Type and Invoice Number in atleast one row,"Por favor, seleccione Factura Tipo y número de factura en al menos una fila"
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Sales BOM","Por favor, seleccione el ítem donde "" Es Stock Item"" es "" No"" y ""¿ Punto de Ventas"" es "" Sí "", y no hay otra lista de materiales de ventas"
Please select Price List,"Por favor, seleccione Lista de precios"
Please select Start Date and End Date for Item {0},"Por favor, seleccione Fecha de inicio y Fecha de finalización para el punto {0}"
Please select Time Logs.,Por favor seleccione registros de tiempo.
Please select a csv file,"Por favor, seleccione un archivo csv"
Please select a valid csv file with data,"Por favor, seleccione un archivo csv válidos con datos"
Please select a value for {0} quotation_to {1},"Por favor, seleccione un valor para {0} {1} quotation_to"
"Please select an ""Image"" first","Por favor seleccione una "" imagen"" primera"
Please select charge type first,Por favor seleccione el tipo de carga primero
Please select company first,Por favor seleccione la empresa primero
Please select company first.,Por favor seleccione la empresa en primer lugar.
Please select item code,"Por favor, seleccione el código del artículo"
Please select month and year,Por favor seleccione el mes y el año
Please select prefix first,"Por favor, selecciona primero el prefijo"
Please select the document type first,Por favor seleccione el tipo de documento primero
Please select weekly off day,Por favor seleccione el día libre semanal
Please select {0},"Por favor, seleccione {0}"
Please select {0} first,"Por favor, seleccione {0} primero"
Please select {0} first.,"Por favor, seleccione {0} primero."
Please set Dropbox access keys in your site config,"Por favor, establece las claves de acceso de Dropbox en tu config sitio"
Please set Google Drive access keys in {0},"Por favor, establece las claves de acceso de Google Drive en {0}"
Please set default Cash or Bank account in Mode of Payment {0},"Por favor, ajuste de cuenta bancaria Efectivo por defecto o en el modo de pago {0}"
Please set default value {0} in Company {0},"Por favor, establece el valor por defecto {0} de la Compañía {0}"
Please set {0},"Por favor, configure {0}"
Please setup Employee Naming System in Human Resource > HR Settings,"Por favor, instalación del sistema de nombres de los empleados en Recursos Humanos > Configuración de recursos humanos"
Please setup numbering series for Attendance via Setup > Numbering Series,"Por favor, series de numeración de configuración para la asistencia a través de Configuración > Series de numeración"
Please setup your chart of accounts before you start Accounting Entries,"Por favor, configure su plan de cuentas antes de empezar los comentarios de Contabilidad"
Please specify,"Por favor, especifique"
Please specify Company,"Por favor, especifique la empresa"
Please specify Company to proceed,"Por favor, especifique la empresa para proceder"
Please specify Default Currency in Company Master and Global Defaults,"Por favor, especifique Moneda predeterminada en la empresa principal y los valores predeterminados globales"
Please specify a,"Por favor, especifique un"
Please specify a valid 'From Case No.',Especifique un válido ' De Caso No. '
Please specify a valid Row ID for {0} in row {1},Especifique un ID de fila válido para {0} en la fila {1}
Please specify either Quantity or Valuation Rate or both,Por favor especificar Cantidad o valoración de tipo o ambos
Please submit to update Leave Balance.,"Por favor, envíe actualizar Dejar Balance."
Plot,parcela
Plot By,Terreno Por
Point of Sale,Punto de Venta
Point-of-Sale Setting,Point -of -Sale Marco
Post Graduate,Postgrado
Postal,Postal
Postal Expenses,Gastos Postales
Posting Date,Fecha de publicación
Posting Time,Hora de publicación
Posting date and posting time is mandatory,Fecha de publicación y el envío tiempo es obligatorio
Posting timestamp must be after {0},Fecha y hora de publicación deberá ser posterior a {0}
Potential opportunities for selling.,Posibles oportunidades para vender .
Preferred Billing Address,Preferida Dirección de Facturación
Preferred Shipping Address,Preferida Dirección Envío
Prefix,Prefijo
Present,Presente
Prevdoc DocType,DocType Prevdoc
Prevdoc Doctype,Doctype Prevdoc
Preview,Vista Previa
Previous,Anterior
Previous Work Experience,Experiencia laboral previa
Price,Precio
Price / Discount,Precio / Descuento
Price List,Lista de Precios
Price List Currency,Lista de precios de divisas
Price List Currency not selected,Lista de precios de divisas no seleccionado
Price List Exchange Rate,Lista de precios Tipo de Cambio
Price List Name,Lista de Precios Nombre
Price List Rate,Lista de Precios Tarifa
Price List Rate (Company Currency),Lista de precios Tarifa ( Compañía de divisas )
Price List master.,Master Lista de precios .
Price List must be applicable for Buying or Selling,Lista de precios debe ser aplicable para comprar o vender
Price List not selected,Lista de precios no seleccionado
Price List {0} is disabled,Lista de precios {0} está deshabilitado
Price or Discount,Precio o Descuento
Pricing Rule,Regla de Precios
Pricing Rule Help,Ayuda de Regla de Precios
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Regla precios se selecciona por primera vez basado en 'Aplicar On' de campo, que puede ser elemento, elemento de grupo o Marca."
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Regla de precios está sobrescribir Precio de lista / definir porcentaje de descuento, sobre la base de algunos criterios."
Pricing Rules are further filtered based on quantity.,Reglas de las tarifas se filtran más basado en la cantidad.
Print Format Style,Formato de impresión Estilo
Print Heading,Imprimir Rubro
Print Without Amount,Imprimir sin Importe
Print and Stationary,Impresión y Papelería
Printing and Branding,Prensa y Branding
Priority,Prioridad
Private Equity,Private Equity
Privilege Leave,Privilege Dejar
Probation,libertad condicional
Process Payroll,Nómina de Procesos
Produced,Producido
Produced Quantity,Cantidad producida
Product Enquiry,Consulta de producto
Production,Producción
Production Order,Orden de Producción
Production Order status is {0},Estado de la orden de producción es de {0}
Production Order {0} must be cancelled before cancelling this Sales Order,Orden de producción {0} debe ser cancelado antes de cancelar esta orden Ventas
Production Order {0} must be submitted,Orden de producción {0} debe ser presentado
Production Orders,Órdenes de Producción
Production Orders in Progress,Órdenes de producción en Construcción
Production Plan Item,Plan de Producción de artículos
Production Plan Items,Elementos del Plan de Producción
Production Plan Sales Order,Plan de Producción Ventas Orden
Production Plan Sales Orders,Plan de Producción de órdenes de venta
Production Planning Tool,Herramienta de Planificación de la producción
Products,Productos
"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Los productos se clasifican por peso-edad en las búsquedas por defecto. Más del peso-edad , más alto es el producto aparecerá en la lista."
Professional Tax,Profesional de Impuestos
Profit and Loss,Pérdidas y Ganancias
Profit and Loss Statement,Estado de Pérdidas y Ganancias
Project,Proyecto
Project Costing,Proyecto de Costos
Project Details,Detalles del Proyecto
Project Manager,Gerente de Proyectos
Project Milestone,Hito del Proyecto
Project Milestones,Hitos del Proyecto
Project Name,Nombre del proyecto
Project Start Date,Fecha de inicio del Proyecto
Project Type,Tipo de Proyecto
Project Value,Valor del Proyecto
Project activity / task.,Actividad del Proyecto / Tarea.
Project master.,Master de Proyectos.
Project will get saved and will be searchable with project name given,Proyecto conseguirá guardará y se podrá buscar con el nombre de proyecto determinado
Project wise Stock Tracking,Sabio proyecto Stock Tracking
Project-wise data is not available for Quotation,Datos del proyecto - sabio no está disponible para la cita
Projected,Proyectado
Projected Qty,Cantidad Projectada
Projects,Proyectos
Projects & System,Proyectos y Sistema
Prompt for Email on Submission of,Preguntar por el correo electrónico en la presentación de
Proposal Writing,Redacción de Propuestas
Provide email id registered in company,Proporcionar correo electrónico de identificación registrado en la compañía
Provisional Profit / Loss (Credit),Beneficio / Pérdida (Crédito) Provisional 
Public,Público
Published on website at: {0},Publicado en el sitio web en: {0}
Publishing,Publicación
Pull sales orders (pending to deliver) based on the above criteria,Tire de las órdenes de venta (pendiente de entregar ) sobre la base de los criterios anteriores
Purchase,Compra
Purchase / Manufacture Details,Detalles de compra / Fábricas
Purchase Analytics,Analitico de Compras
Purchase Common,Compra Común
Purchase Details,Detalles de Compra
Purchase Discounts,Descuentos sobre Compra
Purchase Invoice,Factura de Compra
Purchase Invoice Advance,Compra Factura Anticipada
Purchase Invoice Advances,Avances Compra Factura
Purchase Invoice Item,Factura de compra del artículo
Purchase Invoice Trends,Compra Tendencias Factura
Purchase Invoice {0} is already submitted,Compra Factura {0} ya está presentado
Purchase Order,Orden de Compra
Purchase Order Item,Orden de compra de artículos
Purchase Order Item No,Orden de compra del artículo
Purchase Order Item Supplied,Orden de compra del artículo suministrado
Purchase Order Items,Compra Items
Purchase Order Items Supplied,Compra Items suministrados
Purchase Order Items To Be Billed,Artículos de orden de compra a facturar
Purchase Order Items To Be Received,Los productos que compra para poder ser recibidas
Purchase Order Message,Orden de Compra Mensaje
Purchase Order Required,Orden de Compra Requerido
Purchase Order Trends,Compra Tendencias Solicitar
Purchase Order number required for Item {0},Número de orden de compra se requiere para el elemento {0}
Purchase Order {0} is 'Stopped',Orden de Compra {0} ' Detenido '
Purchase Order {0} is not submitted,Orden de Compra {0} no se presenta
Purchase Orders given to Suppliers.,Órdenes de Compra otorgados a Proveedores .
Purchase Receipt,Recibo de Compra
Purchase Receipt Item,Recibo de compra del artículo
Purchase Receipt Item Supplied,Recibo de compra del artículo suministrado
Purchase Receipt Item Supplieds,Compra de recibos Supplieds artículo
Purchase Receipt Items,Compra de recibos Artículos
Purchase Receipt Message,Recibo de compra mensaje
Purchase Receipt No,Recibo de compra No
Purchase Receipt Required,Recibo de compra requerida
Purchase Receipt Trends,Tendencias de Compra de recibos
Purchase Receipt number required for Item {0},Número de recibo de compra requerida para el punto {0}
Purchase Receipt {0} is not submitted,Recibo de compra {0} no se presenta
Purchase Register,Compra Registrarse
Purchase Return,Compra retorno
Purchase Returned,compra vuelta
Purchase Taxes and Charges,Impuestos de Compra y Cargos
Purchase Taxes and Charges Master,Impuestos de Compra y Cargos Maestro
Purchse Order number required for Item {0},Número de Orden de Compra se requiere para el elemento {0}
Purpose,Propósito
Purpose must be one of {0},Propósito debe ser uno de {0}
QA Inspection,Control de Calidad
Qty,Cantidad
Qty Consumed Per Unit,Cantidad consumida por unidad
Qty To Manufacture,Cant. Para Fabricación
Qty as per Stock UOM,Cantidad de acuerdo de la UOM
Qty to Deliver,Cantidad para ofrecer
Qty to Order,Cantidad de pedido
Qty to Receive,Cantidad a Recibir
Qty to Transfer,Cantidad de Transferencia
Qualification,calificación
Quality,Calidad
Quality Inspection,Inspección de Calidad
Quality Inspection Parameters,Parámetros de Inspección de Calidad
Quality Inspection Reading,Inspección Reading Quality
Quality Inspection Readings,Lecturas de Inspección de Calidad
Quality Inspection required for Item {0},Inspección de la calidad requerida para el punto {0}
Quality Management,Gestión de la Calidad
Quantity,Cantidad
Quantity Requested for Purchase,Cantidad solicitada para la compra
Quantity and Rate,Cantidad y Cambio
Quantity and Warehouse,Cantidad y Almacén
Quantity cannot be a fraction in row {0},La cantidad no puede ser una fracción en la fila {0}
Quantity for Item {0} must be less than {1},Cantidad de elemento {0} debe ser menor de {1}
Quantity in row {0} ({1}) must be same as manufactured quantity {2},Cantidad en la fila {0} ({1} ) debe ser la misma que la cantidad fabricada {2}
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Cantidad del punto obtenido después de la fabricación / reempaque de cantidades determinadas de materias primas
Quantity required for Item {0} in row {1},Cantidad requerida para el punto {0} en la fila {1}
Quarter,Trimestre
Quarterly,Trimestral
Quick Help,Ayuda Rápida
Quotation,Nota
Quotation Item,Cotización del artículo
Quotation Items,Cotización Artículos
Quotation Lost Reason,Cita Perdida Razón
Quotation Message,Cita Mensaje
Quotation To,Cita Para
Quotation Trends,Tendencias de Cotización
Quotation {0} is cancelled,Cotización {0} se cancela
Quotation {0} not of type {1},Cotización {0} no es de tipo {1}
Quotations received from Suppliers.,Citas recibidas de los proveedores .
Quotes to Leads or Customers.,Cotizaciones a conductores oa los clientes.
Raise Material Request when stock reaches re-order level,Levante Solicitud de material cuando la acción alcanza el nivel de re- orden
Raised By,Raised By
Raised By (Email),Raised By (Email )
Random,azar
Range,alcance
Rate,velocidad
Rate ,Velocidad
Rate (%),Cambio (% )
Rate (Company Currency),Tarifa ( Compañía de divisas )
Rate Of Materials Based On,Cambio de materiales basados ​​en
Rate and Amount,Ritmo y la cuantía
Rate at which Customer Currency is converted to customer's base currency,Velocidad a la que la Moneda se convierte a la moneda base del cliente
Rate at which Price list currency is converted to company's base currency,Grado en el que la lista de precios en moneda se convierte en la moneda base de la compañía
Rate at which Price list currency is converted to customer's base currency,Grado en el que la lista de precios en moneda se convierte en la moneda base del cliente
Rate at which customer's currency is converted to company's base currency,Velocidad a la que la moneda de los clientes se convierte en la moneda base de la compañía
Rate at which supplier's currency is converted to company's base currency,Velocidad a la que la moneda de proveedor se convierte en la moneda base de la compañía
Rate at which this tax is applied,Velocidad a la que se aplica este impuesto
Raw Material,materia prima
Raw Material Item Code,Materia Prima Código del artículo
Raw Materials Supplied,Materias primas suministradas
Raw Materials Supplied Cost,Coste materias primas suministradas
Raw material cannot be same as main Item,La materia prima no puede ser la misma que del artículo principal
Re-Order Level,Reordenar Nivel
Re-Order Qty,Re- Online con su nombre
Re-order,Reordenar
Re-order Level,Reordenar Nivel
Re-order Qty,Reordenar Cantidad
Read,Lectura
Reading 1,Lectura 1
Reading 10,Lectura 10
Reading 2,Lectura 2
Reading 3,Lectura 3
Reading 4,Lectura 4
Reading 5,Lectura 5
Reading 6,Lectura 6
Reading 7,Lectura 7
Reading 8,Lectura 8
Reading 9,Lectura 9
Real Estate,Bienes Raíces
Reason,Razón
Reason for Leaving,Razones para dejar el
Reason for Resignation,Motivo de la renuncia
Reason for losing,Razón por la pérdida de
Recd Quantity,Recd Cantidad
Receivable,cuenta por cobrar
Receivable / Payable account will be identified based on the field Master Type,Cuenta por cobrar / pagar será identificado basándose en el campo Type Master
Receivables,Cuentas a cobrar
Receivables / Payables,Cobrar / pagar
Receivables Group,cobrar Grupo
Received Date,Fecha de recepción
Received Items To Be Billed,Elementos recibidos a facturar
Received Qty,recibido Cantidad
Received and Accepted,Recibidos y aceptados
Receiver List,Lista de receptores
Receiver List is empty. Please create Receiver List,"Lista de receptores está vacía. Por favor, cree Lista de receptores"
Receiver Parameter,receptor de parámetros
Recipients,destinatarios
Reconcile,conciliar
Reconciliation Data,Reconciliación de Datos
Reconciliation HTML,Reconciliación HTML
Reconciliation JSON,Reconciliación JSON
Record item movement.,Movimiento artículo Record.
Recurring Id,recurrente Id
Recurring Invoice,factura recurrente
Recurring Type,Tipo recurrente
Reduce Deduction for Leave Without Pay (LWP),Reducir Deducción por licencia sin sueldo ( LWP )
Reduce Earning for Leave Without Pay (LWP),Reduzca la ganancia por licencia sin sueldo ( LWP )
Ref,Referencia
Ref Code,Código Ref
Ref SQ,Ref SQ
Reference,referencia
Reference #{0} dated {1},Referencia # {0} de fecha {1}
Reference Date,Fecha de Referencia
Reference Name,Referencia Nombre
Reference No & Reference Date is required for {0},Se requiere de Referencia y referencia Fecha de {0}
Reference No is mandatory if you entered Reference Date,Referencia No es obligatorio si introdujo Fecha de referencia
Reference Number,Número de referencia
Reference Row #,Referencia Row #
Refresh,Actualizar
Registration Details,Detalles de registro
Registration Info,Información de registro
Rejected,rechazado
Rejected Quantity,Cantidad Rechazada
Rejected Serial No,Rechazado Serial No
Rejected Warehouse,Almacén Rechazado
Rejected Warehouse is mandatory against regected item,Almacén Rechazado es obligatorio en la partida regected
Relation,relación
Relieving Date,Aliviar Fecha
Relieving Date must be greater than Date of Joining,Aliviar fecha debe ser mayor que Fecha de acceso
Remark,observación
Remarks,observaciones
Remarks Custom,Observaciones Custom
Rename,rebautizar
Rename Log,Cambiar el nombre de sesión
Rename Tool,Cambiar el nombre de la herramienta
Rent Cost,Renta Costo
Rent per hour,Alquiler por horas
Rented,alquilado
Repeat on Day of Month,Repita el Día del mes
Replace,reemplazar
Replace Item / BOM in all BOMs,Reemplazar elemento / lista de materiales en todas las listas de materiales
Replied,replicó
Report Date,Fecha del informe
Report Type,Tipo de informe
Report Type is mandatory,Tipo de informe es obligatorio
Reports to,Informes al
Reqd By Date,Reqd Por Fecha
Reqd by Date,Reqd Fecha
Request Type,Tipo de solicitud
Request for Information,Solicitud de Información
Request for purchase.,Solicitar a la venta.
Requested,Requerido
Requested For,Solicitados para
Requested Items To Be Ordered,Artículos solicitados será condenada
Requested Items To Be Transferred,Artículos solicitados para ser transferido
Requested Qty,Cant. Solicitada
"Requested Qty: Quantity requested for purchase, but not ordered.","Solicitado Cantidad : Cantidad solicitada para la compra, pero no ordenado ."
Requests for items.,Las solicitudes de artículos.
Required By,Requerido por
Required Date,Fecha Requerida
Required Qty,Cant. Necesaria
Required only for sample item.,Sólo es necesario para el artículo de muestra .
Required raw materials issued to the supplier for producing a sub - contracted item.,Las materias primas necesarias emitidas al proveedor para la producción de un sub - ítem contratado .
Research,Investigación
Research & Development,Investigación y Desarrollo
Researcher,Investigador
Reseller,Reseller
Reserved,Reservado
Reserved Qty,Cant. Reservada
"Reserved Qty: Quantity ordered for sale, but not delivered.","Reservados Cantidad : Cantidad a pedir a la venta , pero no entregado."
Reserved Quantity,Cantidad Reservada
Reserved Warehouse,Almacén Reservado
Reserved Warehouse in Sales Order / Finished Goods Warehouse,Almacén reservado en ventas por pedido / Finalizado Productos Almacén
Reserved Warehouse is missing in Sales Order,Almacén Reservado falta de órdenes de venta
Reserved Warehouse required for stock Item {0} in row {1},Almacén Reservado requerido para la acción del artículo {0} en la fila {1}
Reserved warehouse required for stock item {0},Almacén Reservado requerido para la acción del artículo {0}
Reserves and Surplus,Reservas y Superávit
Reset Filters,Restablecer los Filtros
Resignation Letter Date,Fecha de Carta de Renuncia 
Resolution,Resolución
Resolution Date,Fecha de Resolución
Resolution Details,Detalles de la resolución
Resolved By,Resuelto por
Rest Of The World,Resto del mundo
Retail,venta al por menor
Retail & Wholesale,Venta al por menor y al por mayor
Retailer,detallista
Review Date,Fecha de revisión
Rgt,Rgt
Role Allowed to edit frozen stock,Papel animales de editar stock congelado
Role that is allowed to submit transactions that exceed credit limits set.,Papel que se permite presentar las transacciones que excedan los límites de crédito establecidos .
Root Type,Tipo Root
Root Type is mandatory,Tipo Root es obligatorio
Root account can not be deleted,Cuenta root no se puede borrar
Root cannot be edited.,Root no se puede editar .
Root cannot have a parent cost center,Raíz no puede tener un centro de costes de los padres
Rounded Off,redondeado
Rounded Total,total redondeado
Rounded Total (Company Currency),Total redondeado ( Compañía de divisas )
Row # ,Fila #
Row # {0}: ,
Row #{0}: Ordered qty can not less than item's minimum order qty (defined in item master).,Fila # {0}: Cantidad ordenada no puede menos que mínima cantidad de pedido de material (definido en maestro de artículos).
Row #{0}: Please specify Serial No for Item {1},"Fila # {0}: Por favor, especifique No para la serie de artículos {1}"
Row {0}: Account does not match with \						Purchase Invoice Credit To account,Fila {0}: Cuenta no coincide con \ Compra Factura de Crédito Para tener en cuenta
Row {0}: Account does not match with \						Sales Invoice Debit To account,Fila {0}: Cuenta no coincide con \ Factura Débito Para tener en cuenta
Row {0}: Conversion Factor is mandatory,Fila {0}: Factor de conversión es obligatoria
Row {0}: Credit entry can not be linked with a Purchase Invoice,Fila {0}: entrada de crédito no puede vincularse con una factura de compra
Row {0}: Debit entry can not be linked with a Sales Invoice,Fila {0}: entrada de débito no se puede vincular con una factura de venta
Row {0}: Payment amount must be less than or equals to invoice outstanding amount. Please refer Note below.,"Fila {0}: Cantidad de pagos debe ser menor o igual a facturar cantidad pendiente. Por favor, consulte la nota a continuación."
Row {0}: Qty is mandatory,Fila {0}: Cantidad es obligatorio
"Row {0}: Qty not avalable in warehouse {1} on {2} {3}.					Available Qty: {4}, Transfer Qty: {5}","Fila {0}: Cantidad no avalable en almacén {1} del {2} {3}. Disponible Cantidad: {4}, Traslado Cantidad: {5}"
"Row {0}: To set {1} periodicity, difference between from and to date \						must be greater than or equal to {2}","Fila {0}: Para establecer {1} periodicidad, diferencia entre desde y hasta la fecha \ debe ser mayor o igual que {2}"
Row {0}:Start Date must be before End Date,Fila {0}: Fecha de inicio debe ser anterior Fecha de finalización
Rules for adding shipping costs.,Reglas para la adición de los gastos de envío .
Rules for applying pricing and discount.,Reglas para la aplicación de precios y descuentos .
Rules to calculate shipping amount for a sale,Reglas para calcular el importe de envío para una venta
S.O. No.,S.O. No.
SHE Cess on Excise,SHE Cess sobre Impuestos Especiales
SHE Cess on Service Tax,SHE CESS en Tax Service
SHE Cess on TDS,SHE CESS en TDS
SMS Center,Centro SMS
SMS Gateway URL,SMS Gateway URL
SMS Log,SMS Iniciar sesión
SMS Parameter,Parámetro SMS
SMS Sender Name,SMS Sender Name
SMS Settings,Ajustes de SMS
SO Date,SO Fecha
SO Pending Qty,SO Pendiente Cantidad
SO Qty,SO Cantidad
Salary,Salario
Salary Information,La información sobre sueldos
Salary Manager,Administrador de Salario
Salary Mode,Modo Salario
Salary Slip,Slip Salario
Salary Slip Deduction,Deducción nómina
Salary Slip Earning,Ganar nómina
Salary Slip of employee {0} already created for this month,Nómina de empleado {0} ya creado para este mes
Salary Structure,Estructura Salarial
Salary Structure Deduction,Estructura salarial Deducción
Salary Structure Earning,Estructura salarial Earning
Salary Structure Earnings,Estructura salarial Ganancias
Salary breakup based on Earning and Deduction.,Ruptura Salario basado en la ganancia y la deducción.
Salary components.,Componentes salariales.
Salary template master.,Plantilla maestra Salario .
Sales,Venta
Sales Analytics,Análisis de Ventas
Sales BOM,BOM Ventas
Sales BOM Help,BOM Ventas Ayuda
Sales BOM Item,BOM Sales Item
Sales BOM Items,BOM Ventas Artículos
Sales Browser,Navegador de Ventas
Sales Details,Detalles de Ventas
Sales Discounts,Descuentos sobre Ventas
Sales Email Settings,Configuración de Ventas Email
Sales Expenses,Gastos de Ventas
Sales Extras,Extras Ventas
Sales Funnel,Embudo de Ventas
Sales Invoice,Factura de Venta
Sales Invoice Advance,Factura Anticipadas
Sales Invoice Item,La factura de venta de artículos
Sales Invoice Items,Artículos factura de venta
Sales Invoice Message,Factura Mensaje
Sales Invoice No,Factura de venta No
Sales Invoice Trends,Ventas Tendencias Factura
Sales Invoice {0} has already been submitted,Factura {0} ya se ha presentado
Sales Invoice {0} must be cancelled before cancelling this Sales Order,Factura {0} debe ser cancelado antes de cancelar esta orden Ventas
Sales Order,Ordenes de Venta
Sales Order Date,Órdenes de venta Fecha
Sales Order Item,Solicitar Sales Item
Sales Order Items,Solicitar Sales Artículos
Sales Order Message,Sales Order Mensaje
Sales Order No,Ventas de orden
Sales Order Required,Ventas orden requerido
Sales Order Trends,Tendencias Ventas Solicitar
Sales Order required for Item {0},Órdenes de venta requerido para el punto {0}
Sales Order {0} is not submitted,Órdenes de venta {0} no se presenta
Sales Order {0} is not valid,Órdenes de venta {0} no es válido
Sales Order {0} is stopped,Órdenes de venta {0} se detiene
Sales Partner,Socio de ventas
Sales Partner Name,Nombre Sales Partner
Sales Partner Target,Ventas objetivo Socio
Sales Partners Commission,Puntos de ventas en Comisión
Sales Person,Sales Person
Sales Person Name,Sales Person Name
Sales Person Target Variance Item Group-Wise,Sales Person Target Varianza Artículo Group- Wise
Sales Person Targets,Objetivos persona de las ventas
Sales Person-wise Transaction Summary,Person- sabio Ventas Resumen de transacciones
Sales Register,Ventas Registro
Sales Return,Volver Ventas
Sales Returned,Obtenidos Ventas
Sales Taxes and Charges,Los impuestos y cargos de venta
Sales Taxes and Charges Master,Los impuestos y cargos de venta Maestro
Sales Team,Equipo de Ventas
Sales Team Details,Detalles del equipo de ventas
Sales Team1,Team1 Ventas
Sales and Purchase,Ventas y Compras
Sales campaigns.,Campañas de ventas.
Salutation,Saludo
Sample Size,Tamaño de la muestra
Sanctioned Amount,importe sancionado
Saturday,Sábado
Schedule,Horario
Schedule Date,Horario Fecha
Schedule Details,Agenda Detalles
Scheduled,Programado
Scheduled Date,Fecha prevista
Scheduled to send to {0},Programado para enviar a {0}
Scheduled to send to {0} recipients,Programado para enviar a {0} destinatarios
Scheduler Failed Events,Eventos Scheduler fallidos
School/University,Escuela / Universidad
Score (0-5),Puntuación ( 0-5)
Score Earned,puntuación obtenida
Score must be less than or equal to 5,Puntuación debe ser menor o igual a 5
Scrap %,Scrap %
Seasonality for setting budgets.,Estacionalidad de establecer presupuestos.
Secretary,Secretario
Secured Loans,Préstamos Garantizados
Securities & Commodity Exchanges,Valores y Bolsas de Productos
Securities and Deposits,Valores y Depósitos
"See ""Rate Of Materials Based On"" in Costing Section","Consulte "" Cambio de materiales a base On"" en la sección Cálculo del coste"
"Select ""Yes"" for sub - contracting items","Seleccione "" Sí"" para el sub - contratación de artículos"
"Select ""Yes"" if this item is used for some internal purpose in your company.","Seleccione "" Sí"" si este artículo se utiliza para algún propósito interno de su empresa."
"Select ""Yes"" if this item represents some work like training, designing, consulting etc.","Seleccione "" Sí"" si este artículo representa un poco de trabajo al igual que la formación, el diseño, consultoría , etc"
"Select ""Yes"" if you are maintaining stock of this item in your Inventory.","Seleccione "" Sí"" 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 "" Sí"" si usted suministra materias primas a su proveedor para la fabricación de este artículo."
Select Brand...,Seleccionar Marca ...
Select Budget Distribution to unevenly distribute targets across months.,Seleccione Asignaciones para distribuir de manera desigual a través de objetivos meses .
"Select Budget Distribution, if you want to track based on seasonality.","Seleccione Presupuesto Distribución , si desea realizar un seguimiento basado en la estacionalidad."
Select Company...,Seleccione la empresa ...
Select DocType,Seleccione tipo de documento
Select Fiscal Year...,Seleccione el año fiscal ...
Select Items,Seleccione Artículos
Select Project...,Seleccionar Proyecto ...
Select Purchase Receipts,Seleccionar Compra Receipts
Select Sales Orders,Selección de órdenes de venta
Select Sales Orders from which you want to create Production Orders.,Seleccione órdenes de venta a partir del cual desea crear órdenes de producción.
Select Time Logs and Submit to create a new Sales Invoice.,Seleccionar registros de tiempo e Presentar después de crear una nueva factura de venta .
Select Transaction,Seleccione Transacción
Select Warehouse...,Seleccione Almacén ...
Select Your Language,Seleccione su idioma
Select account head of the bank where cheque was deposited.,Seleccione la cuenta la cabeza del banco donde cheque fue depositado .
Select company name first.,Seleccionar nombre de la empresa en primer lugar.
Select template from which you want to get the Goals,Seleccione la plantilla de la que usted desea conseguir los Objetivos de
Select the Employee for whom you are creating the Appraisal.,Seleccione el empleado para el que está creando la Evaluación .
Select the period when the invoice will be generated automatically,Seleccione el período en que la factura se generará de forma automática
Select the relevant company name if you have multiple companies,Seleccione el nombre de sociedades correspondiente si tiene varias empresas
Select the relevant company name if you have multiple companies.,Seleccione el nombre de sociedades correspondiente si tiene varias empresas .
Select who you want to send this newsletter to,Seleccione a quién desea enviar este boletín a
Select your home country and check the timezone and currency.,Seleccione su país de origen y comprobar la zona horaria y la moneda.
"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Al seleccionar "" Sí"" permitirá que este tema aparezca en la Orden de Compra , recibo de compra ."
"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","Al seleccionar "" Sí "" permitirá este artículo para averiguar 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.","Al seleccionar "" Sí"" le permitirá crear la lista de materiales que muestran la materia prima y los costos operativos incurridos en la fabricación de este artículo."
"Selecting ""Yes"" will allow you to make a Production Order for this item.","Al seleccionar "" Sí "" permitirá que usted haga una orden de producción por este concepto."
"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.","Al seleccionar "" Sí"" le dará una identidad única a cada entidad de este artículo que se puede ver en la serie No amo."
Selling,Ventas
Selling Settings,La venta de Ajustes
"Selling must be checked, if Applicable For is selected as {0}","Selling debe comprobar, si se selecciona aplicable Para que {0}"
Send,Enviar
Send Autoreply,Enviar Respuesta automática
Send Email,Enviar Email
Send From,Enviar Desde
Send Notifications To,Enviar notificaciones a
Send Now,Enviar ahora
Send SMS,Enviar SMS
Send To,Enviar a
Send To Type,Enviar a Teclear
Send mass SMS to your contacts,Enviar SMS masivo a sus contactos
Send to this list,Enviar a esta lista
Sender Name,Nombre del remitente
Sent On,Enviado Por
Separate production order will be created for each finished good item.,Para la producción por separado se crea para cada buen artículo terminado.
Serial No,No de orden
Serial No / Batch,N º de serie / lote
Serial No Details,Serial No Detalles
Serial No Service Contract Expiry,Número de orden de servicio Contrato de caducidad
Serial No Status,Número de orden Estado
Serial No Warranty Expiry,Número de orden de caducidad Garantía
Serial No is mandatory for Item {0},No de serie es obligatoria para el elemento {0}
Serial No {0} created,Número de orden {0} creado
Serial No {0} does not belong to Delivery Note {1},Número de orden {0} no pertenece a la nota de entrega {1}
Serial No {0} does not belong to Item {1},Número de orden {0} no pertenece al elemento {1}
Serial No {0} does not belong to Warehouse {1},Número de orden {0} no pertenece al Almacén {1}
Serial No {0} does not exist,Número de orden {0} no existe
Serial No {0} has already been received,Número de orden {0} ya se ha recibido
Serial No {0} is under maintenance contract upto {1},Número de orden {0} tiene un contrato de mantenimiento hasta {1}
Serial No {0} is under warranty upto {1},Número de orden {0} está en garantía hasta {1}
Serial No {0} not in stock,Número de orden {0} no está en stock
Serial No {0} quantity {1} cannot be a fraction,Número de orden {0} {1} cantidad no puede ser una fracción
Serial No {0} status must be 'Available' to Deliver,"Número de orden {0} Estado debe ser "" disponible "" para entregar"
Serial Nos Required for Serialized Item {0},Serie n Necesario para artículo serializado {0}
Serial Number Series,Número de Serie Serie
Serial number {0} entered more than once,Número de serie {0} entraron más de una vez
Serialized Item {0} cannot be updated \					using Stock Reconciliation,Artículo Serialized {0} no se puede actualizar \ mediante Stock Reconciliación
Series,Serie
Series List for this Transaction,Lista de series para esta transacción
Series Updated,Series Actualizado
Series Updated Successfully,Serie actualizado correctamente
Series is mandatory,Serie es obligatorio
Series {0} already used in {1},Serie {0} ya se utiliza en {1}
Service,Servicio
Service Address,Dirección del Servicio
Service Tax,Impuestos de Servicio
Services,Servicios
Set,conjunto
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Establecer valores predeterminados , como empresa , vigencia actual año fiscal , etc"
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Establecer presupuestos - Grupo sabio artículo en este Territorio. También puede incluir la estacionalidad mediante el establecimiento de la Distribución .
Set Status as Available,Estado Establecer como disponible
Set as Default,Establecer como predeterminado
Set as Lost,Establecer como Perdidos
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 objetivos artículo grupo que tienen para este vendedor.
Setting Account Type helps in selecting this Account in transactions.,Ajuste del tipo de cuenta le ayuda en la selección de esta cuenta en las transacciones.
Setting this Address Template as default as there is no other default,Al establecer esta plantilla de dirección por defecto ya que no hay otra manera predeterminada
Setting up...,Configuración ...
Settings,Configuración
Settings for HR Module,Ajustes para el Módulo de Recursos Humanos
"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""","Ajustes para extraer los solicitantes de empleo de un buzón por ejemplo, "" jobs@example.com """
Setup,Configuración
Setup Already Complete!!,Configuración completa !
Setup Complete,Configuración completa
Setup SMS gateway settings,Configuración de puerta de enlace de configuración de SMS
Setup Series,Serie de configuración
Setup Wizard,Asistente de configuración
Setup incoming server for jobs email id. (e.g. jobs@example.com),Configuración del servidor de correo entrante para los trabajos de identificación del email . (por ejemplo jobs@example.com )
Setup incoming server for sales email id. (e.g. sales@example.com),Configuración del servidor de correo entrante de correo electrónico de identificación de las ventas. (por ejemplo sales@example.com )
Setup incoming server for support email id. (e.g. support@example.com),Configuración del servidor de correo entrante para el apoyo de id de correo electrónico. (por ejemplo support@example.com )
Share,Cuota
Share With,Comparte con
Shareholders Funds,Accionistas Fondos
Shipments to customers.,Los envíos a los clientes .
Shipping,Envío
Shipping Account,cuenta Envíos
Shipping Address,Dirección de envío
Shipping Amount,Importe del envío
Shipping Rule,Regla de envío
Shipping Rule Condition,Regla Condición inicial
Shipping Rule Conditions,Regla envío Condiciones
Shipping Rule Label,Regla Etiqueta de envío
Shop,tienda
Shopping Cart,Cesta de la compra
Short biography for website and other publications.,Breve biografía de la página web y otras publicaciones.
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Mostrar ""en la acción "" o "" No disponible "", basada en stock disponible en este almacén."
"Show / Hide features like Serial Nos, POS etc.","Mostrar / Disimular las características como de serie n , POS , etc"
Show In Website,Mostrar En Sitio Web
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 Sitio Web
Show rows with zero values,Mostrar filas con valores de cero
Show this slideshow at the top of the page,Mostrar esta presentación de diapositivas en la parte superior de la página
Sick Leave,baja por enfermedad
Signature,Firma
Signature to be appended at the end of every email,Firma que se adjunta al final de cada correo electrónico
Single,solo
Single unit of an Item.,Una sola unidad de un elemento .
Sit tight while your system is being setup. This may take a few moments.,Estar tranquilos mientras el sistema está siendo configuración. Esto puede tomar un momento .
Slideshow,Presentación
Soap & Detergent,Jabón y Detergente
Software,Software
Software Developer,Desarrollador de Software
"Sorry, Serial Nos cannot be merged","Lo sentimos , Nos de serie no se puede fusionar"
"Sorry, companies cannot be merged","Lo sentimos , las empresas no se pueden combinar"
Source,Fuente
Source File,Archivo de Origen
Source Warehouse,fuente de depósito
Source and target warehouse cannot be same for row {0},Fuente y el almacén de destino no pueden ser la misma para la fila {0}
Source of Funds (Liabilities),Fuente de los fondos ( Pasivo )
Source warehouse is mandatory for row {0},Almacén de origen es obligatoria para la fila {0}
Spartan,espartano
"Special Characters except ""-"" and ""/"" not allowed in naming series","Caracteres especiales , excepto "" -"" y "" / "" no se permiten en el nombramiento de serie"
Specification Details,Especificaciones Detalles
Specifications,Especificaciones
"Specify a list of Territories, for which, this Price List is valid","Especifica una lista de territorios , para lo cual, la lista de precios es válida"
"Specify a list of Territories, for which, this Shipping Rule is valid","Especifica una lista de territorios , para lo cual, esta Regla envío es válida"
"Specify a list of Territories, for which, this Taxes Master is valid","Especifica una lista de territorios , para lo cual, esta Impuestos Master es válida"
"Specify the operations, operating cost and give a unique Operation no to your operations.","Especifique la operación , el costo de operación y dar una operación única que no a sus operaciones."
Split Delivery Note into packages.,Dividir nota de entrega en paquetes .
Sports,deportes
Sr,Sr
Standard,estándar
Standard Buying,Compra estándar
Standard Reports,Informes estándar
Standard Selling,Venta estándar
Standard contract terms for Sales or Purchase.,Condiciones contractuales estándar para Ventas o Compra.
Start,comienzo
Start Date,Fecha de inicio
Start date of current invoice's period,Fecha del período de facturación actual Inicie
Start date should be less than end date for Item {0},La fecha de inicio debe ser menor que la fecha de finalización para el punto {0}
State,Estado
Statement of Account,Estado de cuenta
Static Parameters,Parámetros estáticos
Status,estado
Status must be one of {0},Estado debe ser uno de {0}
Status of {0} {1} is now {2},Situación de {0} {1} { 2 es ahora }
Status updated to {0},Estado actualizado a {0}
Statutory info and other general information about your Supplier,Información legal y otra información general acerca de su proveedor
Stay Updated,Manténgase actualizado
Stock,valores
Stock Adjustment,Stock de Ajuste
Stock Adjustment Account,Cuenta de Ajuste
Stock Ageing,Stock Envejecimiento
Stock Analytics,Analytics archivo
Stock Assets,Activos de archivo
Stock Balance,Stock de balance
Stock Entries already created for Production Order ,
Stock Entry,Entrada Stock
Stock Entry Detail,Detalle de la entrada
Stock Expenses,gastos de archivo
Stock Frozen Upto,Stock Frozen Hasta
Stock Ledger,Ledger Stock
Stock Ledger Entry,Ledger Entry Stock
Stock Ledger entries balances updated,Ledger Stock entradas saldos actualizados
Stock Level,Nivel de existencias
Stock Liabilities,Pasivos de archivo
Stock Projected Qty,Stock Proyectado Cantidad
Stock Queue (FIFO),Stock de cola ( FIFO)
Stock Received But Not Billed,Stock recibida no facturados
Stock Reconcilation Data,Stock reconciliación de datos
Stock Reconcilation Template,Stock reconciliación Plantilla
Stock Reconciliation,Stock Reconciliación
"Stock Reconciliation can be used to update the stock on a particular date, usually as per physical inventory.","Stock Reconciliación se puede utilizar para actualizar las existencias en una fecha determinada , por lo general de acuerdo con el inventario físico."
Stock Settings,Ajustes de archivo
Stock UOM,Stock UOM
Stock UOM Replace Utility,Stock UOM reemplazar utilidad
Stock UOM updatd for Item {0},Updatd Stock UOM para el punto {0}
Stock Uom,Stock Uom
Stock Value,Stock Valor
Stock Value Difference,Stock valor de la diferencia
Stock balances updated,Saldos archivo actualizado
Stock cannot be updated against Delivery Note {0},Stock no puede actualizarse contra entrega Nota {0}
Stock entries exist against warehouse {0} cannot re-assign or modify 'Master Name',Existen entradas de archivo contra almacén {0} no se puede volver a asignar o modificar ' Maestro Name'
Stock transactions before {0} are frozen,Operaciones bursátiles antes de {0} se congelan
Stop,Deténgase
Stop Birthday Reminders,Detener Birthday Reminders
Stop Material Request,Solicitud Detener material
Stop users from making Leave Applications on following days.,Deje que los usuarios realicen Aplicaciones excedencia siguientes días .
Stop!,¡Alto!
Stopped,detenido
Stopped order cannot be cancelled. Unstop to cancel.,Para Parado no se puede cancelar . Unstop cancelar.
Stores,Tiendas
Stub,talón
Sub Assemblies,Asambleas Sub
"Sub-currency. For e.g. ""Cent""","Sub -moneda. Por ejemplo, "" Cent """
Subcontract,subcontrato
Subject,Sujeto
Submit Salary Slip,Presentar nómina
Submit all salary slips for the above selected criteria,Presentar todas las nóminas para los criterios seleccionados anteriormente
Submit this Production Order for further processing.,Enviar esta Orden de Producción para su posterior procesamiento .
Submitted,Enviado
Subsidiary,Filial
Successful: ,Con éxito:
Successfully Reconciled,Con éxito Reconciled
Suggestions,Sugerencias
Sunday,Domingo
Supplier,Proveedor
Supplier (Payable) Account,Proveedor (A pagar ) Cuenta
Supplier (vendor) name as entered in supplier master,Proveedor (vendedor ) nombre que ingresó en el maestro de proveedores
Supplier > Supplier Type,Proveedor> Tipo de Proveedor
Supplier Account Head,Cuenta Proveedor Head
Supplier Address,Dirección del proveedor
Supplier Addresses and Contacts,Direcciones del surtidor y Contactos
Supplier Details,Detalles del Proveedor
Supplier Intro,Proveedor Intro
Supplier Invoice Date,Proveedor Fecha de la factura
Supplier Invoice No,Proveedor factura n º
Supplier Name,Nombre del proveedor
Supplier Naming By,Naming Proveedor Por
Supplier Part Number,Número de pieza del proveedor
Supplier Quotation,Cotización Proveedor
Supplier Quotation Item,Proveedor Cotización artículo
Supplier Reference,Referencia proveedor
Supplier Type,Tipo de proveedor
Supplier Type / Supplier,Proveedor Tipo / Proveedor
Supplier Type master.,Proveedor Tipo maestro.
Supplier Warehouse,Almacén Proveedor
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Depósito obligatorio para recibo de compra de subcontratación Proveedor
Supplier database.,Base de datos de proveedores.
Supplier master.,Maestro de proveedores.
Supplier warehouse where you have issued raw materials for sub - contracting,Almacén del proveedor en la que han emitido las materias primas para la sub - contratación
Supplier-Wise Sales Analytics,De proveedores hasta los sabios Ventas Analytics
Support,apoyo
Support Analtyics,Analtyics Soporte
Support Analytics,Soporte Analytics
Support Email,Email de Ayuda
Support Email Settings,Soporte Configuración del correo electrónico
Support Password,Soporte Contraseña
Support Ticket,Ticket
Support queries from customers.,Consultas de soporte de clientes .
Symbol,símbolo
Sync Support Mails,Sync Soporte Mails
Sync with Dropbox,Sincronización con Dropbox
Sync with Google Drive,Sincronización con Google Drive
System,Sistema
System Settings,Configuración del sistema
"System User (login) ID. If set, it will become default for all HR forms.","Usuario del sistema (login ) de diámetro. Si se establece , será por defecto para todas las formas de recursos humanos."
TDS (Advertisement),TDS (Publicidad)
TDS (Commission),TDS (Comisión)
TDS (Contractor),TDS (Contratista)
TDS (Interest),TDS (Intereses)
TDS (Rent),TDS (Alquiler)
TDS (Salary),TDS (Salario)
Target  Amount,Monto Target
Target Detail,Objetivo Detalle
Target Details,Detalles Target
Target Details1,Target Details1
Target Distribution,Distribución Target
Target On,Target On
Target Qty,Target Cantidad
Target Warehouse,destino de depósito
Target warehouse in row {0} must be same as Production Order,Almacenes de destino de la fila {0} debe ser la misma que la producción del pedido
Target warehouse is mandatory for row {0},Almacenes Target es obligatorio para la fila {0}
Task,Tarea
Task Details,Detalles de la tarea
Tasks,Tareas
Tax,Impuesto
Tax Amount After Discount Amount,Total de impuestos Después Cantidad de Descuento
Tax Assets,Activos por Impuestos
Tax Category can not be 'Valuation' or 'Valuation and Total' as all items are non-stock items,"Categoría de impuesto no puede ser ' Valoración ' o ' de Valoración y Total ""como todos los artículos son no-acción"
Tax Rate,Tasa de Impuesto
Tax and other salary deductions.,Tributaria 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 detalles de impuestos recoger del maestro de artículos en forma de cadena y se almacena en este campo. Se utiliza para las tasas y cargos
Tax template for buying transactions.,Plantilla de impuestos para la compra de las transacciones.
Tax template for selling transactions.,Plantilla Tributaria para la venta de las transacciones.
Taxable,Imponible
Taxes,Impuestos
Taxes and Charges,Impuestos y Cargos
Taxes and Charges Added,Impuestos y cargos adicionales
Taxes and Charges Added (Company Currency),Impuestos y cargos adicionales ( Compañía de divisas )
Taxes and Charges Calculation,Impuestos y Cargos Cálculo
Taxes and Charges Deducted,Impuestos y gastos deducidos
Taxes and Charges Deducted (Company Currency),Impuestos y gastos deducidos ( Compañía de divisas )
Taxes and Charges Total,Los impuestos y cargos totales
Taxes and Charges Total (Company Currency),Impuestos y Cargos total ( Compañía de divisas )
Technology,Tecnología
Telecommunications,Telecomunicaciones
Telephone Expenses,gastos por servicios telefónicos
Television,Televisión
Template,Plantilla
Template for performance appraisals.,Plantilla para las evaluaciones de desempeño .
Template of terms or contract.,Plantilla de términos o contrato.
Temporary Accounts (Assets),Cuentas Temporales ( Activos )
Temporary Accounts (Liabilities),Cuentas Temporales ( Pasivo )
Temporary Assets,Activos temporales
Temporary Liabilities,Pasivos temporales
Term Details,Detalles plazo
Terms,Condiciones
Terms and Conditions,Términos y Condiciones
Terms and Conditions Content,Términos y Condiciones de contenido
Terms and Conditions Details,Detalle de Términos y Condiciones 
Terms and Conditions Template,Plantilla de Términos y Condiciones
Terms and Conditions1,Términos y Condiciones 1
Terretory,Territorio
Territory,Territorio
Territory / Customer,Localidad / Cliente
Territory Manager,Gerente de Territorio
Territory Name,Nombre Territorio
Territory Target Variance Item Group-Wise,Territorio Target Varianza Artículo Group- Wise
Territory Targets,Objetivos Territorio
Test,Prueba
Test Email Id,Prueba de Identificación del email
Test the Newsletter,Pruebe el Boletín
The BOM which will be replaced,La lista de materiales que será sustituido
The First User: You,El Primer Usuario: Usted
"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""","El artículo que representa el paquete . Este artículo debe haber "" Es Stock Item"" como "" No"" y ""¿ Punto de venta"" como "" Sí"""
The Organization,La Organización
"The account head under Liability, in which Profit/Loss will be booked","El director cuenta con la responsabilidad civil , en el que será reservado Ganancias / Pérdidas"
The date on which next invoice will be generated. It is generated on submit.,La fecha en que se generará la próxima factura. Se genera en enviar.
The date on which recurring invoice will be stop,La fecha en que se detiene la factura recurrente
"The day of the month on which auto invoice will be generated e.g. 05, 28 etc ","El día del mes en el que se generará factura auto por ejemplo 05, 28, etc"
The day(s) on which you are applying for leave are holiday. You need not apply for leave.,El día ( s ) sobre el cual está solicitando la licencia son vacaciones. Usted no tiene que solicitar la licencia .
The first Leave Approver in the list will be set as the default Leave Approver,El primer aprobador Dejar en la lista se establecerá como predeterminada Dejar aprobador
The first user will become the System Manager (you can change that later).,El primer usuario se convertirá en el gestor del sistema ( que puede cambiar esto más adelante) .
The gross weight of the package. Usually net weight + packaging material weight. (for print),El peso bruto del paquete. Peso + embalaje peso Normalmente material neto . (para impresión)
The name of your company for which you are setting up this system.,El nombre de su empresa para la que va a configurar el sistema.
The net weight of this package. (calculated automatically as sum of net weight of items),El peso neto de este paquete . ( calculados automáticamente como la suma del peso neto del material)
The new BOM after replacement,La nueva lista de materiales después de la sustitución
The rate at which Bill Currency is converted into company's base currency,La velocidad a la que Bill moneda se convierte en la moneda base de la compañía
The unique id for tracking all recurring invoices. It is generated on submit.,El identificador único para el seguimiento de todas las facturas recurrentes. Se genera en enviar .
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Entonces reglas de precios son filtradas en base a cliente, grupo de clientes, Territorio, proveedor, tipo de proveedor, Campaña, socio de ventas, etc"
There are more holidays than working days this month.,Hay más vacaciones que los días de trabajo de este mes.
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Sólo puede haber una regla Condición inicial con 0 o valor en blanco de ""To Value"""
There is not enough leave balance for Leave Type {0},No hay equilibrio permiso suficiente para Dejar Escriba {0}
There is nothing to edit.,No hay nada que modificar.
There was an error. One probable reason could be that you haven't saved the form. Please contact support@erpnext.com if the problem persists.,"Ha ocurrido un error . Una razón probable podría ser que usted no ha guardado el formulario. Por favor, póngase en contacto con support@erpnext.com si el problema persiste."
There were errors.,Hubo errores .
This Currency is disabled. Enable to use in transactions,Esta moneda está desactivado . Habilitar el uso en las transacciones
This Leave Application is pending approval. Only the Leave Apporver can update status.,Esta solicitud de autorización está pendiente de aprobación . Sólo el Dejar Apporver puede actualizar el estado .
This Time Log Batch has been billed.,Este lote Hora de registro se ha facturado .
This Time Log Batch has been cancelled.,Este lote Hora de registro ha sido cancelado .
This Time Log conflicts with {0},This Time Entrar en conflicto con {0}
This format is used if country specific format is not found,Este formato se utiliza si no se encuentra en formato específico del país
This is a root account and cannot be edited.,Esta es una cuenta de la raíz y no se puede editar .
This is a root customer group and cannot be edited.,Se trata de un grupo de clientes de la raíz y no se puede editar .
This is a root item group and cannot be edited.,Se trata de un grupo de elementos de raíz y no se puede editar .
This is a root sales person and cannot be edited.,Se trata de una persona de las ventas de la raíz y no se puede editar .
This is a root territory and cannot be edited.,Este es un territorio de la raíz y no se puede editar .
This is an example website auto-generated from ERPNext,Este es un sitio web ejemplo generadas por auto de ERPNext
This is the number of the last created transaction with this prefix,Este es el número de la última transacción creado con este prefijo
This will be used for setting rule in HR module,Esto se utiliza para ajustar la regla en el módulo HR
Thread HTML,HTML Tema
Thursday,Jueves
Time Log,Hora de registro
Time Log Batch,Lote Hora de registro
Time Log Batch Detail,Detalle de lotes Hora de registro
Time Log Batch Details,Tiempo de registro incluye el detalle de lotes
Time Log Batch {0} must be 'Submitted',Lote Hora de registro {0} debe ser ' Enviado '
Time Log Status must be Submitted.,Hora de registro de estado debe ser presentada.
Time Log for tasks.,Hora de registro para las tareas.
Time Log is not billable,Hora de registro no es facturable
Time Log {0} must be 'Submitted',Hora de registro {0} debe ser ' Enviado '
Time Zone,Huso Horario
Time Zones,Husos horarios
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 se recibieron los materiales
Title,Título
Titles for print templates e.g. Proforma Invoice.,"Títulos para plantillas de impresión , por ejemplo, Factura proforma ."
To,a
To Currency,Para la moneda
To Date,Hasta la fecha
To Date should be same as From Date for Half Day leave,Hasta la fecha debe ser igual a partir de la fecha para la licencia de medio día
To Date should be within the Fiscal Year. Assuming To Date = {0},Hasta la fecha debe estar dentro del año fiscal. Asumiendo la fecha = {0}
To Discuss,Para Discuta
To Do List,Lista para hacer
To Package No.,Al paquete No.
To Produce,Producir
To Time,Para Tiempo
To Value,Con el valor
To Warehouse,Para Almacén
"To add child nodes, explore tree and click on the node under which you want to add more nodes.","Para agregar nodos secundarios , explorar el árbol y haga clic en el nodo en el que desea agregar más nodos."
"To assign this issue, use the ""Assign"" button in the sidebar.","Para asignar este problema, utilice el botón "" Assign"" en la barra lateral ."
To create a Bank Account,Para crear una Cuenta Bancaria
To create a Tax Account,Para crear una Cuenta de impuestos
"To create an Account Head under a different company, select the company and save customer.","Para crear un Jefe de Cuenta bajo una compañía diferente , seleccione la empresa y salvar a los clientes."
To date cannot be before from date,Hasta la fecha no puede ser antes de la fecha de
To enable <b>Point of Sale</b> features,Para activar <b> punto de venta </ b> características
To enable <b>Point of Sale</b> view,Para activar <b> punto de venta < / b > Vista
To get Item Group in details table,Para obtener Grupo artículo en la tabla detalles
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Para incluir el impuesto de la fila {0} en la tasa de artículo , los impuestos en filas {1} también deben ser incluidos"
"To merge, following properties must be same for both items","Para combinar , siguientes propiedades deben ser el mismo para ambos ítems"
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Para no aplicar la regla de precios en una transacción en particular, todas las normas sobre tarifas aplicables deben ser desactivados."
"To set this Fiscal Year as Default, click on 'Set as Default'","Para establecer este año fiscal como predeterminada , haga clic en "" Establecer como predeterminado """
To track any installation or commissioning related work after sales,Para el seguimiento de cualquier instalación o puesta en obra relacionada postventa
"To track brand name in the following documents Delivery Note, Opportunity, Material Request, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Sales Invoice, Sales BOM, Sales Order, Serial No","Para realizar el seguimiento de marca en el siguiente documento Nota de entrega , Oportunidad , solicitud de material , artículo , Orden de Compra, Comprar Bono , el recibo de compra , cotización , factura de venta , lista de materiales de ventas , órdenes de venta , Número de Serie"
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 rastrear artículo en ventas y documentos de compra en base a sus nn serie. Esto se puede también utilizar para rastrear información sobre la garantía del producto.
To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,Para realizar un seguimiento de los elementos de las ventas y la compra de los documentos con lotes nos <br> <b> Industria preferido: 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 realizar un seguimiento de elementos mediante código de barras. Usted será capaz de entrar en los elementos de la nota de entrega y la factura de venta mediante el escaneo de código de barras del artículo.
Too many columns. Export the report and print it using a spreadsheet application.,Hay demasiadas columnas. Exportar el informe e imprimirlo mediante una aplicación de hoja de cálculo.
Tools,Herramientas
Total,Total
Total ({0}),Total ({0})
Total Advance,Avance total
Total Amount,Importe total
Total Amount To Pay,Monto total a pagar
Total Amount in Words,Monto total de Palabras
Total Billing This Year: ,Facturación total de este año:
Total Characters,Total Jugadores
Total Claimed Amount,Total Reclamado
Total Commission,Total Comisión
Total Cost,Coste total
Total Credit,Crédito Total
Total Debit,Débito Total
Total Debit must be equal to Total Credit. The difference is {0},Débito total debe ser igual al crédito total .
Total Deduction,Deducción total
Total Earning,Ganar total
Total Experience,Experiencia total
Total Hours,Total de Horas
Total Hours (Expected),Total de horas (Esperada )
Total Invoiced Amount,Total facturado
Total Leave Days,Total Dejar días
Total Leaves Allocated,Hojas totales asignados
Total Message(s),Mensaje total ( s )
Total Operating Cost,Coste total de funcionamiento
Total Points,total de puntos
Total Raw Material Cost,Costo Total de Materias Primas
Total Sanctioned Amount,Total Sancionada
Total Score (Out of 5),Puntaje total (de 5 )
Total Tax (Company Currency),Impuesto total ( Compañía de divisas )
Total Taxes and Charges,Total Impuestos y Cargos
Total Taxes and Charges (Company Currency),Total Impuestos y Cargos ( Compañía de divisas )
Total allocated percentage for sales team should be 100,Porcentaje del total asignado para el equipo de ventas debe ser de 100
Total amount of invoices received from suppliers during the digest period,Importe total de las facturas recibidas de los proveedores durante el período de digestión
Total amount of invoices sent to the customer during the digest period,Importe total de las facturas enviadas a los clientes durante el período de digestión
Total cannot be zero,Total no puede ser cero
Total in words,Total en palabras
Total points for all goals should be 100. It is {0},Total de puntos para todos los objetivos deben ser 100 . Es {0}
Total valuation for manufactured or repacked item(s) can not be less than total valuation of raw materials,Valoración total para cada elemento (s) de la empresa o embalados de nuevo no puede ser inferior al valor total de las materias primas
Total weightage assigned should be 100%. It is {0},Weightage total asignado debe ser de 100 %. Es {0}
Totals,Totales
Track Leads by Industry Type.,Pista conduce por tipo de industria .
Track this Delivery Note against any Project,Seguir este albarán en contra de cualquier proyecto
Track this Sales Order against any Project,Seguir este de órdenes de venta en contra de cualquier proyecto
Transaction,Transacción
Transaction Date,Fecha de Transacción
Transaction not allowed against stopped Production Order {0},La transacción no permitida contra detenido Orden Producción {0}
Transfer,Transferencia
Transfer Material,transferencia de material
Transfer Raw Materials,Transferencia de Materias Primas
Transferred Qty,Cantidad Transferida
Transportation,Transporte
Transporter Info,Información Transporter
Transporter Name,Nombre del Transportista
Transporter lorry number,Número de camiones Transportador
Travel,Viajes
Travel Expenses,Gastos de Viaje
Tree Type,Tipo de árbol
Tree of Item Groups.,Árbol de los grupos de artículos .
Tree of finanial Cost Centers.,Árbol de Centros de Coste finanial .
Tree of finanial accounts.,Árbol de las cuentas finanial .
Trial Balance,balance de Comprobación
Tuesday,Martes
Type,Tipo
Type of document to rename.,Tipo de documento para cambiar el nombre.
"Type of leaves like casual, sick etc.","Tipo de hojas como casual, etc enfermo"
Types of Expense Claim.,Tipos de Reclamación de Gastos .
Types of activities for Time Sheets,Tipos de actividades para las fichas de Tiempo
"Types of employment (permanent, contract, intern etc.).","Tipos de empleo (permanente , contratados, etc pasante ) ."
UOM Conversion Detail,Detalle UOM Conversión
UOM Conversion Details,UOM Detalles de conversión
UOM Conversion Factor,UOM Factor de Conversión
UOM Conversion factor is required in row {0},Se requiere el factor de conversión de la UOM en la fila {0}
UOM Name,Nombre UOM
UOM coversion factor required for UOM: {0} in Item: {1},Factor de coversion UOM requerido para UOM: {0} en el artículo: {1}
Under AMC,Bajo AMC
Under Graduate,Bajo de Postgrado
Under Warranty,Bajo Garantía
Unit,unidad
Unit of Measure,Unidad de medida
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Unidad de medida {0} se ha introducido más de una vez en el factor de conversión de la tabla
"Unit of measurement of this item (e.g. Kg, Unit, No, Pair).","Unidad de medida de este material ( por ejemplo, Kg , Unidad , No, par) ."
Units/Hour,Unidades / hora
Units/Shifts,Unidades / Turnos
Unpaid,no pagado
Unreconciled Payment Details,No reconciliadas Detalles de pago
Unscheduled,no programada
Unsecured Loans,Préstamos sin garantía
Unstop,desatascar
Unstop Material Request,Solicitud Unstop material
Unstop Purchase Order,Unstop Orden de Compra
Unsubscribed,no suscribirse
Update,actualización
Update Clearance Date,Fecha de actualización Liquidación
Update Cost,actualización de Costos
Update Finished Goods,Actualización de las mercancías acabadas
Update Landed Cost,Actualice el costo de aterrizaje
Update Series,Series Update
Update Series Number,Actualización de los números de serie
Update Stock,Actualización de Stock
Update bank payment dates with journals.,Actualización de las fechas de pago del banco con las revistas .
Update clearance date of Journal Entries marked as 'Bank Vouchers',Fecha de despacho de actualización de entradas de diario marcado como ' Banco vales '
Updated,actualizado
Updated Birthday Reminders,Actualizado Birthday Reminders
Upload Attendance,Subir Asistencia
Upload Backups to Dropbox,Cargar copias de seguridad en Dropbox
Upload Backups to Google Drive,Cargar copias de seguridad a Google Drive
Upload HTML,Subir HTML
Upload a .csv file with two columns: the old name and the new name. Max 500 rows.,Subir un archivo csv con dos columnas: . El viejo nombre y el nuevo nombre . Max 500 filas .
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 .
Upload your letter head and logo - you can edit them later.,Cargue su membrete y el logotipo - usted puede editarlos posteriormente.
Upper Income,Ingresos superior
Urgent,urgente
Use Multi-Level BOM,Utilice Multi - Nivel BOM
Use SSL,Utilice SSL
Used for Production Plan,Se utiliza para el Plan de Producción
User,usuario
User ID,ID de usuario
User ID not set for Employee {0},ID de usuario no se establece para el empleado {0}
User Name,Nombre de usuario
User Name or Support Password missing. Please enter and try again.,Nombre de usuario o contraseña Soporte desaparecidos. Por favor introduzca y vuelva a intentarlo .
User Remark,Observación del usuario
User Remark will be added to Auto Remark,Observación usuario se añadirá a Observación Auto
User Remarks is mandatory,Usuario Observaciones es obligatorio
User Specific,específicas de usuario
User must always select,Usuario elegirá siempre
User {0} is already assigned to Employee {1},El usuario {0} ya está asignado a Empleado {1}
User {0} is disabled,El usuario {0} está deshabilitado
Username,Nombre de usuario
Users with this role are allowed to create / modify accounting entry before frozen date,Los usuarios con este rol pueden crear / modificar registro contable antes de la fecha congelada
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Los usuarios con este rol pueden establecer cuentas congeladas y crear / modificar los asientos contables contra las cuentas congeladas
Utilities,Utilidades
Utility Expenses,Los gastos de servicios públicos
Valid For Territories,Válido para los territorios
Valid From,Válido desde
Valid Upto,Válido Hasta
Valid for Territories,Válido para los territorios
Validate,validar
Valuation,valuación
Valuation Method,Método de Valoración
Valuation Rate,Valoración de Cambio
Valuation Rate required for Item {0},Valoración de tipo requerido para el punto {0}
Valuation and Total,Tasación y Total
Value,valor
Value or Qty,Valor o Cant.
Vehicle Dispatch Date,Despacho de vehículo Fecha
Vehicle No,Vehículo No hay
Venture Capital,capital de Riesgo
Verified By,Verified By
View Ledger,Ver Ledger
View Now,ver Ahora
Visit report for maintenance call.,Visita informe de llamada de mantenimiento .
Voucher #,Bono #
Voucher Detail No,Detalle hoja no
Voucher Detail Number,Vale Número Detalle
Voucher ID,vale ID
Voucher No,vale No
Voucher Type,Tipo de Vales
Voucher Type and Date,Tipo Bono y Fecha
Walk In,Walk In
Warehouse,Almacén
Warehouse Contact Info,Información de Contacto del Almacén 
Warehouse Detail,Detalle de almacenes
Warehouse Name,Nombre del Almacén
Warehouse and Reference,Almacén y Referencia
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,Almacén no se puede suprimir porque hay una entrada en registro de acciones para este almacén.
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Depósito sólo se puede cambiar a través de la Entrada de Almacén / Nota de Entrega / Recibo de Compra
Warehouse cannot be changed for Serial No.,Almacén no se puede cambiar para el N º de serie
Warehouse is mandatory for stock Item {0} in row {1},Warehouse es obligatoria para la acción del artículo {0} en la fila {1}
Warehouse is missing in Purchase Order,Almacén falta en la Orden de Compra
Warehouse not found in the system,Almacén no se encuentra en el sistema
Warehouse required for stock Item {0},Depósito requerido para la acción del artículo {0}
Warehouse where you are maintaining stock of rejected items,Almacén en el que está manteniendo un balance de los artículos rechazados
Warehouse {0} can not be deleted as quantity exists for Item {1},Almacén {0} no se puede eliminar mientras exista cantidad de artículo {1}
Warehouse {0} does not belong to company {1},Almacén {0} no pertenece a la empresa {1}
Warehouse {0} does not exist,Almacén {0} no existe
Warehouse {0}: Company is mandatory,Almacén {0}: Company es obligatoria
Warehouse {0}: Parent account {1} does not bolong to the company {2},Almacén {0}: cuenta Parent {1} no bolong a la empresa {2}
Warehouse-Wise Stock Balance,Warehouse- Wise Stock Equilibrio
Warehouse-wise Item Reorder,- Almacén sabio artículo reorden
Warehouses,Almacenes
Warehouses.,Almacenes.
Warn,advertir
Warning: Leave application contains following block dates,Advertencia: Deja de aplicación contiene las fechas siguientes bloques
Warning: Material Requested Qty is less than Minimum Order Qty,Advertencia: material solicitado Cantidad mínima es inferior a RS Online
Warning: Sales Order {0} already exists against same Purchase Order number,Advertencia: Pedido de cliente {0} ya existe contra el mismo número de orden de compra
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Advertencia : El sistema no comprobará sobrefacturación desde monto para el punto {0} en {1} es cero
Warranty / AMC Details,Garantía / AMC Detalles
Warranty / AMC Status,Garantía / AMC Estado
Warranty Expiry Date,Fecha de caducidad de la Garantía
Warranty Period (Days),Período de garantía ( Días)
Warranty Period (in days),Período de garantía ( en días)
We buy this Item,Compramos este artículo
We sell this Item,Vendemos este artículo
Website,Sitio Web
Website Description,Descripción del Sitio Web 
Website Item Group,Group Website artículo
Website Item Groups,Grupos Sitios Web item
Website Settings,Configuración del sitio web
Website Warehouse,Almacén Web
Wednesday,Miércoles
Weekly,Semanal
Weekly Off,Semanal Off
Weight UOM,Peso UOM
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","El peso se ha mencionado, \ nPor favor, menciona "" Peso UOM "" demasiado"
Weightage,weightage
Weightage (%),Coeficiente de ponderación (% )
Welcome,Bienvenido
Welcome to ERPNext. Over the next few minutes we will help you setup your ERPNext account. Try and fill in as much information as you have even if it takes a bit longer. It will save you a lot of time later. Good Luck!,"Bienvenido a ERPNext . En los próximos minutos vamos a ayudarle a configurar su cuenta ERPNext . Trate de llenar toda la información que usted tiene , incluso si se necesita un poco más de tiempo ahora. Esto le ahorrará mucho tiempo después. ¡Buena suerte!"
Welcome to ERPNext. Please select your language to begin the Setup Wizard.,Bienvenido a ERPNext . Por favor seleccione su idioma para iniciar el asistente de configuración.
What does it do?,¿Qué hace?
"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 "" Enviado "" , un e-mail emergente abre automáticamente al enviar un email a la asociada "" Contacto"" en esa transacción , la transacción como un archivo adjunto. El usuario puede o no puede enviar el correo electrónico."
"When submitted, the system creates difference entries to set the given stock and valuation on this date.","Cuando presentado , el sistema crea asientos de diferencia para definir las acciones y la valoración dada en esta fecha."
Where items are stored.,¿Dónde se almacenan los artículos .
Where manufacturing operations are carried out.,Cuando las operaciones de elaboración se lleven a cabo .
Widowed,Viudo
Will be calculated automatically when you enter the details,Se calcularán automáticamente cuando entras en los detalles
Will be updated after Sales Invoice is Submitted.,Se actualizará después de la factura de venta se considera sometida .
Will be updated when batched.,Se actualizará cuando por lotes.
Will be updated when billed.,Se actualizará cuando se facturan .
Wire Transfer,Transferencia Bancaria
With Operations,Con operaciones
With Period Closing Entry,Con la entrada del período de cierre
Work Details,Detalles de trabajo
Work Done,trabajo realizado
Work In Progress,Trabajos en curso
Work-in-Progress Warehouse,Trabajos en Progreso Almacén
Work-in-Progress Warehouse is required before Submit,Se requiere un trabajo - en - progreso almacén antes Presentar
Working,laboral
Working Days,Días de trabajo
Workstation,puesto de trabajo
Workstation Name,Estación de trabajo Nombre
Write Off Account,Escribe Off Cuenta
Write Off Amount,Escribe Off Monto
Write Off Amount <=,Escribe Off Importe < =
Write Off Based On,Escribe apagado basado en
Write Off Cost Center,Escribe Off Center Costo
Write Off Outstanding Amount,Escribe Off Monto Pendiente
Write Off Voucher,Escribe Off Voucher
Wrong Template: Unable to find head row.,Plantilla incorrecto : no se puede encontrar la fila cabeza.
Year,Año
Year Closed,Año Cerrado
Year End Date,Año Fecha de finalización
Year Name,Nombre de Año
Year Start Date,Año Fecha de inicio
Year of Passing,Año de Fallecimiento
Yearly,Anual
Yes,Sí
You are not authorized to add or update entries before {0},No tiene permisos para agregar o actualizar las entradas antes de {0}
You are not authorized to set Frozen value,Usted no está autorizado para fijar el valor congelado
You are the Expense Approver for this record. Please Update the 'Status' and Save,Usted es el aprobador de gastos para este registro. Actualice el 'Estado' y Save
You are the Leave Approver for this record. Please Update the 'Status' and Save,Usted es el aprobador Dejar para este registro. Actualice el 'Estado' y Save
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 será condenada .
You can not change rate if BOM mentioned agianst any item,No se puede cambiar la velocidad si BOM mencionó agianst cualquier artículo
You can not enter both Delivery Note No and Sales Invoice No. Please enter any one.,No se puede introducir tanto Entrega Nota No y Factura No. Por favor ingrese cualquiera .
You can not enter current voucher in 'Against Journal Voucher' column,Usted no puede entrar bono actual en ' Contra Diario Vale ' columna
You can set Default Bank Account in Company master,Puede configurar cuenta bancaria por defecto en el maestro de la empresa
You can start by selecting backup frequency and granting access for sync,Puedes empezar por seleccionar la frecuencia de copia de seguridad y la concesión de acceso para la sincronización
You can submit this Stock Reconciliation.,Puede enviar este Stock Reconciliación.
You can update either Quantity or Valuation Rate or both.,Puede actualizar cualquiera de cantidad o de valoración por tipo o ambos.
You cannot credit and debit same account at the same time,No se puede de crédito y débito misma cuenta al mismo tiempo
You have entered duplicate items. Please rectify and try again.,Ha introducido los elementos duplicados . Por favor rectifique y vuelva a intentarlo .
You may need to update: {0},Puede que tenga que actualizar : {0}
You must Save the form before proceeding,Debe guardar el formulario antes de proceder
Your Customer's TAX registration numbers (if applicable) or any general information,Los números de registro de impuestos de su cliente ( si es aplicable) o cualquier información de carácter general
Your Customers,Sus Clientes
Your Login Id,Su usuario Id
Your Products or Services,Sus Productos o Servicios
Your Suppliers,Sus Proveedores
Your email address,Su dirección de correo electrónico
Your financial year begins on,Su ejercicio social comenzará el
Your financial year ends on,Su ejercicio se termina en la
Your sales person who will contact the customer in future,Su persona de ventas que va a ponerse en contacto con el cliente 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 esta fecha para ponerse en contacto con el cliente
Your setup is complete. Refreshing...,Su configuración se ha completado . Refrescante ...
Your support email id - must be a valid email - this is where your emails will come!,Su apoyo correo electrónico de identificación - debe ser un correo electrónico válido - aquí es donde tus correos electrónicos vendrán!
[Error],[Error]
[Select],[Seleccionar ]
`Freeze Stocks Older Than` should be smaller than %d days.,` Acciones Freeze viejo que ` debe ser menor que % d días .
and,y
are not allowed.,no están permitidos.
assigned by,asignado por
cannot be greater than 100,No puede ser mayor que 100
"e.g. ""Build tools for builders""","por ejemplo "" Construir herramientas para los constructores """
"e.g. ""MC""","por ejemplo ""MC """
"e.g. ""My Company LLC""","por ejemplo ""Mi Company LLC """
e.g. 5,por ejemplo 5
"e.g. Bank, Cash, Credit Card","por ejemplo Bancaria, Efectivo , Tarjeta de crédito"
"e.g. Kg, Unit, Nos, m","por ejemplo Kg , Unidad , Nos, m"
e.g. VAT,por ejemplo IVA
eg. Cheque Number,por ejemplo . Número de Cheque
example: Next Day Shipping,ejemplo : Envío Día Siguiente
lft,lft
old_parent,old_parent
rgt,RGT
subject,Asunto
to,a
website page link,el vínculo web
{0} '{1}' not in Fiscal Year {2},{0} '{1}' no en el Año Fiscal {2}
{0} Credit limit {0} crossed,{0} Límite de crédito {0} cruzado
{0} Serial Numbers required for Item {0}. Only {0} provided.,{0} de números de serie de artículos requeridos para {0} . Sólo {0} prevista .
{0} budget for Account {1} against Cost Center {2} will exceed by {3},{0} presupuesto para la cuenta {1} en contra de centros de coste {2} superará por {3}
{0} can not be negative,{0} no puede ser negativo
{0} created,{0} creado
{0} does not belong to Company {1},{0} no pertenece a la empresa {1}
{0} entered twice in Item Tax,{0} entrado dos veces en el Impuesto de artículos
{0} is an invalid email address in 'Notification Email Address',{0} es una dirección de correo electrónico válida en el ' Notificación de E-mail '
{0} is mandatory,{0} es obligatorio
{0} is mandatory for Item {1},{0} no es obligatorio para el elemento {1}
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} es obligatorio. Tal vez no se crea registro de cambio para {1} a {2}.
{0} is not a stock Item,{0} no es un producto imprescindible
{0} is not a valid Batch Number for Item {1},{0} no es un número de lote válida para el elemento {1}
{0} is not a valid Leave Approver. Removing row #{1}.,{0} no es un Dejar aprobador válida. La eliminación de la fila # {1}.
{0} is not a valid email id,{0} no es un correo electrónico de identificación válida
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,"{0} es ahora la predeterminada año fiscal . Por favor, actualice su navegador para que el cambio surta efecto."
{0} is required,{0} es necesario
{0} must be a Purchased or Sub-Contracted Item in row {1},{0} debe ser un objeto de compra o de subcontratación en la fila {1}
{0} must be reduced by {1} or you should increase overflow tolerance,{0} debe reducirse en {1} o se debe aumentar la tolerancia de desbordamiento
{0} must have role 'Leave Approver',{0} debe tener rol ' Dejar aprobador '
{0} valid serial nos for Item {1},{0} nn serie válidos para el elemento {1}
{0} {1} against Bill {2} dated {3},{0} {1} { 2 contra Bill } {3} de fecha
{0} {1} against Invoice {2},{0} {1} contra Factura {2}
{0} {1} has already been submitted,{0} {1} ya ha sido presentado
{0} {1} has been modified. Please refresh.,{0} {1} ha sido modificado. Por favor regenere .
{0} {1} is not submitted,{0} {1} no se presenta
{0} {1} must be submitted,{0} {1} debe ser presentado
{0} {1} not in any Fiscal Year,{0} {1} no en cualquier año fiscal
{0} {1} status is 'Stopped',{0} {1} Estado se ' Detenido '
{0} {1} status is Stopped,{0} {1} estado es Detenido
{0} {1} status is Unstopped,{0} {1} Estado es destapados
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Centro de Costo es obligatorio para el punto {2}
{0}: {1} not found in Invoice Details table,{0}: {1} no se encuentra en la factura Detalles mesa
