 (Half Day),(Meio Dia)
 and year: ,e ano:
""" does not exists",""" Bestaat niet"
%  Delivered,Entregue%
% Amount Billed,Valor% faturado
% Billed,Anunciado%
% Completed,% Concluído
% Delivered,% Geleverd
% Installed,Instalado%
% Received,Recebido%
% of materials billed against this Purchase Order.,% De materiais faturado contra esta Ordem de Compra.
% of materials billed against this Sales Order,% De materiais faturado contra esta Ordem de Vendas
% of materials delivered against this Delivery Note,% Dos materiais entregues contra esta Nota de Entrega
% of materials delivered against this Sales Order,% Dos materiais entregues contra esta Ordem de Vendas
% of materials ordered against this Material Request,% De materiais ordenou contra este pedido se
% of materials received against this Purchase Order,% Do material recebido contra esta Ordem de Compra
'Actual Start Date' can not be greater than 'Actual End Date',' Real data de início ' não pode ser maior que ' Actual Data Final '
'Based On' and 'Group By' can not be same,'Baseado ' e ' Grupo por ' não pode ser o mesmo
'Days Since Last Order' must be greater than or equal to zero,' Dias desde a última Ordem deve ser maior ou igual a zero
'Entries' cannot be empty,' Entradas ' não pode estar vazio
'Expected Start Date' can not be greater than 'Expected End Date',""" Data de Início esperado ' não pode ser maior que' Data Final Esperado '"
'From Date' is required,'From Date' é necessária
'From Date' must be after 'To Date','De Data ' deve ser depois de ' To Date '
'Has Serial No' can not be 'Yes' for non-stock item,'Não tem de série ' não pode ser 'Sim' para o item não- estoque
'Notification Email Addresses' not specified for recurring invoice,"«Notificação endereços de email "" não especificadas para fatura recorrentes"
'Profit and Loss' type account {0} not allowed in Opening Entry,""" Lucros e Perdas "" tipo de conta {0} não é permitido na abertura de entrada"
'To Case No.' cannot be less than 'From Case No.',&quot;Para Processo n º &#39; não pode ser inferior a &#39;From Processo n&#39;
'To Date' is required,' To Date ' é necessária
'Update Stock' for Sales Invoice {0} must be set,"'Atualizar Estoque ""para vendas Invoice {0} deve ser definido"
* Will be calculated in the transaction.,* Será calculado na transação.
"1 Currency = [?] Fraction
For e.g. 1 USD = 100 Cent","1 Moeda = [?] Fração 
 Por exemplo 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 manter o cliente código do item sábio e para torná-los pesquisáveis ​​com base em seu código usar esta opção
"<a href=""#Sales Browser/Customer Group"">Add / Edit</a>","<a href=""#Sales Browser/Customer Group""> toevoegen / bewerken < / a>"
"<a href=""#Sales Browser/Item Group"">Add / Edit</a>","<a href=""#Sales Browser/Item Group""> toevoegen / bewerken < / a>"
"<a href=""#Sales Browser/Territory"">Add / Edit</a>","<a href=""#Sales Browser/Territory""> toevoegen / bewerken < / 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> modelo padrão </ h4> 
 <p> Usa <a href=""http://jinja.pocoo.org/docs/templates/""> Jinja Templating </ a> e todos os campos de Endereço ( incluindo campos personalizados se houver) estará disponível </ p> 
 <pre> <code> {{}} address_line1 <br> 
 {% if address_line2%} {{}} address_line2 <br> { endif% -%} 
 {{cidade}} <br> 
 {% if%} Estado {{estado}} {% endif <br> -%} 
 {% if pincode%} PIN: {{}} pincode <br> {% endif -%} 
 {{país}} <br> 
 {% if%} telefone Telefone: {{telefone}} {<br> endif% -%} 
 {% if%} fax Fax: {{fax}} {% endif <br> -%} 
 {% if% email_id} E-mail: {{}} email_id <br> , {% endif -%} 
 </ code> </ pre>"
A Customer Group exists with same name please change the Customer name or rename the Customer Group,"Um grupo de clientes existente com o mesmo nome, por favor altere o nome do cliente ou renomear o grupo de clientes"
A Customer exists with same name,Um cliente existe com mesmo nome
A Lead with this email id should exist,Um chumbo com esse ID de e-mail deve existir
A Product or Service,Um produto ou serviço
A Supplier exists with same name,Um Fornecedor existe com mesmo nome
A symbol for this currency. For e.g. $,Um símbolo para esta moeda. Por exemplo: $
AMC Expiry Date,AMC Data de Validade
Abbr,Abbr
Abbreviation cannot have more than 5 characters,Abreviatura não pode ter mais de 5 caracteres
Above Value,Acima de Valor
Absent,Ausente
Acceptance Criteria,Critérios de Aceitação
Accepted,Aceito
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Aceito Rejeitado + Qt deve ser igual a quantidade recebida por item {0}
Accepted Quantity,Quantidade Aceito
Accepted Warehouse,Armazém Aceito
Account,conta
Account Balance,Saldo em Conta
Account Created: {0},Conta Criada : {0}
Account Details,Detalhes da conta
Account Head,Chefe conta
Account Name,Nome da conta
Account Type,Tipo de conta
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Saldo já em crédito, você não tem permissão para definir 'saldo deve ser' como 'débito'"
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Saldo já em débito, você não tem permissão para definir 'saldo deve ser' como 'crédito'"
Account for the warehouse (Perpetual Inventory) will be created under this Account.,Rekening voor het magazijn ( Perpetual Inventory ) wordt aangemaakt onder deze account .
Account head {0} created,Cabeça Conta {0} criado
Account must be a balance sheet account,Conta deve ser uma conta de balanço
Account with child nodes cannot be converted to ledger,Conta com nós filhos não pode ser convertido em livro
Account with existing transaction can not be converted to group.,Conta com a transação existente não pode ser convertido em grupo.
Account with existing transaction can not be deleted,Conta com a transação existente não pode ser excluído
Account with existing transaction cannot be converted to ledger,Conta com a transação existente não pode ser convertido em livro
Account {0} cannot be a Group,Conta {0} não pode ser um grupo
Account {0} does not belong to Company {1},Conta {0} não pertence à empresa {1}
Account {0} does not belong to company: {1},Conta {0} não pertence à empresa: {1}
Account {0} does not exist,Conta {0} não existe
Account {0} has been entered more than once for fiscal year {1},Conta {0} foi inserido mais de uma vez para o ano fiscal {1}
Account {0} is frozen,Conta {0} está congelado
Account {0} is inactive,Conta {0} está inativo
Account {0} is not valid,Conta {0} não é válido
Account {0} must be of type 'Fixed Asset' as Item {1} is an Asset Item,"Conta {0} deve ser do tipo "" Ativo Fixo "" como item {1} é um item de ativos"
Account {0}: Parent account {1} can not be a ledger,Conta {0}: conta Parent {1} não pode ser um livro
Account {0}: Parent account {1} does not belong to company: {2},Conta {0}: conta Parent {1} não pertence à empresa: {2}
Account {0}: Parent account {1} does not exist,Conta {0}: conta Parent {1} não existe
Account {0}: You can not assign itself as parent account,Conta {0}: Você não pode atribuir-se como conta principal
"Account: {0} can only be updated via \
					Stock Transactions","Conta: {0} só pode ser atualizado através de \
 operações com ações"
Accountant,contador
Accounting,Contabilidade
"Accounting Entries can be made against leaf nodes, called","Boekingen kunnen worden gemaakt tegen leaf nodes , genaamd"
"Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.","Registro contábil congelado até a presente data, ninguém pode fazer / modificar entrada exceto papel especificado abaixo."
Accounting journal entries.,Lançamentos contábeis jornal.
Accounts,Contas
Accounts Browser,Contas Navegador
Accounts Frozen Upto,Contas congeladas Upto
Accounts Payable,Contas a Pagar
Accounts Receivable,Contas a receber
Accounts Settings,Configurações de contas
Active,Ativo
Active: Will extract emails from ,Ativo: Será que extrair e-mails a partir de
Activity,Atividade
Activity Log,Registro de Atividade
Activity Log:,Activity Log :
Activity Type,Tipo de Atividade
Actual,Real
Actual Budget,Orçamento real
Actual Completion Date,Data de conclusão real
Actual Date,Data Real
Actual End Date,Data final real
Actual Invoice Date,Actual Data da Fatura
Actual Posting Date,Actual Data lançamento
Actual Qty,Qtde real
Actual Qty (at source/target),Qtde real (a origem / destino)
Actual Qty After Transaction,Qtde real após a transação
Actual Qty: Quantity available in the warehouse.,Werkelijke Aantal : Aantal beschikbaar in het magazijn.
Actual Quantity,Quantidade real
Actual Start Date,Data de início real
Add,Adicionar
Add / Edit Taxes and Charges,Adicionar / Editar Impostos e Taxas
Add Child,Child
Add Serial No,Voeg Serienummer
Add Taxes,Belastingen toevoegen
Add Taxes and Charges,Belastingen en heffingen toe te voegen
Add or Deduct,Adicionar ou Deduzir
Add rows to set annual budgets on Accounts.,Adicionar linhas para definir orçamentos anuais nas contas.
Add to Cart,Adicionar ao carrinho
Add to calendar on this date,Toevoegen aan agenda op deze datum
Add/Remove Recipients,Adicionar / Remover Destinatários
Address,Endereço
Address & Contact,Address &amp; Contact
Address & Contacts,Endereço e contatos
Address Desc,Endereço Descr
Address Details,Detalhes de endereço
Address HTML,Abordar HTML
Address Line 1,Endereço Linha 1
Address Line 2,Endereço Linha 2
Address Template,Modelo de endereço
Address Title,Título endereço
Address Title is mandatory.,Endereço de título é obrigatório.
Address Type,Tipo de endereço
Address master.,Mestre de endereços.
Administrative Expenses,despesas administrativas
Administrative Officer,Diretor Administrativo
Advance Amount,Quantidade antecedência
Advance amount,Valor do adiantamento
Advances,Avanços
Advertisement,Anúncio
Advertising,publicidade
Aerospace,aeroespaço
After Sale Installations,Após instalações Venda
Against,Contra
Against Account,Contra Conta
Against Bill {0} dated {1},Contra Bill {0} {1} datado
Against Docname,Contra docName
Against Doctype,Contra Doctype
Against Document Detail No,Contra Detalhe documento n
Against Document No,Contra documento n
Against Expense Account,Contra a conta de despesas
Against Income Account,Contra Conta Renda
Against Journal Voucher,Contra Vale Jornal
Against Journal Voucher {0} does not have any unmatched {1} entry,Contra Jornal Vale {0} não tem {1} entrada incomparável
Against Purchase Invoice,Contra a Nota Fiscal de Compra
Against Sales Invoice,Contra a nota fiscal de venda
Against Sales Order,Tegen klantorder
Against Voucher,Contra Vale
Against Voucher Type,Tipo contra Vale
Ageing Based On,Vergrijzing Based On
Ageing Date is mandatory for opening entry,Envelhecimento Data é obrigatória para a abertura de entrada
Ageing date is mandatory for opening entry,Data Envelhecer é obrigatória para a abertura de entrada
Agent,Agente
Aging Date,Envelhecimento Data
Aging Date is mandatory for opening entry,Envelhecimento Data é obrigatória para a abertura de entrada
Agriculture,agricultura
Airline,companhia aérea
All Addresses.,Todos os endereços.
All Contact,Todos Contato
All Contacts.,Todos os contatos.
All Customer Contact,Todos contato do cliente
All Customer Groups,Todos os grupos de clientes
All Day,Dia de Todos os
All Employee (Active),Todos Empregado (Ativo)
All Item Groups,Todos os grupos de itens
All Lead (Open),Todos chumbo (Aberto)
All Products or Services.,Todos os produtos ou serviços.
All Sales Partner Contact,Todos Contato parceiro de vendas
All Sales Person,Todos Vendas Pessoa
All Supplier Contact,Todos contato fornecedor
All Supplier Types,Alle Leverancier Types
All Territories,Todos os Territórios
"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.","Todas as exportações campos relacionados, como moeda, taxa de conversão , a exportação total, a exportação total etc estão disponíveis na nota de entrega , POS, Cotação , Vendas fatura , Ordem de vendas 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 os campos de importação relacionados, como moeda , taxa de conversão total de importação , importação total etc estão disponíveis no Recibo de compra , fornecedor de cotação , factura de compra , ordem de compra , etc"
All items have already been invoiced,Todos os itens já foram faturados
All these items have already been invoiced,Todos esses itens já foram faturados
Allocate,Distribuir
Allocate leaves for a period.,Alocar folhas por um período .
Allocate leaves for the year.,Alocar folhas para o ano.
Allocated Amount,Montante afectado
Allocated Budget,Orçamento atribuído
Allocated amount,Montante atribuído
Allocated amount can not be negative,Montante atribuído não pode ser negativo
Allocated amount can not greater than unadusted amount,Montante atribuído não pode superior à quantia unadusted
Allow Bill of Materials,Permitir Lista de Materiais
Allow Bill of Materials should be 'Yes'. Because one or many active BOMs present for this item,"Permitir Lista de Materiais deve ser ""sim"" . Porque uma ou várias listas de materiais ativos presentes para este item"
Allow Children,permitir que as crianças
Allow Dropbox Access,Permitir Dropbox Acesso
Allow Google Drive Access,Permitir acesso Google Drive
Allow Negative Balance,Permitir saldo negativo
Allow Negative Stock,Permitir estoque negativo
Allow Production Order,Permitir Ordem de Produção
Allow User,Permitir que o usuário
Allow Users,Permitir que os usuários
Allow the following users to approve Leave Applications for block days.,Permitir que os seguintes usuários para aprovar Deixe Applications para os dias de bloco.
Allow user to edit Price List Rate in transactions,Permitir ao usuário editar Lista de Preços Taxa em transações
Allowance Percent,Percentual subsídio
Allowance for over-{0} crossed for Item {1},Provisão para over-{0} cruzou para item {1}
Allowance for over-{0} crossed for Item {1}.,Provisão para over-{0} cruzou para item {1}.
Allowed Role to Edit Entries Before Frozen Date,Toegestaan ​​Rol te bewerken items voor Frozen Datum
Amended From,Alterado De
Amount,Quantidade
Amount (Company Currency),Amount (Moeda Company)
Amount Paid,Valor pago
Amount to Bill,Neerkomen op Bill
An Customer exists with same name,Existe um cliente com o mesmo nome
"An Item Group exists with same name, please change the item name or rename the item group","Um grupo de itens existe com o mesmo nome, por favor, mude o nome do item ou mudar o nome do grupo de itens"
"An item exists with same name ({0}), please change the item group name or rename the item","Um item existe com o mesmo nome ( {0}) , por favor, altere o nome do grupo de itens ou renomear o item"
Analyst,analista
Annual,anual
Another Period Closing Entry {0} has been made after {1},Outra entrada Período de Encerramento {0} foi feita após {1}
Another Salary Structure {0} is active for employee {0}. Please make its status 'Inactive' to proceed.,"Outra estrutura salarial {0} está ativo para empregado {0}. Por favor, faça seu status ' inativo ' para prosseguir ."
"Any other comments, noteworthy effort that should go in the records.","Quaisquer outros comentários, esforço notável que deve ir para os registros."
Apparel & Accessories,Vestuário e Acessórios
Applicability,aplicabilidade
Applicable For,aplicável
Applicable Holiday List,Lista de férias aplicável
Applicable Territory,Toepasselijk Territory
Applicable To (Designation),Para aplicável (Designação)
Applicable To (Employee),Para aplicável (Employee)
Applicable To (Role),Para aplicável (Papel)
Applicable To (User),Para aplicável (Usuário)
Applicant Name,Nome do requerente
Applicant for a Job.,Candidato a um emprego.
Application of Funds (Assets),Aplicações de Recursos ( Ativos )
Applications for leave.,Os pedidos de licença.
Applies to Company,Aplica-se a Empresa
Apply On,aplicar Em
Appraisal,Avaliação
Appraisal Goal,Meta de avaliação
Appraisal Goals,Metas de avaliação
Appraisal Template,Modelo de avaliação
Appraisal Template Goal,Meta Modelo de avaliação
Appraisal Template Title,Título do modelo de avaliação
Appraisal {0} created for Employee {1} in the given date range,Appraisal {0} criado para Employee {1} no intervalo de datas
Apprentice,aprendiz
Approval Status,Status de Aprovação
Approval Status must be 'Approved' or 'Rejected',"Status de Aprovação deve ser ""Aprovado"" ou "" Rejeitado """
Approved,Aprovado
Approver,Aprovador
Approving Role,Aprovar Papel
Approving Role cannot be same as role the rule is Applicable To,Aprovando Papel não pode ser o mesmo que papel a regra é aplicável a
Approving User,Aprovar Usuário
Approving User cannot be same as user the rule is Applicable To,Aprovando usuário não pode ser o mesmo que usuário a regra é aplicável a
Are you sure you want to STOP ,
Are you sure you want to UNSTOP ,
Arrear Amount,Quantidade atraso
"As Production Order can be made for this item, it must be a stock item.","Como ordem de produção pode ser feita para este item , deve ser um item de estoque."
As per Stock UOM,Como por Banco 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'","Want er zijn bestaande voorraad transacties voor dit artikel , kunt u de waarden van ' Has Serial No ' niet veranderen , ' Is Stock Item ' en ' Valuation Method '"
Asset,ativos
Assistant,assistente
Associate,associado
Atleast one of the Selling or Buying must be selected,Pelo menos um dos que vendem ou compram deve ser selecionado
Atleast one warehouse is mandatory,Pelo menos um armazém é obrigatório
Attach Image,anexar imagem
Attach Letterhead,anexar timbrado
Attach Logo,anexar Logo
Attach Your Picture,Fixe sua imagem
Attendance,Comparecimento
Attendance Date,Data de atendimento
Attendance Details,Detalhes atendimento
Attendance From Date,Presença de Data
Attendance From Date and Attendance To Date is mandatory,Aanwezigheid Van Datum en tot op heden opkomst is verplicht
Attendance To Date,Atendimento para a data
Attendance can not be marked for future dates,Atendimento não pode ser marcado para datas futuras
Attendance for employee {0} is already marked,Atendimento para empregado {0} já está marcado
Attendance record.,Recorde de público.
Authorization Control,Controle de autorização
Authorization Rule,Regra autorização
Auto Accounting For Stock Settings,Auto Accounting Voor Stock Instellingen
Auto Material Request,Pedido de material Auto
Auto-raise Material Request if quantity goes below re-order level in a warehouse,Auto-raise pedido se se a quantidade for inferior a nível re-order em um armazém
Automatically compose message on submission of transactions.,Compor automaticamente mensagem na apresentação de transações.
Automatically extract Job Applicants from a mail box ,
Automatically extract Leads from a mail box e.g.,Leads automatisch extraheren uit een brievenbus bijv.
Automatically updated via Stock Entry of type Manufacture/Repack,Atualizado automaticamente através da entrada de Fabricação tipo / Repack
Automotive,automotivo
Autoreply when a new mail is received,Autoreply quando um novo e-mail é recebido
Available,beschikbaar
Available Qty at Warehouse,Qtde Disponível em Armazém
Available Stock for Packing Items,Estoque disponível para embalagem itens
"Available in BOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet","Disponível em BOM, nota de entrega , factura de compra , ordem de produção , ordem de compra , Recibo de compra , nota fiscal de venda , ordem de venda , Stock entrada , quadro de horários"
Average Age,Gemiddelde Leeftijd
Average Commission Rate,Gemiddelde Commissie Rate
Average Discount,Desconto médio
Awesome Products,produtos impressionantes
Awesome Services,impressionante Serviços
BOM Detail No,BOM nenhum detalhe
BOM Explosion Item,BOM item explosão
BOM Item,Item BOM
BOM No,BOM Não
BOM No. for a Finished Good Item,BOM Não. para um item acabado
BOM Operation,Operação BOM
BOM Operations,Operações BOM
BOM Replace Tool,BOM Ferramenta Substituir
BOM number is required for manufactured Item {0} in row {1},BOM número é necessário para manufaturados item {0} na linha {1}
BOM number not allowed for non-manufactured Item {0} in row {1},Número BOM não é permitido para os não- manufaturado item {0} na linha {1}
BOM recursion: {0} cannot be parent or child of {2},BOM recursão: {0} não pode ser pai ou filho de {2}
BOM replaced,BOM substituído
BOM {0} for Item {1} in row {2} is inactive or not submitted,BOM {0} para {1} item na linha {2} está inativo ou não submetido
BOM {0} is not active or not submitted,BOM {0} não está ativo ou não submetidos
BOM {0} is not submitted or inactive BOM for Item {1},BOM {0} não for apresentado ou inativo BOM por item {1}
Backup Manager,Backup Manager
Backup Right Now,Faça backup Right Now
Backups will be uploaded to,Backups serão enviados para
Balance Qty,Balance Aantal
Balance Sheet,Balanço
Balance Value,Balance Waarde
Balance for Account {0} must always be {1},Saldo Conta {0} deve ser sempre {1}
Balance must be,Equilíbrio deve ser
"Balances of Accounts of type ""Bank"" or ""Cash""","Saldos das contas do tipo "" Banco"" ou ""Cash """
Bank,Banco
Bank / Cash Account,Banco / Conta Caixa
Bank A/C No.,Bank A / C N º
Bank Account,Conta bancária
Bank Account No.,Banco Conta N º
Bank Accounts,bankrekeningen
Bank Clearance Summary,Banco Resumo Clearance
Bank Draft,cheque administrativo
Bank Name,Nome do banco
Bank Overdraft Account,Conta Garantida Banco
Bank Reconciliation,Banco Reconciliação
Bank Reconciliation Detail,Banco Detalhe Reconciliação
Bank Reconciliation Statement,Declaração de reconciliação bancária
Bank Voucher,Vale banco
Bank/Cash Balance,Banco / Saldo de Caixa
Banking,bancário
Barcode,Código de barras
Barcode {0} already used in Item {1},Barcode {0} já utilizado em item {1}
Based On,Baseado em
Basic,básico
Basic Info,Informações Básicas
Basic Information,Informações Básicas
Basic Rate,Taxa Básica
Basic Rate (Company Currency),Taxa Básica (Moeda Company)
Batch,Fornada
Batch (lot) of an Item.,Batch (lote) de um item.
Batch Finished Date,Terminado lote Data
Batch ID,Lote ID
Batch No,No lote
Batch Started Date,Iniciado lote Data
Batch Time Logs for billing.,Tempo lote Logs para o faturamento.
Batch-Wise Balance History,Por lotes História Balance
Batched for Billing,Agrupadas para Billing
Better Prospects,Melhores perspectivas
Bill Date,Data Bill
Bill No,Projeto de Lei n
Bill No {0} already booked in Purchase Invoice {1},Bill Não {0} já reservado na factura de compra {1}
Bill of Material,Lista de Materiais
Bill of Material to be considered for manufacturing,Lista de Materiais a serem considerados para a fabricação
Bill of Materials (BOM),Lista de Materiais (BOM)
Billable,Faturável
Billed,Faturado
Billed Amount,gefactureerde bedrag
Billed Amt,Faturado Amt
Billing,Faturamento
Billing Address,Endereço de Cobrança
Billing Address Name,Faturamento Nome Endereço
Billing Status,Estado de faturamento
Bills raised by Suppliers.,Contas levantada por Fornecedores.
Bills raised to Customers.,Contas levantou a Clientes.
Bin,Caixa
Bio,Bio
Biotechnology,biotecnologia
Birthday,verjaardag
Block Date,Bloquear Data
Block Days,Dias bloco
Block leave applications by department.,Bloquear deixar aplicações por departamento.
Blog Post,Blog Mensagem
Blog Subscriber,Assinante Blog
Blood Group,Grupo sanguíneo
Both Warehouse must belong to same Company,Beide Warehouse moeten behoren tot dezelfde Company
Box,caixa
Branch,Ramo
Brand,Marca
Brand Name,Marca
Brand master.,Mestre marca.
Brands,Marcas
Breakdown,Colapso
Broadcasting,radiodifusão
Brokerage,corretagem
Budget,Orçamento
Budget Allocated,Orçamento alocado
Budget Detail,Detalhe orçamento
Budget Details,Detalhes Orçamento
Budget Distribution,Distribuição orçamento
Budget Distribution Detail,Detalhe Distribuição orçamento
Budget Distribution Details,Distribuição Detalhes Orçamento
Budget Variance Report,Relatório Variance Orçamento
Budget cannot be set for Group Cost Centers,Orçamento não pode ser definido por centros de custo do grupo
Build Report,Build Report
Bundle items at time of sale.,Bundle itens no momento da venda.
Business Development Manager,Gerente de Desenvolvimento de Negócios
Buying,Comprar
Buying & Selling,Compra e Venda
Buying Amount,Comprar Valor
Buying Settings,Comprar Configurações
"Buying must be checked, if Applicable For is selected as {0}","Compra deve ser verificada, se for caso disso for selecionado como {0}"
C-Form,C-Form
C-Form Applicable,C-Form Aplicável
C-Form Invoice Detail,C-Form Detalhe Fatura
C-Form No,C-Forma Não
C-Form records,C -Form platen
CENVAT Capital Goods,CENVAT Bens de Capital
CENVAT Edu Cess,CENVAT Edu Cess
CENVAT SHE Cess,CENVAT SHE Cess
CENVAT Service Tax,CENVAT Imposto sobre Serviços
CENVAT Service Tax Cess 1,CENVAT Imposto sobre Serviços Cess 1
CENVAT Service Tax Cess 2,CENVAT Imposto sobre Serviços Cess 2
Calculate Based On,Calcule Baseado em
Calculate Total Score,Calcular a pontuação total
Calendar Events,Calendário de Eventos
Call,Chamar
Calls,chamadas
Campaign,Campanha
Campaign Name,Nome da campanha
Campaign Name is required,Nome da campanha é necessária
Campaign Naming By,Campanha de nomeação
Campaign-.####,Campanha - . # # # #
Can be approved by {0},Pode ser aprovado pelo {0}
"Can not filter based on Account, if grouped by Account",Kan niet filteren op basis van account als gegroepeerd per account
"Can not filter based on Voucher No, if grouped by Voucher","Kan niet filteren op basis van Voucher Nee, als gegroepeerd per Voucher"
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',Pode se referir linha apenas se o tipo de acusação é 'On Anterior Valor Row ' ou ' Previous Row Total'
Cancel Material Visit {0} before cancelling this Customer Issue,Cancelar material Visita {0} antes de cancelar este problema do cliente
Cancel Material Visits {0} before cancelling this Maintenance Visit,Cancelar Materiais Visitas {0} antes de cancelar este Manutenção Visita
Cancelled,Cancelado
Cancelling this Stock Reconciliation will nullify its effect.,Annuleren van dit Stock Verzoening zal het effect teniet doen .
Cannot Cancel Opportunity as Quotation Exists,Kan niet annuleren Opportunity als Offerte Bestaat
Cannot approve leave as you are not authorized to approve leaves on Block Dates,Não foi possível aprovar a licença que você não está autorizado a aprovar folhas em datas Bloco
Cannot cancel because Employee {0} is already approved for {1},Não pode cancelar porque Employee {0} já está aprovado para {1}
Cannot cancel because submitted Stock Entry {0} exists,Não pode cancelar por causa da entrada submetido {0} existe
Cannot carry forward {0},Não é possível levar adiante {0}
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Não é possível alterar o Ano Fiscal Data de Início e Data de Fim Ano Fiscal uma vez que o Ano Fiscal é salvo.
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","Não é possível alterar a moeda padrão da empresa, porque existem operações existentes. Transações devem ser canceladas para alterar a moeda padrão."
Cannot convert Cost Center to ledger as it has child nodes,"Não é possível converter Centro de Custo de contabilidade , uma vez que tem nós filhos"
Cannot covert to Group because Master Type or Account Type is selected.,Não é possível converter ao Grupo porque Type Master ou Tipo de Conta é selecionado.
Cannot deactive or cancle BOM as it is linked with other BOMs,"Não pode desativados ou cancle BOM , pois está relacionada com outras BOMs"
"Cannot declare as lost, because Quotation has been made.","Kan niet verklaren als verloren , omdat Offerte is gemaakt."
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',Não pode deduzir quando é para categoria ' Avaliação ' ou ' Avaliação e Total'
"Cannot delete Serial No {0} in stock. First remove from stock, then delete.","Não é possível excluir Sem Serial {0} em estoque. Primeiro retire do estoque , em seguida, exclua ."
"Cannot directly set amount. For 'Actual' charge type, use the rate field","Não é possível definir diretamente montante. Para ' Actual ' tipo de carga , use o campo taxa"
"Cannot overbill for Item {0} in row {0} more than {1}. To allow overbilling, please set in Stock Settings","Não pode overbill para item {0} na linha {0} mais de {1}. Para permitir o superfaturamento, defina no Banco Configurações"
Cannot produce more Item {0} than Sales Order quantity {1},Não é possível produzir mais item {0} do que a quantidade Ordem de Vendas {1}
Cannot refer row number greater than or equal to current row number for this Charge type,Não é possível consultar número da linha superior ou igual ao número da linha atual para este tipo de carga
Cannot return more than {0} for Item {1},Não pode retornar mais de {0} para {1} item
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,"Não é possível selecionar o tipo de carga como "" Valor Em linha anterior ' ou ' On Anterior Row Total ' para a primeira linha"
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,"Não é possível selecionar o tipo de carga como "" Valor Em linha anterior ' ou ' On Anterior Row Total ' para a avaliação. Você pode selecionar apenas a opção ' Total' para montante linha anterior ou linha anterior total de"
Cannot set as Lost as Sales Order is made.,Kan niet ingesteld als Lost als Sales Order wordt gemaakt .
Cannot set authorization on basis of Discount for {0},Não é possível definir a autorização com base em desconto para {0}
Capacity,Capacidade
Capacity Units,Unidades de capacidade
Capital Account,Conta Capital
Capital Equipments,Equipamentos Capitais
Carry Forward,Transportar
Carry Forwarded Leaves,Carry Folhas encaminhadas
Case No(s) already in use. Try from Case No {0},Processo n º (s) já está em uso . Tente de Processo n {0}
Case No. cannot be 0,Zaak nr. mag geen 0
Cash,Numerário
Cash In Hand,Dinheiro na mão
Cash Voucher,Comprovante de dinheiro
Cash or Bank Account is mandatory for making payment entry,Dinheiro ou conta bancária é obrigatória para a tomada de entrada de pagamento
Cash/Bank Account,Caixa / Banco Conta
Casual Leave,Casual Deixar
Cell Number,Número de células
Change UOM for an Item.,Alterar UOM de um item.
Change the starting / current sequence number of an existing series.,Alterar o número de seqüência de partida / corrente de uma série existente.
Channel Partner,Parceiro de Canal
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Charge do tipo ' real ' na linha {0} não pode ser incluído no item Taxa
Chargeable,Imputável
Charity and Donations,Caridade e Doações
Chart Name,Nome do gráfico
Chart of Accounts,Plano de Contas
Chart of Cost Centers,Plano de Centros de Custo
Check how the newsletter looks in an email by sending it to your email.,Verifique como o boletim olha em um e-mail enviando-o para o seu e-mail.
"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Verifique se factura recorrente, desmarque a parar recorrente ou colocar Data final adequada"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Verifique se você precisa automáticos de facturas recorrentes. Depois de apresentar qualquer nota fiscal de venda, seção Recorrente será visível."
Check if you want to send salary slip in mail to each employee while submitting salary slip,Verifique se você quiser enviar folha de salário no correio a cada empregado ao enviar folha de salário
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Marque esta opção se você deseja forçar o usuário para selecionar uma série antes de salvar. Não haverá nenhum padrão, se você verificar isso."
Check this if you want to show in website,Marque esta opção se você deseja mostrar no site
Check this to disallow fractions. (for Nos),Marque esta opção para não permitir frações. (Para n)
Check this to pull emails from your mailbox,Marque esta a puxar e-mails de sua caixa de correio
Check to activate,Marque para ativar
Check to make Shipping Address,Verifique para ter endereço de entrega
Check to make primary address,Verifique para ter endereço principal
Chemical,químico
Cheque,Cheque
Cheque Date,Data Cheque
Cheque Number,Número de cheques
Child account exists for this account. You can not delete this account.,Conta Criança existe para esta conta. Você não pode excluir esta conta.
City,Cidade
City/Town,Cidade / Município
Claim Amount,Quantidade reivindicação
Claims for company expense.,Os pedidos de despesa da empresa.
Class / Percentage,Classe / Percentual
Classic,Clássico
Clear Table,Tabela clara
Clearance Date,Data de Liquidação
Clearance Date not mentioned,Apuramento data não mencionada
Clearance date cannot be before check date in row {0},Apuramento data não pode ser anterior à data de verificação na linha {0}
Click on 'Make Sales Invoice' button to create a new Sales Invoice.,Clique em &#39;Criar Fatura de vendas&#39; botão para criar uma nova factura de venda.
Click on a link to get options to expand get options ,
Client,Cliente
Close Balance Sheet and book Profit or Loss.,Sluiten Balans en boek Winst of verlies .
Closed,Fechado
Closing (Cr),Fechamento (Cr)
Closing (Dr),Fechamento (Dr)
Closing Account Head,Fechando Chefe Conta
Closing Account {0} must be of type 'Liability',Fechando Conta {0} deve ser do tipo ' responsabilidade '
Closing Date,Data de Encerramento
Closing Fiscal Year,Encerramento do exercício social
Closing Qty,closing Aantal
Closing Value,eindwaarde
CoA Help,Ajuda CoA
Code,Código
Cold Calling,Cold Calling
Color,Cor
Column Break,Quebra de coluna
Comma separated list of email addresses,Lista separada por vírgulas de endereços de e-mail
Comment,Comentário
Comments,Comentários
Commercial,comercial
Commission,comissão
Commission Rate,Taxa de Comissão
Commission Rate (%),Comissão Taxa (%)
Commission on Sales,Comissão sobre Vendas
Commission rate cannot be greater than 100,Taxa de comissão não pode ser maior do que 100
Communication,Comunicação
Communication HTML,Comunicação HTML
Communication History,História da comunicação
Communication log.,Log de comunicação.
Communications,communicatie
Company,Companhia
Company (not Customer or Supplier) master.,Company ( não cliente ou fornecedor ) mestre.
Company Abbreviation,bedrijf Afkorting
Company Details,Detalhes da empresa
Company Email,bedrijf E-mail
"Company Email ID not found, hence mail not sent","Empresa E-mail ID não foi encontrado , daí mail não enviado"
Company Info,Informações da empresa
Company Name,Nome da empresa
Company Settings,Configurações da empresa
Company is missing in warehouses {0},Empresa está em falta nos armazéns {0}
Company is required,Companhia é obrigada
Company registration numbers for your reference. Example: VAT Registration Numbers etc.,Números da empresa de registro para sua referência. Exemplo: IVA números de matrícula etc
Company registration numbers for your reference. Tax numbers etc.,"Números da empresa de registro para sua referência. Números fiscais, etc"
"Company, Month and Fiscal Year is mandatory","Bedrijf , maand en het fiscale jaar is verplicht"
Compensatory Off,compensatória Off
Complete,Completar
Complete Setup,Instalação concluída
Completed,Concluído
Completed Production Orders,Voltooide productieorders
Completed Qty,Concluído Qtde
Completion Date,Data de Conclusão
Completion Status,Status de conclusão
Computer,computador
Computers,informática
Confirmation Date,bevestiging Datum
Confirmed orders from Customers.,Confirmado encomendas de clientes.
Consider Tax or Charge for,Considere imposto ou encargo para
Considered as Opening Balance,Considerado como Saldo
Considered as an Opening Balance,Considerado como um saldo de abertura
Consultant,Consultor
Consulting,consultor
Consumable,Consumíveis
Consumable Cost,verbruiksartikelen Cost
Consumable cost per hour,Verbruiksartikelen kosten per uur
Consumed Qty,Qtde consumida
Consumer Products,produtos para o Consumidor
Contact,Contato
Contact Control,Fale Controle
Contact Desc,Contato Descr
Contact Details,Contacto
Contact Email,Contato E-mail
Contact HTML,Contato HTML
Contact Info,Informações para contato
Contact Mobile No,Contato móveis não
Contact Name,Nome de Contato
Contact No.,Fale Não.
Contact Person,Pessoa de contato
Contact Type,Tipo de Contato
Contact master.,Contato mestre.
Contacts,Contactos
Content,Conteúdo
Content Type,Tipo de conteúdo
Contra Voucher,Vale Contra
Contract,contrato
Contract End Date,Data final do contrato
Contract End Date must be greater than Date of Joining,Data Contrato Final deve ser maior que Data de Participar
Contribution (%),Contribuição (%)
Contribution to Net Total,Contribuição para o Total Líquido
Conversion Factor,Fator de Conversão
Conversion Factor is required,Fator de Conversão é necessária
Conversion factor cannot be in fractions,Fator de conversão não pode estar em frações
Conversion factor for default Unit of Measure must be 1 in row {0},Fator de conversão de unidade de medida padrão deve ser 1 na linha {0}
Conversion rate cannot be 0 or 1,A taxa de conversão não pode ser 0 ou 1
Convert into Recurring Invoice,Converter em fatura Recorrente
Convert to Group,Converteren naar Groep
Convert to Ledger,Converteren naar Ledger
Converted,Convertido
Copy From Item Group,Copiar do item do grupo
Cosmetics,Cosméticos
Cost Center,Centro de Custos
Cost Center Details,Custo Detalhes Centro
Cost Center Name,Custo Nome Centro
Cost Center is required for 'Profit and Loss' account {0},"Centro de custo é necessário para "" Lucros e Perdas "" conta {0}"
Cost Center is required in row {0} in Taxes table for type {1},Centro de Custo é necessária na linha {0} no Imposto de mesa para o tipo {1}
Cost Center with existing transactions can not be converted to group,Centro de custo com as operações existentes não podem ser convertidos em grupo
Cost Center with existing transactions can not be converted to ledger,Centro de custo com as operações existentes não podem ser convertidos em livro
Cost Center {0} does not belong to Company {1},Centro de Custo {0} não pertence a Empresa {1}
Cost of Goods Sold,Custo dos Produtos Vendidos
Costing,Custeio
Country,País
Country Name,Nome do País
Country wise default Address Templates,Modelos País default sábio endereço
"Country, Timezone and Currency","Country , Tijdzone en Valuta"
Create Bank Voucher for the total salary paid for the above selected criteria,Criar Vale do Banco Mundial para o salário total pago para os critérios acima selecionados
Create Customer,Maak de klant
Create Material Requests,Criar Pedidos de Materiais
Create New,Create New
Create Opportunity,Maak Opportunity
Create Production Orders,Criar ordens de produção
Create Quotation,Maak Offerte
Create Receiver List,Criar Lista de Receptor
Create Salary Slip,Criar folha de salário
Create Stock Ledger Entries when you submit a Sales Invoice,Criar entradas da Razão quando você enviar uma fatura de vendas
"Create and manage daily, weekly and monthly email digests.","Criar e gerenciar diários, semanais e mensais digere e-mail."
Create rules to restrict transactions based on values.,Criar regras para restringir operações com base em valores.
Created By,Criado por
Creates salary slip for above mentioned criteria.,Cria folha de salário para os critérios acima mencionados.
Creation Date,aanmaakdatum
Creation Document No,Creatie Document No
Creation Document Type,Type het maken van documenten
Creation Time,Aanmaaktijd
Credentials,Credenciais
Credit,Crédito
Credit Amt,Crédito Amt
Credit Card,cartão de crédito
Credit Card Voucher,Comprovante do cartão de crédito
Credit Controller,Controlador de crédito
Credit Days,Dias de crédito
Credit Limit,Limite de Crédito
Credit Note,Nota de Crédito
Credit To,Para crédito
Currency,Moeda
Currency Exchange,Câmbio
Currency Name,Nome da Moeda
Currency Settings,Configurações Moeda
Currency and Price List,Moeda e Preço
Currency exchange rate master.,Mestre taxa de câmbio .
Current Address,Endereço Atual
Current Address Is,Huidige adres wordt
Current Assets,Ativo Circulante
Current BOM,BOM atual
Current BOM and New BOM can not be same,Atual BOM e Nova BOM não pode ser o mesmo
Current Fiscal Year,Atual Exercício
Current Liabilities,passivo circulante
Current Stock,Estoque atual
Current Stock UOM,UOM Estoque atual
Current Value,Valor Atual
Custom,Personalizado
Custom Autoreply Message,Mensagem de resposta automática personalizada
Custom Message,Mensagem personalizada
Customer,Cliente
Customer (Receivable) Account,Cliente (receber) Conta
Customer / Item Name,Cliente / Nome do item
Customer / Lead Address,Klant / Lead Adres
Customer / Lead Name,Cliente / Nome de chumbo
Customer > Customer Group > Territory,Cliente> Grupo Cliente> Território
Customer Account Head,Cliente Cabeça Conta
Customer Acquisition and Loyalty,Klantenwerving en Loyalty
Customer Address,Endereço do cliente
Customer Addresses And Contacts,Endereços e contatos de clientes
Customer Addresses and Contacts,Endereços de Clientes e Contactos
Customer Code,Código Cliente
Customer Codes,Códigos de clientes
Customer Details,Detalhes do cliente
Customer Feedback,Comentário do cliente
Customer Group,Grupo de Clientes
Customer Group / Customer,Customer Group / Klantenservice
Customer Group Name,Nome do grupo de clientes
Customer Intro,Cliente Intro
Customer Issue,Edição cliente
Customer Issue against Serial No.,Emissão cliente contra Serial No.
Customer Name,Nome do cliente
Customer Naming By,Cliente de nomeação
Customer Service,atendimento ao cliente
Customer database.,Banco de dados do cliente.
Customer is required,É necessário ao cliente
Customer master.,Mestre de clientes.
Customer required for 'Customerwise Discount',Necessário para ' Customerwise Discount ' Cliente
Customer {0} does not belong to project {1},Cliente {0} não pertence ao projeto {1}
Customer {0} does not exist,Cliente {0} não existe
Customer's Item Code,Código do Cliente item
Customer's Purchase Order Date,Do Cliente Ordem de Compra Data
Customer's Purchase Order No,Ordem de Compra do Cliente Não
Customer's Purchase Order Number,Klant Inkoopordernummer
Customer's Vendor,Vendedor cliente
Customers Not Buying Since Long Time,Os clientes não compra desde há muito tempo
Customerwise Discount,Desconto Customerwise
Customize,Personalize
Customize the Notification,Personalize a Notificação
Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,Personalize o texto introdutório que vai como uma parte do que e-mail. Cada transação tem um texto separado introdutório.
DN Detail,Detalhe DN
Daily,Diário
Daily Time Log Summary,Resumo Diário Log Tempo
Database Folder ID,ID Folder Database
Database of potential customers.,Banco de dados de clientes potenciais.
Date,Data
Date Format,Formato de data
Date Of Retirement,Data da aposentadoria
Date Of Retirement must be greater than Date of Joining,Data da aposentadoria deve ser maior que Data de Juntando
Date is repeated,Data é repetido
Date of Birth,Data de Nascimento
Date of Issue,Data de Emissão
Date of Joining,Data da Unir
Date of Joining must be greater than Date of Birth,Data de Juntando deve ser maior do que o Data de Nascimento
Date on which lorry started from supplier warehouse,Data em que o camião começou a partir de armazém fornecedor
Date on which lorry started from your warehouse,Data em que o camião começou a partir de seu armazém
Dates,Datas
Days Since Last Order,Dagen sinds vorige Bestel
Days for which Holidays are blocked for this department.,Dias para que feriados são bloqueados para este departamento.
Dealer,Revendedor
Debit,Débito
Debit Amt,Débito Amt
Debit Note,Nota de Débito
Debit To,Para débito
Debit and Credit not equal for this voucher. Difference is {0}.,Débito e Crédito não é igual para este voucher. A diferença é {0}.
Deduct,Subtrair
Deduction,Dedução
Deduction Type,Tipo de dedução
Deduction1,Deduction1
Deductions,Deduções
Default,Omissão
Default Account,Conta Padrão
Default Address Template cannot be deleted,Template endereço padrão não pode ser excluído
Default Amount,Quantidade padrão
Default BOM,BOM padrão
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Conta padrão Banco / Cash será atualizado automaticamente na fatura POS quando este modo for selecionado.
Default Bank Account,Conta Bancária Padrão
Default Buying Cost Center,Compra Centro de Custo Padrão
Default Buying Price List,Standaard Buying Prijslijst
Default Cash Account,Conta Caixa padrão
Default Company,Empresa padrão
Default Currency,Moeda padrão
Default Customer Group,Grupo de Clientes padrão
Default Expense Account,Conta Despesa padrão
Default Income Account,Conta Rendimento padrão
Default Item Group,Grupo Item padrão
Default Price List,Lista de Preços padrão
Default Purchase Account in which cost of the item will be debited.,Conta de compra padrão em que o custo do item será debitado.
Default Selling Cost Center,Venda Padrão Centro de Custo
Default Settings,Predefinições
Default Source Warehouse,Armazém da fonte padrão
Default Stock UOM,Padrão da UOM
Default Supplier,Fornecedor padrão
Default Supplier Type,Tipo de fornecedor padrão
Default Target Warehouse,Armazém alvo padrão
Default Territory,Território padrão
Default Unit of Measure,Unidade de medida padrão
"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.","Standaard meeteenheid kan niet direct worden veranderd , omdat je al enkele transactie (s ) heeft gemaakt met een andere Verpakking . Om standaard Verpakking wijzigen, gebruikt ' Verpakking Vervang Utility ' hulpmiddel onder Stock module ."
Default Valuation Method,Método de Avaliação padrão
Default Warehouse,Armazém padrão
Default Warehouse is mandatory for stock Item.,Armazém padrão é obrigatório para estoque Item.
Default settings for accounting transactions.,As configurações padrão para as transações contábeis.
Default settings for buying transactions.,As configurações padrão para a compra de transações.
Default settings for selling transactions.,As configurações padrão para a venda de transações.
Default settings for stock transactions.,As configurações padrão para transações com ações .
Defense,defesa
"Define Budget for this Cost Center. To set budget action, see <a href=""#!List/Company"">Company Master</a>","Definir Orçamento para este Centro de Custo. Para definir ação do orçamento, consulte <a href=""#!List/Company"">Mestre Empresa</a>"
Del,Del
Delete,Excluir
Delete {0} {1}?,Excluir {0} {1} ?
Delivered,Entregue
Delivered Items To Be Billed,Itens entregues a ser cobrado
Delivered Qty,Qtde entregue
Delivered Serial No {0} cannot be deleted,Entregue Serial Não {0} não pode ser excluído
Delivery Date,Data de entrega
Delivery Details,Detalhes da entrega
Delivery Document No,Documento de Entrega Não
Delivery Document Type,Tipo de Documento de Entrega
Delivery Note,Guia de remessa
Delivery Note Item,Item Nota de Entrega
Delivery Note Items,Nota Itens de entrega
Delivery Note Message,Mensagem Nota de Entrega
Delivery Note No,Nota de Entrega Não
Delivery Note Required,Nota de Entrega Obrigatório
Delivery Note Trends,Nota de entrega Trends
Delivery Note {0} is not submitted,Entrega Nota {0} não é submetido
Delivery Note {0} must not be submitted,Entrega Nota {0} não deve ser apresentado
Delivery Notes {0} must be cancelled before cancelling this Sales Order,Notas de entrega {0} deve ser cancelado antes de cancelar esta ordem de venda
Delivery Status,Estado entrega
Delivery Time,Prazo de entrega
Delivery To,Entrega
Department,Departamento
Department Stores,Lojas de Departamento
Depends on LWP,Depende LWP
Depreciation,depreciação
Description,Descrição
Description HTML,Descrição HTML
Designation,Designação
Designer,estilista
Detailed Breakup of the totals,Breakup detalhada dos totais
Details,Detalhes
Difference (Dr - Cr),Diferença ( Dr - Cr)
Difference Account,verschil Account
"Difference Account must be a 'Liability' type account, since this Stock Reconciliation is an Opening Entry","Conta diferença deve ser um tipo de conta ' Responsabilidade ' , uma vez que este Banco de reconciliação é uma entrada de Abertura"
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 itens levará a incorreta valor Peso Líquido (Total ) . Certifique-se de que o peso líquido de cada item está na mesma UOM .
Direct Expenses,Despesas Diretas
Direct Income,Resultado direto
Disable,incapacitar
Disable Rounded Total,Desativar total arredondado
Disabled,Inválido
Discount  %,% De desconto
Discount %,% De desconto
Discount (%),Desconto (%)
Discount Amount,Montante do Desconto
"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Campos de desconto estará disponível em Ordem de Compra, Recibo de Compra, Nota Fiscal de Compra"
Discount Percentage,Percentagem de Desconto
Discount Percentage can be applied either against a Price List or for all Price List.,Percentual de desconto pode ser aplicado contra uma lista de preços ou para todos Lista de Preços.
Discount must be less than 100,Desconto deve ser inferior a 100
Discount(%),Desconto (%)
Dispatch,expedição
Display all the individual items delivered with the main items,Exibir todos os itens individuais entregues com os principais itens
Distribute transport overhead across items.,Distribua por cima o transporte através itens.
Distribution,Distribuição
Distribution Id,Id distribuição
Distribution Name,Nome de distribuição
Distributor,Distribuidor
Divorced,Divorciado
Do Not Contact,Neem geen contact op
Do not show any symbol like $ etc next to currencies.,Não mostrar qualquer símbolo como US $ etc ao lado de moedas.
Do really want to unstop production order: ,
Do you really want to STOP ,
Do you really want to STOP this Material Request?,Wil je echt wilt dit materiaal afbreken ?
Do you really want to Submit all Salary Slip for month {0} and year {1},Você realmente quer submeter todos os folha de salário do mês {0} e {1} ano
Do you really want to UNSTOP ,
Do you really want to UNSTOP this Material Request?,Wil je echt wilt dit materiaal aanvragen opendraaien ?
Do you really want to stop production order: ,
Doc Name,Nome Doc
Doc Type,Tipo Doc
Document Description,Descrição documento
Document Type,Tipo de Documento
Documents,Documentos
Domain,Domínio
Don't send Employee Birthday Reminders,Stuur geen Werknemer verjaardagsherinneringen
Download Materials Required,Baixe Materiais Necessários
Download Reconcilation Data,Download Verzoening gegevens
Download Template,Baixe Template
Download a report containing all raw materials with their latest inventory status,Baixe um relatório contendo todas as matérias-primas com o seu estado mais recente inventário
"Download the Template, fill appropriate data and attach the modified file.","Baixe o modelo , preencha os dados apropriados e anexe o arquivo 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","Baixe o modelo, preencha os dados apropriados e anexe o arquivo modificado.
 Todas as datas e combinação empregado no período selecionado virá no modelo, com registros de freqüência existentes"
Draft,Rascunho
Dropbox,Dropbox
Dropbox Access Allowed,Dropbox acesso permitido
Dropbox Access Key,Dropbox Chave de Acesso
Dropbox Access Secret,Dropbox acesso secreta
Due Date,Data de Vencimento
Due Date cannot be after {0},Due Date não pode ser posterior a {0}
Due Date cannot be before Posting Date,Due Date não pode ser antes de Postar Data
Duplicate Entry. Please check Authorization Rule {0},"Duplicar entrada . Por favor, verifique Regra de Autorização {0}"
Duplicate Serial No entered for Item {0},Duplicar Serial Não entrou para item {0}
Duplicate entry,duplicar entrada
Duplicate row {0} with same {1},Linha duplicada {0} com o mesmo {1}
Duties and Taxes,Impostos e Contribuições
ERPNext Setup,ERPNext Setup
Earliest,vroegste
Earnest Money,Dinheiro Earnest
Earning,Ganhando
Earning & Deduction,Ganhar &amp; Dedução
Earning Type,Ganhando Tipo
Earning1,Earning1
Edit,Editar
Edu. Cess on Excise,Edu. Cess em impostos indiretos
Edu. Cess on Service Tax,Edu. Cess em Imposto sobre Serviços
Edu. Cess on TDS,Edu. Cess em TDS
Education,educação
Educational Qualification,Qualificação Educacional
Educational Qualification Details,Detalhes educacionais de qualificação
Eg. smsgateway.com/api/send_sms.cgi,Por exemplo. smsgateway.com / api / send_sms.cgi
Either debit or credit amount is required for {0},De qualquer débito ou valor do crédito é necessário para {0}
Either target qty or target amount is mandatory,Ou qty alvo ou valor alvo é obrigatório
Either target qty or target amount is mandatory.,Ou qty alvo ou valor alvo é obrigatória.
Electrical,elétrico
Electricity Cost,elektriciteitskosten
Electricity cost per hour,Kosten elektriciteit per uur
Electronics,eletrônica
Email,E-mail
Email Digest,E-mail Digest
Email Digest Settings,E-mail Digest Configurações
Email Digest: ,
Email Id,Id e-mail
"Email Id where a job applicant will email e.g. ""jobs@example.com""",Id e-mail onde um candidato a emprego vai enviar e-mail &quot;jobs@example.com&quot; por exemplo
Email Notifications,Notificações de e-mail
Email Sent?,E-mail enviado?
"Email id must be unique, already exists for {0}","ID de e-mail deve ser único, já existe para {0}"
Email ids separated by commas.,Ids e-mail separados por vírgulas.
"Email settings to extract Leads from sales email id e.g. ""sales@example.com""","Configurações de e-mail para extrair Leads de vendas de e-mail, por exemplo ID &quot;sales@example.com&quot;"
Emergency Contact,Emergency Contact
Emergency Contact Details,Detalhes de contato de emergência
Emergency Phone,Emergency Phone
Employee,Empregado
Employee Birthday,Aniversário empregado
Employee Details,Detalhes do Funcionários
Employee Education,Educação empregado
Employee External Work History,Empregado história de trabalho externo
Employee Information,Informações do Funcionário
Employee Internal Work History,Empregado História Trabalho Interno
Employee Internal Work Historys,Historys funcionário interno de trabalho
Employee Leave Approver,Empregado Leave Approver
Employee Leave Balance,Empregado Leave Balance
Employee Name,Nome do Funcionário
Employee Number,Número empregado
Employee Records to be created by,Empregado Records para ser criado por
Employee Settings,werknemer Instellingen
Employee Type,Tipo de empregado
"Employee designation (e.g. CEO, Director etc.).","Designação do empregado (por exemplo, CEO , diretor , etc.)"
Employee master.,Mestre Employee.
Employee record is created using selected field. ,Registro de empregado é criado usando o campo selecionado.
Employee records.,Registros de funcionários.
Employee relieved on {0} must be set as 'Left',Empregado aliviada em {0} deve ser definido como 'Esquerda'
Employee {0} has already applied for {1} between {2} and {3},Empregado {0} já solicitou {1} {2} entre e {3}
Employee {0} is not active or does not exist,Empregado {0} não está ativo ou não existe
Employee {0} was on leave on {1}. Cannot mark attendance.,Empregado {0} estava de licença em {1} . Não pode marcar presença.
Employees Email Id,Funcionários ID e-mail
Employment Details,Detalhes de emprego
Employment Type,Tipo de emprego
Enable / disable currencies.,Ativar / desativar moedas.
Enabled,Habilitado
Encashment Date,Data cobrança
End Date,Data final
End Date can not be less than Start Date,Data final não pode ser inferior a data de início
End date of current invoice's period,Data final do período de fatura atual
End of Life,Fim da Vida
Energy,energia
Engineer,engenheiro
Enter Verification Code,Digite o Código de Verificação
Enter campaign name if the source of lead is campaign.,Digite o nome da campanha que a fonte de chumbo é a campanha.
Enter department to which this Contact belongs,Entre com o departamento a que pertence este contato
Enter designation of this Contact,Digite designação de este contato
"Enter email id separated by commas, invoice will be mailed automatically on particular date","Digite o ID de e-mail separados por vírgulas, a fatura será enviada automaticamente em determinada data"
Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Digite itens e qty planejada para o qual você quer levantar ordens de produção ou fazer o download de matérias-primas para a análise.
Enter name of campaign if source of enquiry is campaign,Digite o nome da campanha se fonte de pesquisa é a campanha
"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Digite os parâmetros URL estática aqui (por exemplo remetente = ERPNext, username = ERPNext, password = 1234, etc)"
Enter the company name under which Account Head will be created for this Supplier,Digite o nome da empresa em que Chefe da conta será criada para este fornecedor
Enter url parameter for message,Digite o parâmetro url para mensagem
Enter url parameter for receiver nos,Digite o parâmetro url para nn receptor
Entertainment & Leisure,Entretenimento & Lazer
Entertainment Expenses,despesas de representação
Entries,Entradas
Entries against ,
Entries are not allowed against this Fiscal Year if the year is closed.,Entradas não são permitidos contra este Ano Fiscal se o ano está fechada.
Equity,equidade
Error: {0} > {1},Erro: {0} > {1}
Estimated Material Cost,Custo de Material estimada
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Mesmo se houver várias regras de preços com maior prioridade, então seguintes prioridades internas são aplicadas:"
Everyone can read,Todo mundo pode ler
"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.",". Exemplo: ABCD # # # # # 
 Se série está definido e número de série não é mencionado em transações, número de série, então automático será criado com base nessa série. Se você sempre quis mencionar explicitamente os números de ordem para este item. deixe em branco."
Exchange Rate,Taxa de Câmbio
Excise Duty 10,Impostos Especiais de Consumo 10
Excise Duty 14,Impostos Especiais de Consumo 14
Excise Duty 4,Excise Duty 4
Excise Duty 8,Excise Duty 8
Excise Duty @ 10,Impostos Especiais de Consumo @ 10
Excise Duty @ 14,Impostos Especiais de Consumo @ 14
Excise Duty @ 4,Impostos Especiais de Consumo @ 4
Excise Duty @ 8,Impostos Especiais de Consumo @ 8
Excise Duty Edu Cess 2,Impostos Especiais de Consumo Edu Cess 2
Excise Duty SHE Cess 1,Impostos Especiais de Consumo SHE Cess 1
Excise Page Number,Número de página especial sobre o consumo
Excise Voucher,Vale especiais de consumo
Execution,execução
Executive Search,Executive Search
Exemption Limit,Limite de isenção
Exhibition,Exposição
Existing Customer,Cliente existente
Exit,Sair
Exit Interview Details,Sair Detalhes Entrevista
Expected,Esperado
Expected Completion Date can not be less than Project Start Date,Esperada Data de Conclusão não pode ser inferior a Projeto Data de Início
Expected Date cannot be before Material Request Date,Verwachte datum kan niet voor de Material Aanvraagdatum
Expected Delivery Date,Data de entrega prevista
Expected Delivery Date cannot be before Purchase Order Date,Previsão de Entrega A data não pode ser antes de Ordem de Compra Data
Expected Delivery Date cannot be before Sales Order Date,Previsão de Entrega A data não pode ser antes de Ordem de Vendas Data
Expected End Date,Data final esperado
Expected Start Date,Data de Início do esperado
Expense,despesa
Expense / Difference account ({0}) must be a 'Profit or Loss' account,Despesa conta / Diferença ({0}) deve ser um 'resultados' conta
Expense Account,Conta Despesa
Expense Account is mandatory,Conta de despesa é obrigatória
Expense Claim,Relatório de Despesas
Expense Claim Approved,Relatório de Despesas Aprovado
Expense Claim Approved Message,Relatório de Despesas Aprovado Mensagem
Expense Claim Detail,Detalhe de Despesas
Expense Claim Details,Reivindicação detalhes da despesa
Expense Claim Rejected,Relatório de Despesas Rejeitado
Expense Claim Rejected Message,Relatório de Despesas Rejeitado Mensagem
Expense Claim Type,Tipo de reembolso de despesas
Expense Claim has been approved.,Declaratie is goedgekeurd .
Expense Claim has been rejected.,Declaratie is afgewezen .
Expense Claim is pending approval. Only the Expense Approver can update status.,Declaratie is in afwachting van goedkeuring . Alleen de Expense Approver kan status bijwerken .
Expense Date,Data despesa
Expense Details,Detalhes despesas
Expense Head,Chefe despesa
Expense account is mandatory for item {0},Conta de despesa é obrigatória para item {0}
Expense or Difference account is mandatory for Item {0} as it impacts overall stock value,Despesa ou Diferença conta é obrigatória para item {0} como ela afeta o valor das ações em geral
Expenses,Despesas
Expenses Booked,Despesas Reservado
Expenses Included In Valuation,Despesas incluídos na avaliação
Expenses booked for the digest period,Despesas reservadas para o período digest
Expiry Date,Data de validade
Exports,Exportações
External,Externo
Extract Emails,Extrair e-mails
FCFS Rate,Taxa FCFS
Failed: ,Falha:
Family Background,Antecedentes familiares
Fax,Fax
Features Setup,Configuração características
Feed,Alimentar
Feed Type,Tipo de feed
Feedback,Comentários
Female,Feminino
Fetch exploded BOM (including sub-assemblies),Fetch ontplofte BOM ( inclusief onderdelen )
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Campo disponível na nota de entrega, cotação, nota fiscal de venda, Ordem de vendas"
Files Folder ID,Arquivos de ID de pasta
Fill the form and save it,Vul het formulier in en sla het
Filter based on customer,Filtrar baseado em cliente
Filter based on item,Filtrar com base no item
Financial / accounting year.,Exercício / contabilidade.
Financial Analytics,Análise Financeira
Financial Services,Serviços Financeiros
Financial Year End Date,Encerramento do Exercício Social Data
Financial Year Start Date,Exercício Data de Início
Finished Goods,afgewerkte producten
First Name,Nome
First Responded On,Primeiro respondeu em
Fiscal Year,Exercício fiscal
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Ano Fiscal Data de Início e Término do Exercício Social Data já estão definidos no ano fiscal de {0}
Fiscal Year Start Date and Fiscal Year End Date cannot be more than a year apart.,Ano Fiscal Data de Início e Término do Exercício Social Data não pode ter mais do que um ano de intervalo.
Fiscal Year Start Date should not be greater than Fiscal Year End Date,Ano Fiscal Data de início não deve ser maior do que o Fiscal Year End Date
Fixed Asset,ativos Fixos
Fixed Assets,Imobilizado
Follow via Email,Siga por e-mail
"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.",Após tabela mostrará valores se os itens são sub - contratada. Estes valores serão obtidos a partir do mestre de &quot;Bill of Materials&quot; de sub - itens contratados.
Food,comida
"Food, Beverage & Tobacco","Alimentos, Bebidas e Fumo"
"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 os itens de vendas 'BOM', Armazém, N º de Série e Batch Não será considerada a partir da tabela ""Packing List"". Se Warehouse e Batch Não são as mesmas para todos os itens de embalagem para qualquer item 'Vendas BOM', esses valores podem ser inseridos na tabela do item principal, os valores serão copiados para a tabela ""Packing List""."
For Company,Para a Empresa
For Employee,Para Empregado
For Employee Name,Para Nome do Funcionário
For Price List,Para Lista de Preço
For Production,Para Produção
For Reference Only.,Apenas para referência.
For Sales Invoice,Para fatura de vendas
For Server Side Print Formats,Para o lado do servidor de impressão Formatos
For Supplier,voor Leverancier
For Warehouse,Para Armazém
For Warehouse is required before Submit,Para for necessário Armazém antes Enviar
"For e.g. 2012, 2012-13","Para por exemplo 2012, 2012-13"
For reference,Para referência
For reference only.,Apenas para referência.
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Para a comodidade dos clientes, estes códigos podem ser usados ​​em formatos de impressão, como facturas e guias de entrega"
Fraction,Fração
Fraction Units,Unidades fração
Freeze Stock Entries,Congelar da Entries
Freeze Stocks Older Than [Days],Congeladores Stocks mais velhos do que [ dias ]
Freight and Forwarding Charges,Freight Forwarding e Encargos
Friday,Sexta-feira
From,De
From Bill of Materials,De Bill of Materials
From Company,Da Empresa
From Currency,De Moeda
From Currency and To Currency cannot be same,De Moeda e Para Moeda não pode ser o mesmo
From Customer,Do Cliente
From Customer Issue,Van Customer Issue
From Date,A partir da data
From Date cannot be greater than To Date,A partir de data não pode ser maior que a Data
From Date must be before To Date,A partir da data deve ser anterior a Data
From Date should be within the Fiscal Year. Assuming From Date = {0},A partir de data deve estar dentro do ano fiscal. Assumindo De Date = {0}
From Delivery Note,De Nota de Entrega
From Employee,De Empregado
From Lead,De Chumbo
From Maintenance Schedule,Van onderhoudsschema
From Material Request,Van Materiaal Request
From Opportunity,van Opportunity
From Package No.,De No. Package
From Purchase Order,Da Ordem de Compra
From Purchase Receipt,De Recibo de compra
From Quotation,van Offerte
From Sales Order,Da Ordem de Vendas
From Supplier Quotation,Van Leverancier Offerte
From Time,From Time
From Value,De Valor
From and To dates required,De e datas necessárias
From value must be less than to value in row {0},Do valor deve ser menor do que o valor na linha {0}
Frozen,Congelado
Frozen Accounts Modifier,Bevroren rekeningen Modifikatie
Fulfilled,Cumprido
Full Name,Nome Completo
Full-time,De tempo integral
Fully Billed,Totalmente Anunciado
Fully Completed,Totalmente concluída
Fully Delivered,Totalmente entregue
Furniture and Fixture,Móveis e utensílios
Further accounts can be made under Groups but entries can be made against Ledger,"Outras contas podem ser feitas em grupos , mas as entradas podem ser feitas contra Ledger"
"Further accounts can be made under Groups, but entries can be made against Ledger","Outras contas podem ser feitas em grupos , mas as entradas podem ser feitas contra Ledger"
Further nodes can be only created under 'Group' type nodes,Verder nodes kunnen alleen worden gemaakt op grond van het type nodes 'Groep'
GL Entry,Entrada GL
Gantt Chart,Gantt
Gantt chart of all tasks.,Gantt de todas as tarefas.
Gender,Sexo
General,Geral
General Ledger,General Ledger
Generate Description HTML,Gerar Descrição HTML
Generate Material Requests (MRP) and Production Orders.,Gerar Pedidos de Materiais (MRP) e ordens de produção.
Generate Salary Slips,Gerar folhas de salários
Generate Schedule,Gerar Agende
Generates HTML to include selected image in the description,Gera HTML para incluir imagem selecionada na descrição
Get Advances Paid,Obter adiantamentos pagos
Get Advances Received,Obter adiantamentos recebidos
Get Current Stock,Obter Estoque atual
Get Items,Obter itens
Get Items From Sales Orders,Obter itens de Pedidos de Vendas
Get Items from BOM,Items ophalen van BOM
Get Last Purchase Rate,Obter Tarifa de Compra Última
Get Outstanding Invoices,Obter faturas pendentes
Get Relevant Entries,Obter entradas relevantes
Get Sales Orders,Obter Pedidos de Vendas
Get Specification Details,Obtenha detalhes Especificação
Get Stock and Rate,Obter Estoque e Taxa de
Get Template,Obter modelo
Get Terms and Conditions,Obter os Termos e Condições
Get Unreconciled Entries,Obter Unreconciled Entradas
Get Weekly Off Dates,Obter semanal Datas Off
"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Obter taxa de valorização e estoque disponível na origem / destino em armazém mencionado postagem data e hora. Se serializado item, prima este botão depois de entrar n º s de série."
Global Defaults,Padrões globais
Global POS Setting {0} already created for company {1},Setting POS global {0} já criado para a empresa {1}
Global Settings,Definições Globais
"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""","Vá para o grupo apropriado (geralmente Aplicação de Fundos > Ativo Circulante > Contas Bancárias e criar uma nova conta Ledger (clicando em Adicionar Criança) do 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.","Vá para o grupo apropriado (geralmente Fonte de Recursos > Passivo Circulante > Impostos e Taxas e criar uma nova conta Ledger (clicando em Adicionar Criança) do tipo "" imposto "" e não mencionar a taxa de imposto."
Goal,Meta
Goals,Metas
Goods received from Suppliers.,Mercadorias recebidas de fornecedores.
Google Drive,Google Drive
Google Drive Access Allowed,Acesso Google Drive admitidos
Government,governo
Graduate,Pós-graduação
Grand Total,Total geral
Grand Total (Company Currency),Grande Total (moeda da empresa)
"Grid ""","Grid """
Grocery,mercearia
Gross Margin %,Margem Bruta%
Gross Margin Value,Valor Margem Bruta
Gross Pay,Salário bruto
Gross Pay + Arrear Amount +Encashment Amount - Total Deduction,Salário bruto + Valor + Valor vencido cobrança - Dedução Total
Gross Profit,Lucro bruto
Gross Profit (%),Lucro Bruto (%)
Gross Weight,Peso bruto
Gross Weight UOM,UOM Peso Bruto
Group,Grupo
Group by Account,Grupo por Conta
Group by Voucher,Grupo pela Vale
Group or Ledger,Grupo ou Ledger
Groups,Grupos
HR Manager,Gerente de RH
HR Settings,Configurações HR
HTML / Banner that will show on the top of product list.,HTML bandeira / que vai mostrar no topo da lista de produtos.
Half Day,Meio Dia
Half Yearly,Semestrais
Half-yearly,Semestral
Happy Birthday!,Happy Birthday!
Hardware,ferragens
Has Batch No,Não tem Batch
Has Child Node,Tem nó filho
Has Serial No,Não tem de série
Head of Marketing and Sales,Diretor de Marketing e Vendas
Header,Cabeçalho
Health Care,Atenção à Saúde
Health Concerns,Preocupações com a Saúde
Health Details,Detalhes saúde
Held On,Realizada em
Help HTML,Ajuda HTML
"Help: To link to another record in the system, use ""#Form/Note/[Note Name]"" as the Link URL. (don't use ""http://"")","Ajuda: Para vincular a outro registro no sistema, use &quot;# Form / Nota / [Nota Name]&quot; como a ligação URL. (Não use &quot;http://&quot;)"
"Here you can maintain family details like name and occupation of parent, spouse and children","Aqui você pode manter detalhes como o nome da família e ocupação do cônjuge, pai e filhos"
"Here you can maintain height, weight, allergies, medical concerns etc","Aqui você pode manter a altura, peso, alergias, etc preocupações médica"
Hide Currency Symbol,Ocultar Símbolo de Moeda
High,Alto
History In Company,História In Company
Hold,Segurar
Holiday,Férias
Holiday List,Lista de feriado
Holiday List Name,Nome da lista férias
Holiday master.,Mestre férias .
Holidays,Férias
Home,Casa
Host,Anfitrião
"Host, Email and Password required if emails are to be pulled",E-mail host e senha necessária se e-mails devem ser puxado
Hour,hora
Hour Rate,Taxa de hora
Hour Rate Labour,A taxa de hora
Hours,Horas
How Pricing Rule is applied?,Como regra de preços é aplicada?
How frequently?,Com que freqüência?
"How should this currency be formatted? If not set, will use system defaults","Como deve ser essa moeda ser formatado? Se não for definido, vai usar padrões do sistema"
Human Resources,Recursos Humanos
Identification of the package for the delivery (for print),Identificação do pacote para a entrega (para impressão)
If Income or Expense,Se a renda ou Despesa
If Monthly Budget Exceeded,Se o orçamento mensal excedido
"If Sale BOM is defined, the actual BOM of the Pack is displayed as table. Available in Delivery Note and Sales Order","Se Venda BOM for definido, o BOM real do pacote é exibido como mesa. Disponível na nota de entrega e da Ordem de Vendas"
"If Supplier Part Number exists for given Item, it gets stored here","Se Número da peça de Fornecedor existe para determinado item, ele fica armazenado aqui"
If Yearly Budget Exceeded,Se orçamento anual excedido
"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.","Se selecionado, o BOM para a sub-montagem itens serão considerados para obter matérias-primas. Caso contrário, todos os itens de sub-montagem vai ser tratado como uma matéria-prima."
"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Se marcado, não total. de dias de trabalho vai incluir férias, e isso vai reduzir o valor de salário por dia"
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Se selecionado, o valor do imposto será considerado como já incluído na tarifa Impressão / Quantidade de impressão"
If different than customer address,Se diferente do endereço do cliente
"If disable, 'Rounded Total' field will not be visible in any transaction","Se desativar, &#39;Arredondado Total &quot;campo não será visível em qualquer transação"
"If enabled, the system will post accounting entries for inventory automatically.","Se ativado, o sistema irá postar lançamentos contábeis para o inventário automaticamente."
If more than one package of the same type (for print),Se mais do que uma embalagem do mesmo tipo (por impressão)
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Se várias regras de preços continuam a prevalecer, os usuários são convidados a definir a prioridade manualmente para resolver o conflito."
"If no change in either Quantity or Valuation Rate, leave the cell blank.","Als er geen wijziging optreedt Hoeveelheid of Valuation Rate , verlaat de cel leeg ."
If not applicable please enter: NA,Se não for aplicável digite: NA
"If not checked, the list will have to be added to each Department where it has to be applied.","Se não for controlada, a lista deverá ser adicionado a cada departamento onde tem de ser aplicado."
"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.","Se a Regra de Preços selecionado é feita para 'Preço', ele irá substituir Lista de Preços. Preço Regra O preço é o preço final, de forma que nenhum desconto adicional deve ser aplicada. Assim, em operações como a ordem de venda, ordem de compra, etc, será buscado em campo 'Taxa', campo 'Lista de Preços Taxa de ""em vez de."
"If specified, send the newsletter using this email address","Se especificado, enviar a newsletter usando esse endereço de e-mail"
"If the account is frozen, entries are allowed to restricted users.","Als de account wordt gepauzeerd, blijven inzendingen mogen gebruikers met beperkte rechten ."
"If this Account represents a Customer, Supplier or Employee, set it here.","Se essa conta representa um cliente, fornecedor ou funcionário, configurá-lo aqui."
"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.","Se duas ou mais regras de preços encontram-se com base nas condições acima, a prioridade é aplicada. A prioridade é um número entre 0 a 20, enquanto o valor padrão é zero (em branco). Número maior significa que ele terá precedência se houver várias regras de preços com as mesmas condições."
If you follow Quality Inspection. Enables Item QA Required and QA No in Purchase Receipt,Se você seguir Inspeção de Qualidade . Permite item QA Obrigatório e QA Não no 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,Se você tiver Equipe de Vendas e Parceiros de Venda (Parceiros de Canal) podem ser marcadas e manter sua contribuição na atividade de vendas
"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Se você criou um modelo padrão no Imposto de Compra e Master Encargos, selecione um e clique no botão abaixo."
"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Se você criou um modelo padrão de Vendas Impostos e Encargos mestre, selecione um e clique no botão abaixo."
"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","Se você tem muito tempo imprimir formatos, esse recurso pode ser usado para dividir a página a ser impressa em várias páginas com todos os cabeçalhos e rodapés em cada página"
If you involve in manufacturing activity. Enables Item 'Is Manufactured',Se envolver em atividades de fabricação. Permite Item ' é fabricado '
Ignore,Ignorar
Ignore Pricing Rule,Ignorar regra de preços
Ignored: ,Ignorados:
Image,Imagem
Image View,Ver imagem
Implementation Partner,Parceiro de implementação
Import Attendance,Importação de Atendimento
Import Failed!,Import mislukt!
Import Log,Importar Log
Import Successful!,Importeer Succesvol!
Imports,Importações
In Hours,Em Horas
In Process,Em Processo
In Qty,in Aantal
In Value,in Waarde
In Words,Em Palavras
In Words (Company Currency),In Words (Moeda Company)
In Words (Export) will be visible once you save the Delivery Note.,Em Palavras (Exportação) será visível quando você salvar a Nota de Entrega.
In Words will be visible once you save the Delivery Note.,Em Palavras será visível quando você salvar a Nota de Entrega.
In Words will be visible once you save the Purchase Invoice.,Em Palavras será visível quando você salvar a factura de compra.
In Words will be visible once you save the Purchase Order.,Em Palavras será visível quando você salvar a Ordem de Compra.
In Words will be visible once you save the Purchase Receipt.,Em Palavras será visível quando você salvar o recibo de compra.
In Words will be visible once you save the Quotation.,Em Palavras será visível quando você salvar a cotação.
In Words will be visible once you save the Sales Invoice.,Em Palavras será visível quando você salvar a nota fiscal de venda.
In Words will be visible once you save the Sales Order.,Em Palavras será visível quando você salvar a Ordem de Vendas.
Incentives,Incentivos
Include Reconciled Entries,Incluir entradas Reconciliados
Include holidays in Total no. of Working Days,Incluir feriados em nenhuma total. de dias de trabalho
Income,renda
Income / Expense,Receitas / Despesas
Income Account,Conta Renda
Income Booked,Renda Reservado
Income Tax,Imposto de Renda
Income Year to Date,Ano renda para Data
Income booked for the digest period,Renda reservado para o período digest
Incoming,Entrada
Incoming Rate,Taxa de entrada
Incoming quality inspection.,Inspeção de qualidade de entrada.
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Número incorreto de General Ledger Entries encontrado. Talvez você tenha selecionado uma conta de errado na transação.
Incorrect or Inactive BOM {0} for Item {1} at row {2},Incorreto ou inativo BOM {0} para {1} item na linha {2}
Indicates that the package is a part of this delivery (Only Draft),Indica que o pacote é uma parte desta entrega (Só Projecto)
Indirect Expenses,Despesas Indiretas
Indirect Income,Resultado indirecto
Individual,Individual
Industry,Indústria
Industry Type,Tipo indústria
Inspected By,Inspecionado por
Inspection Criteria,Critérios de inspeção
Inspection Required,Inspeção Obrigatório
Inspection Type,Tipo de Inspeção
Installation Date,Data de instalação
Installation Note,Nota de Instalação
Installation Note Item,Item Nota de Instalação
Installation Note {0} has already been submitted,Instalação Nota {0} já foi apresentado
Installation Status,Status da instalação
Installation Time,O tempo de instalação
Installation date cannot be before delivery date for Item {0},Data de instalação não pode ser anterior à data de entrega de item {0}
Installation record for a Serial No.,Registro de instalação de um n º de série
Installed Qty,Quantidade instalada
Instructions,Instruções
Integrate incoming support emails to Support Ticket,Integreer inkomende support e-mails naar ticket support
Interested,Interessado
Intern,internar
Internal,Interno
Internet Publishing,Publishing Internet
Introduction,Introdução
Invalid Barcode,Código de barras inválido
Invalid Barcode or Serial No,Código de barras inválido ou Serial Não
Invalid Mail Server. Please rectify and try again.,"Mail Server inválido . Por favor, corrigir e tentar novamente."
Invalid Master Name,Ongeldige Master Naam
Invalid User Name or Support Password. Please rectify and try again.,"Nome de usuário inválido ou senha Suporte . Por favor, corrigir e tentar novamente."
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Quantidade inválido especificado para o item {0} . Quantidade deve ser maior do que 0 .
Inventory,Inventário
Inventory & Support,Inventário e Suporte
Investment Banking,Banca de Investimento
Investments,Investimentos
Invoice Date,Data da fatura
Invoice Details,Detalhes da fatura
Invoice No,A factura n º
Invoice Number,Número da fatura
Invoice Period From,Fatura Período De
Invoice Period From and Invoice Period To dates mandatory for recurring invoice,Fatura Período De e Período fatura para datas obrigatórias para fatura recorrentes
Invoice Period To,Período fatura para
Invoice Type,Tipo de Fatura
Invoice/Journal Voucher Details,Factura / Jornal Vale detalhes
Invoiced Amount (Exculsive Tax),Factuurbedrag ( Exculsive BTW )
Is Active,É Ativo
Is Advance,É o avanço
Is Cancelled,É cancelado
Is Carry Forward,É Carry Forward
Is Default,É Default
Is Encash,É cobrar
Is Fixed Asset Item,É item de Imobilização
Is LWP,É LWP
Is Opening,Está abrindo
Is Opening Entry,Está abrindo Entry
Is POS,É POS
Is Primary Contact,É Contato Principal
Is Purchase Item,É item de compra
Is Sales Item,É item de vendas
Is Service Item,É item de serviço
Is Stock Item,É item de estoque
Is Sub Contracted Item,É item Contratado Sub
Is Subcontracted,É subcontratada
Is this Tax included in Basic Rate?,É este imposto incluído na Taxa Básica?
Issue,Questão
Issue Date,Data de Emissão
Issue Details,Detalhes incidente
Issued Items Against Production Order,Itens emitida contra Ordem de Produção
It can also be used to create opening stock entries and to fix stock value.,Het kan ook worden gebruikt voor het openen van de voorraad te maken en om de balans de waarde vast te stellen .
Item,item
Item Advanced,Item Avançado
Item Barcode,Código de barras do item
Item Batch Nos,Lote n item
Item Code,Código do artigo
Item Code > Item Group > Brand,Código do item> Item Grupo> Marca
Item Code and Warehouse should already exist.,Item Code en Warehouse moet al bestaan ​​.
Item Code cannot be changed for Serial No.,Item Code kan niet worden gewijzigd voor Serienummer
Item Code is mandatory because Item is not automatically numbered,Código do item é obrigatório porque Item não é numerada automaticamente
Item Code required at Row No {0},Código do item exigido no Row Não {0}
Item Customer Detail,Detalhe Cliente item
Item Description,Item Descrição
Item Desription,Desription item
Item Details,Item Detalhes
Item Group,Grupo Item
Item Group Name,Nome do Grupo item
Item Group Tree,Punt Groepsstructuur
Item Group not mentioned in item master for item {0},Grupo item não mencionado no mestre de item para item {0}
Item Groups in Details,Grupos de itens em Detalhes
Item Image (if not slideshow),Imagem item (se não slideshow)
Item Name,Nome do item
Item Naming By,Item de nomeação
Item Price,Item Preço
Item Prices,Preços de itens
Item Quality Inspection Parameter,Item Parâmetro de Inspeção de Qualidade
Item Reorder,Item Reordenar
Item Serial No,No item de série
Item Serial Nos,Item n º s de série
Item Shortage Report,Punt Tekort Report
Item Supplier,Fornecedor item
Item Supplier Details,Fornecedor Item Detalhes
Item Tax,Imposto item
Item Tax Amount,Valor do imposto item
Item Tax Rate,Taxa de Imposto item
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Item Imposto Row {0} deve ter em conta tipo de imposto ou de renda ou de despesa ou carregável
Item Tax1,Item Tax1
Item To Manufacture,Item Para Fabricação
Item UOM,Item UOM
Item Website Specification,Especificação Site item
Item Website Specifications,Site Item Especificações
Item Wise Tax Detail,Detalhe Imposto item Sábio
Item Wise Tax Detail ,Detalhe Imposto Sábio item
Item is required,Item é necessário
Item is updated,Item é atualizado
Item master.,Mestre Item.
"Item must be a purchase item, as it is present in one or many Active BOMs","O artigo deve ser um item de compra , uma vez que está presente em um ou muitos BOM Activo"
Item or Warehouse for row {0} does not match Material Request,Item ou Armazém para linha {0} não corresponde Pedido de materiais
Item table can not be blank,Item tabel kan niet leeg zijn
Item to be manufactured or repacked,Item a ser fabricados ou reembalados
Item valuation updated,Valorização item atualizado
Item will be saved by this name in the data base.,O artigo será salva por este nome na base de dados.
Item {0} appears multiple times in Price List {1},Item {0} aparece várias vezes na lista Preço {1}
Item {0} does not exist,Item {0} não existe
Item {0} does not exist in the system or has expired,Item {0} não existe no sistema ou expirou
Item {0} does not exist in {1} {2},Item {0} não existe em {1} {2}
Item {0} has already been returned,Item {0} já foi devolvido
Item {0} has been entered multiple times against same operation,Item {0} foi inserido várias vezes contra a mesma operação
Item {0} has been entered multiple times with same description or date,Item {0} foi inserido várias vezes com a mesma descrição ou data
Item {0} has been entered multiple times with same description or date or warehouse,Item {0} foi inserido várias vezes com a mesma descrição ou data ou armazém
Item {0} has been entered twice,Item {0} foi digitada duas vezes
Item {0} has reached its end of life on {1},Item {0} chegou ao fim da vida em {1}
Item {0} ignored since it is not a stock item,Item {0} ignorado uma vez que não é um item de estoque
Item {0} is cancelled,Item {0} é cancelada
Item {0} is not Purchase Item,Item {0} não é comprar item
Item {0} is not a serialized Item,Item {0} não é um item serializado
Item {0} is not a stock Item,Item {0} não é um item de estoque
Item {0} is not active or end of life has been reached,Item {0} não está ativo ou fim de vida útil foi atingido
Item {0} is not setup for Serial Nos. Check Item master,Item {0} não está configurado para n º s de série mestre check item
Item {0} is not setup for Serial Nos. Column must be blank,Item {0} não está configurado para Serial Coluna N º s deve estar em branco
Item {0} must be Sales Item,Item {0} deve ser item de vendas
Item {0} must be Sales or Service Item in {1},Item {0} deve ser de Vendas ou Atendimento item em {1}
Item {0} must be Service Item,Item {0} deve ser item de serviço
Item {0} must be a Purchase Item,Item {0} deve ser um item de compra
Item {0} must be a Sales Item,Item {0} deve ser um item de vendas
Item {0} must be a Service Item.,Item {0} deve ser um item de serviço .
Item {0} must be a Sub-contracted Item,Item {0} deve ser um item do sub- contratados
Item {0} must be a stock Item,Item {0} deve ser um item de estoque
Item {0} must be manufactured or sub-contracted,Item {0} deve ser fabricado ou sub- contratados
Item {0} not found,Item {0} não foi encontrado
Item {0} with Serial No {1} is already installed,Item {0} com Serial Não {1} já está instalado
Item {0} with same description entered twice,Item {0} com a mesma descrição inserida duas vezes
"Item, Warranty, AMC (Annual Maintenance Contract) details will be automatically fetched when Serial Number is selected.","Item, Garantia, AMC (Contrato Anual de Manutenção) detalhes serão automaticamente carregada quando o número de série é selecionado."
Item-wise Price List Rate,Item- wise Prijslijst Rate
Item-wise Purchase History,Item-wise Histórico de compras
Item-wise Purchase Register,Item-wise Compra Register
Item-wise Sales History,Item-wise Histórico de Vendas
Item-wise Sales Register,Vendas de item sábios Registrar
"Item: {0} managed batch-wise, can not be reconciled using \
					Stock Reconciliation, instead use Stock Entry","Item: {0} gerido por lotes, não pode ser conciliada com \
 Banco de reconciliação, em vez usar Banco de Entrada"
Item: {0} not found in the system,Item : {0} não foi encontrado no sistema
Items,Itens
Items To Be Requested,Items worden aangevraagd
Items required,Itens exigidos
"Items to be requested which are ""Out of Stock"" considering all warehouses based on projected qty and minimum order qty","Os itens a serem solicitados que estão &quot;fora de estoque&quot;, considerando todos os armazéns com base no qty projetada e qty mínimo"
Items which do not exist in Item master can also be entered on customer's request,Itens que não existem no cadastro de itens também podem ser inseridos no pedido do cliente
Itemwise Discount,Desconto Itemwise
Itemwise Recommended Reorder Level,Itemwise Recomendado nível de reposição
Job Applicant,Candidato a emprego
Job Opening,Abertura de emprego
Job Profile,Perfil Job
Job Title,Cargo
"Job profile, qualifications required etc.","Perfil de trabalho , qualificações exigidas , etc"
Jobs Email Settings,E-mail Configurações de empregos
Journal Entries,Jornal entradas
Journal Entry,Journal Entry
Journal Voucher,Vale Jornal
Journal Voucher Detail,Jornal Detalhe Vale
Journal Voucher Detail No,Jornal Detalhe folha no
Journal Voucher {0} does not have account {1} or already matched,Jornal Vale {0} não tem conta {1} ou já combinava
Journal Vouchers {0} are un-linked,Jornal Vouchers {0} são não- ligado
Keep a track of communication related to this enquiry which will help for future reference.,Mantenha uma faixa de comunicação relacionada a este inquérito que irá ajudar para referência futura.
Keep it web friendly 900px (w) by 100px (h),Mantenha- web 900px amigável (w) por 100px ( h )
Key Performance Area,Área Key Performance
Key Responsibility Area,Área de Responsabilidade chave
Kg,Kg.
LR Date,Data LR
LR No,Não LR
Label,Etiqueta
Landed Cost Item,Item de custo Landed
Landed Cost Items,Desembarcaram itens de custo
Landed Cost Purchase Receipt,Recibo de compra Landed Cost
Landed Cost Purchase Receipts,Recibos de compra desembarcaram Custo
Landed Cost Wizard,Assistente de Custo Landed
Landed Cost updated successfully,Custo Landed atualizado com sucesso
Language,Linguagem
Last Name,Sobrenome
Last Purchase Rate,Compra de última
Latest,laatst
Lead,Conduzir
Lead Details,Chumbo Detalhes
Lead Id,lead Id
Lead Name,Nome levar
Lead Owner,Levar Proprietário
Lead Source,Chumbo Fonte
Lead Status,Chumbo Estado
Lead Time Date,Chumbo Data Hora
Lead Time Days,Levar dias Tempo
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.,Levar dias Tempo é o número de dias em que este item é esperado no seu armazém. Este dia é buscada em solicitar material ao selecionar este item.
Lead Type,Chumbo Tipo
Lead must be set if Opportunity is made from Lead,Fila deve ser definido se Opportunity é feito de chumbo
Leave Allocation,Deixe Alocação
Leave Allocation Tool,Deixe Ferramenta de Alocação
Leave Application,Deixe Aplicação
Leave Approver,Deixe Aprovador
Leave Approvers,Deixe aprovadores
Leave Balance Before Application,Deixe Equilíbrio Antes da aplicação
Leave Block List,Deixe Lista de Bloqueios
Leave Block List Allow,Deixe Lista de Bloqueios Permitir
Leave Block List Allowed,Deixe Lista de Bloqueios admitidos
Leave Block List Date,Deixe Data Lista de Bloqueios
Leave Block List Dates,Deixe as datas Lista de Bloqueios
Leave Block List Name,Deixe o nome Lista de Bloqueios
Leave Blocked,Deixe Bloqueados
Leave Control Panel,Deixe Painel de Controle
Leave Encashed?,Deixe cobradas?
Leave Encashment Amount,Deixe Quantidade cobrança
Leave Type,Deixar Tipo
Leave Type Name,Deixe Nome Tipo
Leave Without Pay,Licença sem vencimento
Leave application has been approved.,Verlof aanvraag is goedgekeurd .
Leave application has been rejected.,Verlofaanvraag is afgewezen .
Leave approver must be one of {0},Deixe aprovador deve ser um dos {0}
Leave blank if considered for all branches,Deixe em branco se considerado para todos os ramos
Leave blank if considered for all departments,Deixe em branco se considerado para todos os departamentos
Leave blank if considered for all designations,Deixe em branco se considerado para todas as designações
Leave blank if considered for all employee types,Deixe em branco se considerado para todos os tipos de empregados
"Leave can be approved by users with Role, ""Leave Approver""","A licença pode ser aprovado por usuários com papel, &quot;Deixe Aprovador&quot;"
Leave of type {0} cannot be longer than {1},Deixar do tipo {0} não pode ser maior que {1}
Leaves Allocated Successfully for {0},Folhas atribuídos com sucesso para {0}
Leaves for type {0} already allocated for Employee {1} for Fiscal Year {0},Deixa para o tipo {0} já alocado para Employee {1} para o Ano Fiscal {0}
Leaves must be allocated in multiples of 0.5,"Folhas devem ser alocados em múltiplos de 0,5"
Ledger,Livro-razão
Ledgers,grootboeken
Left,Esquerda
Legal,legal
Legal Expenses,despesas legais
Letter Head,Cabeça letra
Letter Heads for print templates.,Chefes de letras para modelos de impressão .
Level,Nível
Lft,Lft
Liability,responsabilidade
List a few of your customers. They could be organizations or individuals.,Lijst een paar van uw klanten. Ze kunnen organisaties of personen .
List a few of your suppliers. They could be organizations or individuals.,Lijst een paar van uw leveranciers . Ze kunnen organisaties of personen .
List items that form the package.,Lista de itens que compõem o pacote.
List this Item in multiple groups on the website.,Lista este item em vários grupos no site.
"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.",Liste seus produtos ou serviços que você comprar ou vender .
"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.","Liste seus chefes de impostos (por exemplo, IVA , impostos especiais de consumo , que devem ter nomes exclusivos ) e suas taxas normais."
Loading...,Loading ...
Loans (Liabilities),Empréstimos ( Passivo)
Loans and Advances (Assets),Empréstimos e Adiantamentos (Ativo )
Local,local
Login,login
Login with your new User ID,Log in met je nieuwe gebruikersnaam
Logo,Logotipo
Logo and Letter Heads,Logo en Letter Heads
Lost,verloren
Lost Reason,Razão perdido
Low,Baixo
Lower Income,Baixa Renda
MTN Details,Detalhes da MTN
Main,principal
Main Reports,Relatórios principais
Maintain Same Rate Throughout Sales Cycle,Manter o mesmo ritmo durante todo o ciclo de vendas
Maintain same rate throughout purchase cycle,Manter mesmo ritmo durante todo o ciclo de compra
Maintenance,Manutenção
Maintenance Date,Data de manutenção
Maintenance Details,Detalhes de manutenção
Maintenance Schedule,Programação de Manutenção
Maintenance Schedule Detail,Detalhe Programa de Manutenção
Maintenance Schedule Item,Item Programa de Manutenção
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"Programação de manutenção não é gerado para todos os itens. Por favor, clique em "" Gerar Agenda '"
Maintenance Schedule {0} exists against {0},Programação de manutenção {0} existe contra {0}
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Programação de manutenção {0} deve ser cancelado antes de cancelar esta ordem de venda
Maintenance Schedules,Horários de Manutenção
Maintenance Status,Estado de manutenção
Maintenance Time,Tempo de Manutenção
Maintenance Type,Tipo de manutenção
Maintenance Visit,Visita de manutenção
Maintenance Visit Purpose,Finalidade visita de manutenção
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Manutenção Visita {0} deve ser cancelado antes de cancelar esta ordem de venda
Maintenance start date can not be before delivery date for Serial No {0},Manutenção data de início não pode ser anterior à data de entrega para Serial Não {0}
Major/Optional Subjects,Assuntos Principais / Opcional
Make ,
Make Accounting Entry For Every Stock Movement,Maak boekhoudkundige afschrijving voor elke Stock Movement
Make Bank Voucher,Faça Vale Banco
Make Credit Note,Maak Credit Note
Make Debit Note,Maak debetnota
Make Delivery,Maak Levering
Make Difference Entry,Faça Entrada Diferença
Make Excise Invoice,Maak Accijnzen Factuur
Make Installation Note,Maak installatie Opmerking
Make Invoice,Maak Factuur
Make Maint. Schedule,Maken Maint . dienstregeling
Make Maint. Visit,Maken Maint . bezoek
Make Maintenance Visit,Maak Maintenance Visit
Make Packing Slip,Maak pakbon
Make Payment,Efetuar pagamento
Make Payment Entry,Betalen Entry
Make Purchase Invoice,Maak inkoopfactuur
Make Purchase Order,Maak Bestelling
Make Purchase Receipt,Maak Kwitantie
Make Salary Slip,Maak loonstrook
Make Salary Structure,Maak salarisstructuur
Make Sales Invoice,Maak verkoopfactuur
Make Sales Order,Maak klantorder
Make Supplier Quotation,Maak Leverancier Offerte
Make Time Log Batch,Make Time Log Batch
Male,Masculino
Manage Customer Group Tree.,Gerenciar Grupo Cliente Tree.
Manage Sales Partners.,Gerenciar parceiros de vendas.
Manage Sales Person Tree.,Gerenciar Vendas Pessoa Tree.
Manage Territory Tree.,Gerenciar Árvore Território.
Manage cost of operations,Gerenciar custo das operações
Management,gestão
Manager,gerente
"Mandatory if Stock Item is ""Yes"". Also the default warehouse where reserved quantity is set from Sales Order.","Obrigatório se o estoque do item é &quot;Sim&quot;. Além disso, o armazém padrão onde quantidade reservada é definido a partir de Ordem de Vendas."
Manufacture against Sales Order,Fabricação contra a Ordem de Vendas
Manufacture/Repack,Fabricação / Repack
Manufactured Qty,Qtde fabricados
Manufactured quantity will be updated in this warehouse,Quantidade fabricada será atualizado neste armazém
Manufactured quantity {0} cannot be greater than planned quanitity {1} in Production Order {2},Quantidade fabricada {0} não pode ser maior do que o planejado quanitity {1} em ordem de produção {2}
Manufacturer,Fabricante
Manufacturer Part Number,Número da peça de fabricante
Manufacturing,Fabrico
Manufacturing Quantity,Quantidade de fabricação
Manufacturing Quantity is mandatory,Manufacturing Kwantiteit is verplicht
Margin,Margem
Marital Status,Estado civil
Market Segment,Segmento de mercado
Marketing,marketing
Marketing Expenses,Despesas de Marketing
Married,Casado
Mass Mailing,Divulgação em massa
Master Name,Nome mestre
Master Name is mandatory if account type is Warehouse,Master Naam is verplicht als account type Warehouse
Master Type,Master Classe
Masters,Mestres
Match non-linked Invoices and Payments.,Combinar não vinculados faturas e pagamentos.
Material Issue,Emissão de material
Material Receipt,Recebimento de materiais
Material Request,Pedido de material
Material Request Detail No,Detalhe materiais Pedido Não
Material Request For Warehouse,Pedido de material para Armazém
Material Request Item,Item de solicitação de material
Material Request Items,Pedido de itens de material
Material Request No,Pedido de material no
Material Request Type,Tipo de solicitação de material
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Solicitação de materiais de máxima {0} pode ser feita para item {1} contra ordem de venda {2}
Material Request used to make this Stock Entry,Pedido de material usado para fazer isto Stock Entry
Material Request {0} is cancelled or stopped,Pedido de material {0} é cancelado ou interrompido
Material Requests for which Supplier Quotations are not created,Materiaal Verzoeken waarvoor Leverancier Offertes worden niet gemaakt
Material Requests {0} created,Pedidos de Materiais {0} criado
Material Requirement,Material Requirement
Material Transfer,Transferência de Material
Materials,Materiais
Materials Required (Exploded),Materiais necessários (explodida)
Max 5 characters,Max 5 caracteres
Max Days Leave Allowed,Dias Max Deixe admitidos
Max Discount (%),Max Desconto (%)
Max Qty,Max Qtde
Max discount allowed for item: {0} is {1}%,Max desconto permitido para o item: {0} é {1}%
Maximum Amount,Montante Máximo
Maximum allowed credit is {0} days after posting date,Crédito máximo permitido é {0} dias após a data de publicação
Maximum {0} rows allowed,Máximo de {0} linhas permitido
Maxiumm discount for Item {0} is {1}%,Maxiumm desconto para item {0} {1} %
Medical,médico
Medium,Médio
"Merging is only possible if following properties are same in both records. Group or Ledger, Root Type, Company",A fusão só é possível se seguintes propriedades são as mesmas em ambos os registros.
Message,Mensagem
Message Parameter,Parâmetro mensagem
Message Sent,bericht verzonden
Message updated,Mensagem Atualizado
Messages,Mensagens
Messages greater than 160 characters will be split into multiple messages,Mensagem maior do que 160 caracteres vai ser dividido em mesage múltipla
Middle Income,Rendimento Médio
Milestone,Marco miliário
Milestone Date,Data Milestone
Milestones,Milestones
Milestones will be added as Events in the Calendar,Marcos será adicionado como eventos no calendário
Min Order Qty,Min Qty Ordem
Min Qty,min Qty
Min Qty can not be greater than Max Qty,Qty mínimo não pode ser maior do que Max Qtde
Minimum Amount,Montante Mínimo
Minimum Order Qty,Qtde mínima
Minute,minuto
Misc Details,Detalhes Diversos
Miscellaneous Expenses,Despesas Diversas
Miscelleneous,Miscelleneous
Mobile No,No móvel
Mobile No.,Mobile No.
Mode of Payment,Modo de Pagamento
Modern,Moderno
Monday,Segunda-feira
Month,Mês
Monthly,Mensal
Monthly Attendance Sheet,Folha de Presença Mensal
Monthly Earning & Deduction,Salário mensal e dedução
Monthly Salary Register,Salário mensal Registrar
Monthly salary statement.,Declaração salário mensal.
More Details,Mais detalhes
More Info,Mais informações
Motion Picture & Video,Motion Picture & Video
Moving Average,Média móvel
Moving Average Rate,Movendo Taxa Média
Mr,Sr.
Ms,Ms
Multiple Item prices.,Meerdere Artikelprijzen .
"Multiple Price Rule exists with same criteria, please resolve \
			conflict by assigning priority. Price Rules: {0}","Várias Rule Preço existe com os mesmos critérios, por favor resolver \
 conflito atribuindo prioridade. Regras Preço: {0}"
Music,música
Must be Whole Number,Deve ser Número inteiro
Name,Nome
Name and Description,Nome e descrição
Name and Employee ID,Nome e identificação do funcionário
"Name of new Account. Note: Please don't create accounts for Customers and Suppliers, they are created automatically from the Customer and Supplier master","Nome de nova conta. Nota: Por favor, não criar contas para clientes e fornecedores , eles são criados automaticamente a partir do Cliente e Fornecedor mestre"
Name of person or organization that this address belongs to.,Nome da pessoa ou organização que este endereço pertence.
Name of the Budget Distribution,Nome da Distribuição de Orçamento
Naming Series,Nomeando Series
Negative Quantity is not allowed,Negativo Quantidade não é permitido
Negative Stock Error ({6}) for Item {0} in Warehouse {1} on {2} {3} in {4} {5},Negativo Banco de Erro ( {6} ) para item {0} no Armazém {1} em {2} {3} em {4} {5}
Negative Valuation Rate is not allowed,Negativa Avaliação Taxa não é permitido
Negative balance in Batch {0} for Item {1} at Warehouse {2} on {3} {4},Saldo negativo em lote {0} para {1} item no Armazém {2} em {3} {4}
Net Pay,Pagamento Net
Net Pay (in words) will be visible once you save the Salary Slip.,Pagamento líquido (em palavras) será visível quando você salvar a folha de salário.
Net Profit / Loss,Lucro / Prejuízo Líquido
Net Total,Líquida Total
Net Total (Company Currency),Total Líquido (Moeda Company)
Net Weight,Peso Líquido
Net Weight UOM,UOM Peso Líquido
Net Weight of each Item,Peso líquido de cada item
Net pay cannot be negative,Salário líquido não pode ser negativo
Never,Nunca
New ,
New Account,nieuw account
New Account Name,Nieuw account Naam
New BOM,Novo BOM
New Communications,New Communications
New Company,nieuw bedrijf
New Cost Center,Nieuwe kostenplaats
New Cost Center Name,Nieuwe kostenplaats Naam
New Delivery Notes,Novas notas de entrega
New Enquiries,Consultas novo
New Leads,Nova leva
New Leave Application,Aplicação deixar Nova
New Leaves Allocated,Nova Folhas alocado
New Leaves Allocated (In Days),Folhas novas atribuído (em dias)
New Material Requests,Novos Pedidos Materiais
New Projects,Novos Projetos
New Purchase Orders,Novas ordens de compra
New Purchase Receipts,Novos recibos de compra
New Quotations,Novas cotações
New Sales Orders,Novos Pedidos de Vendas
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,"New Serial Não, não pode ter Warehouse. Warehouse deve ser definida pelo Banco de entrada ou Recibo de compra"
New Stock Entries,Novas entradas em existências
New Stock UOM,Nova da UOM
New Stock UOM is required,Novo Estoque UOM é necessária
New Stock UOM must be different from current stock UOM,Novo Estoque UOM deve ser diferente do atual UOM estoque
New Supplier Quotations,Novas citações Fornecedor
New Support Tickets,Novos pedidos de ajuda
New UOM must NOT be of type Whole Number,Nova UOM NÃO deve ser do tipo inteiro Número
New Workplace,Novo local de trabalho
Newsletter,Boletim informativo
Newsletter Content,Conteúdo boletim
Newsletter Status,Estado boletim
Newsletter has already been sent,Boletim informativo já foi enviado
"Newsletters to contacts, leads.","Newsletters para contatos, leva."
Newspaper Publishers,Editores de Jornais
Next,próximo
Next Contact By,Contato Próxima Por
Next Contact Date,Data Contato próximo
Next Date,Data próxima
Next email will be sent on:,Próximo e-mail será enviado em:
No,Não
No Customer Accounts found.,Geen Customer Accounts gevonden .
No Customer or Supplier Accounts found,Nenhum cliente ou fornecedor encontrado
No Expense Approvers. Please assign 'Expense Approver' Role to atleast one user,"Não aprovadores Despesas. Por favor, atribuir função ' Despesa aprovador ' para pelo menos um usuário"
No Item with Barcode {0},Nenhum artigo com código de barras {0}
No Item with Serial No {0},Nenhum artigo com Serial Não {0}
No Items to pack,Nenhum item para embalar
No Leave Approvers. Please assign 'Leave Approver' Role to atleast one user,"Não aprovadores sair. Por favor, atribuir ' Leave Aprovador ""Papel de pelo menos um usuário"
No Permission,Nenhuma permissão
No Production Orders created,Não há ordens de produção criadas
No Supplier Accounts found. Supplier Accounts are identified based on 'Master Type' value in account record.,Geen Leverancier Accounts gevonden . Leverancier Accounts worden geïdentificeerd op basis van 'Master Type' waarde in rekening te nemen.
No accounting entries for the following warehouses,Nenhuma entrada de contabilidade para os seguintes armazéns
No addresses created,Geen adressen aangemaakt
No contacts created,Geen contacten gemaakt
No default Address Template found. Please create a new one from Setup > Printing and Branding > Address Template.,"No modelo padrão Endereço encontrado. Por favor, crie um novo a partir de configuração> Impressão e Branding> modelo de endereço."
No default BOM exists for Item {0},No BOM padrão existe para item {0}
No description given,Sem descrição dada
No employee found,Nenhum funcionário encontrado
No employee found!,Nenhum funcionário encontrado!
No of Requested SMS,No pedido de SMS
No of Sent SMS,N º de SMS enviados
No of Visits,N º de Visitas
No permission,Sem permissão
No record found,Nenhum registro encontrado
No records found in the Invoice table,Nenhum registro encontrado na tabela de fatura
No records found in the Payment table,Nenhum registro encontrado na tabela de pagamento
No salary slip found for month: ,Sem folha de salário encontrado para o mês:
Non Profit,sem Fins Lucrativos
Nos,Nos
Not Active,Não Ativo
Not Applicable,Não Aplicável
Not Available,niet beschikbaar
Not Billed,Não faturado
Not Delivered,Não entregue
Not Set,niet instellen
Not allowed to update stock transactions older than {0},Não é permitido atualizar transações com ações mais velho do que {0}
Not authorized to edit frozen Account {0},Não autorizado para editar conta congelada {0}
Not authroized since {0} exceeds limits,Não authroized desde {0} excede os limites
Not permitted,não é permitido
Note,Nota
Note User,Nota usuários
"Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.","Nota: Backups e arquivos não são excluídos do Dropbox, você terá que apagá-los manualmente."
"Note: Backups and files are not deleted from Google Drive, you will have to delete them manually.","Nota: Backups e arquivos não são excluídos do Google Drive, você terá que apagá-los manualmente."
Note: Due Date exceeds the allowed credit days by {0} day(s),Nota: Due Date excede os dias de crédito permitidas por {0} dia (s)
Note: Email will not be sent to disabled users,Nota: e-mail não será enviado para utilizadores com deficiência
Note: Item {0} entered multiple times,Nota : Item {0} entrou várias vezes
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Nota: Entrada pagamento não será criado desde 'Cash ou conta bancária ' não foi especificado
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Nota : O sistema não irá verificar o excesso de entrega e sobre- reserva para item {0} como quantidade ou valor é 0
Note: There is not enough leave balance for Leave Type {0},Nota: Não é suficiente equilíbrio pela licença Tipo {0}
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Nota: Este Centro de Custo é um grupo . Não pode fazer lançamentos contábeis contra grupos .
Note: {0},Nota : {0}
Notes,Notas
Notes:,Opmerkingen:
Nothing to request,Niets aan te vragen
Notice (days),Notice ( dagen )
Notification Control,Controle de Notificação
Notification Email Address,Endereço de email de notificação
Notify by Email on creation of automatic Material Request,Notificar por e-mail sobre a criação de Pedido de material automático
Number Format,Formato de número
Offer Date,aanbieding Datum
Office,Escritório
Office Equipments,Equipamentos de escritório
Office Maintenance Expenses,Despesas de manutenção de escritório
Office Rent,alugar escritório
Old Parent,Pai Velho
On Net Total,Em Líquida Total
On Previous Row Amount,Quantidade em linha anterior
On Previous Row Total,No total linha anterior
Online Auctions,Leilões Online
Only Leave Applications with status 'Approved' can be submitted,"Só Deixar Aplicações com status ""Aprovado"" podem ser submetidos"
"Only Serial Nos with status ""Available"" can be delivered.","Alleen serienummers met de status ""Beschikbaar"" kan worden geleverd."
Only leaf nodes are allowed in transaction,Nós folha apenas são permitidos em operação
Only the selected Leave Approver can submit this Leave Application,Somente o Leave aprovador selecionado pode enviar este pedido de férias
Open,Abrir
Open Production Orders,Open productieorders
Open Tickets,Bilhetes abertas
Opening (Cr),Abertura (Cr)
Opening (Dr),Abertura (Dr)
Opening Date,Data de abertura
Opening Entry,Abertura Entry
Opening Qty,Opening Aantal
Opening Time,Tempo de abertura
Opening Value,Opening Waarde
Opening for a Job.,A abertura para um trabalho.
Operating Cost,Custo de Operação
Operation Description,Descrição da operação
Operation No,Nenhuma operação
Operation Time (mins),Tempo de Operação (minutos)
Operation {0} is repeated in Operations Table,Operação {0} se repete em Operações de mesa
Operation {0} not present in Operations Table,Operação {0} não está presente na mesa de operações
Operations,Operações
Opportunity,Oportunidade
Opportunity Date,Data oportunidade
Opportunity From,Oportunidade De
Opportunity Item,Item oportunidade
Opportunity Items,Itens oportunidade
Opportunity Lost,Oportunidade perdida
Opportunity Type,Tipo de Oportunidade
Optional. This setting will be used to filter in various transactions.,Optioneel. Deze instelling wordt gebruikt om te filteren op diverse transacties .
Order Type,Tipo de Ordem
Order Type must be one of {0},Tipo de Ordem deve ser uma das {0}
Ordered,bestelde
Ordered Items To Be Billed,Itens ordenados a ser cobrado
Ordered Items To Be Delivered,Itens ordenados a ser entregue
Ordered Qty,bestelde Aantal
"Ordered Qty: Quantity ordered for purchase, but not received.","Bestelde Aantal : Aantal besteld voor aankoop , maar niet ontvangen ."
Ordered Quantity,Quantidade pedida
Orders released for production.,Ordens liberado para produção.
Organization Name,Naam van de Organisatie
Organization Profile,Perfil da Organização
Organization branch master.,Mestre Organização ramo .
Organization unit (department) master.,Organização unidade (departamento) mestre.
Other,Outro
Other Details,Outros detalhes
Others,outros
Out Qty,out Aantal
Out Value,out Waarde
Out of AMC,Fora da AMC
Out of Warranty,Fora de Garantia
Outgoing,Cessante
Outstanding Amount,Saldo em aberto
Outstanding for {0} cannot be less than zero ({1}),Excelente para {0} não pode ser inferior a zero ( {1})
Overhead,Despesas gerais
Overheads,overheadkosten
Overlapping conditions found between:,Condições sobreposição encontradas entre :
Overview,Overzicht
Owned,Possuído
Owner,eigenaar
P L A - Cess Portion,PLA - Cess Parcela
PL or BS,PL of BS
PO Date,PO Datum
PO No,PO Geen
POP3 Mail Server,Servidor de correio POP3
POP3 Mail Settings,Configurações de mensagens pop3
POP3 mail server (e.g. pop.gmail.com),POP3 servidor de correio (por exemplo pop.gmail.com)
POP3 server e.g. (pop.gmail.com),"Servidor POP3, por exemplo (pop.gmail.com)"
POS Setting,Definição POS
POS Setting required to make POS Entry,Setting POS obrigados a fazer POS Entry
POS Setting {0} already created for user: {1} and company {2},POS Setting {0} já criado para o usuário : {1} e {2} empresa
POS View,POS Ver
PR Detail,Detalhe PR
Package Item Details,Item Detalhes do pacote
Package Items,Itens do pacote
Package Weight Details,Peso Detalhes do pacote
Packed Item,Entrega do item embalagem Nota
Packed quantity must equal quantity for Item {0} in row {1},Embalado quantidade deve ser igual a quantidade de item {0} na linha {1}
Packing Details,Detalhes da embalagem
Packing List,Lista de embalagem
Packing Slip,Embalagem deslizamento
Packing Slip Item,Embalagem item deslizamento
Packing Slip Items,Embalagem Itens deslizamento
Packing Slip(s) cancelled,Deslizamento (s) de embalagem cancelado
Page Break,Quebra de página
Page Name,Nome da Página
Paid Amount,Valor pago
Paid amount + Write Off Amount can not be greater than Grand Total,Valor pago + Write Off Valor não pode ser maior do que o total geral
Pair,par
Parameter,Parâmetro
Parent Account,Conta pai
Parent Cost Center,Centro de Custo pai
Parent Customer Group,Grupo de Clientes pai
Parent Detail docname,Docname Detalhe pai
Parent Item,Item Pai
Parent Item Group,Grupo item pai
Parent Item {0} must be not Stock Item and must be a Sales Item,Pai item {0} não deve ser Stock item e deve ser um item de vendas
Parent Party Type,Tipo Partido Pais
Parent Sales Person,Vendas Pessoa pai
Parent Territory,Território pai
Parent Website Page,Pai site Página
Parent Website Route,Pai site Route
Parenttype,ParentType
Part-time,De meio expediente
Partially Completed,Parcialmente concluída
Partly Billed,Parcialmente faturado
Partly Delivered,Entregue em parte
Partner Target Detail,Detalhe Alvo parceiro
Partner Type,Tipo de parceiro
Partner's Website,Site do parceiro
Party,Festa
Party Account,Conta Party
Party Type,Tipo de Festa
Party Type Name,Tipo Partido Nome
Passive,Passiva
Passport Number,Número do Passaporte
Password,Senha
Pay To / Recd From,Para pagar / RECD De
Payable,a pagar
Payables,Contas a pagar
Payables Group,Grupo de contas a pagar
Payment Days,Datas de Pagamento
Payment Due Date,Betaling Due Date
Payment Period Based On Invoice Date,Betaling Periode Based On Factuurdatum
Payment Reconciliation,Reconciliação Pagamento
Payment Reconciliation Invoice,Reconciliação O pagamento da fatura
Payment Reconciliation Invoices,Facturas Reconciliação Pagamento
Payment Reconciliation Payment,Reconciliação Pagamento
Payment Reconciliation Payments,Pagamentos Reconciliação Pagamento
Payment Type,betaling Type
Payment cannot be made for empty cart,O pagamento não pode ser feito para carrinho vazio
Payment of salary for the month {0} and year {1},Pagamento de salário para o mês {0} e {1} ano
Payments,Pagamentos
Payments Made,Pagamentos efetuados
Payments Received,Pagamentos Recebidos
Payments made during the digest period,Pagamentos efetuados durante o período de digestão
Payments received during the digest period,Pagamentos recebidos durante o período de digestão
Payroll Settings,payroll -instellingen
Pending,Pendente
Pending Amount,In afwachting van Bedrag
Pending Items {0} updated,Itens Pendentes {0} atualizada
Pending Review,Revisão pendente
Pending SO Items For Purchase Request,"Itens Pendentes Assim, por solicitação de compra"
Pension Funds,Fundos de Pensão
Percent Complete,Porcentagem Concluída
Percentage Allocation,Alocação percentual
Percentage Allocation should be equal to 100%,Percentual de alocação deve ser igual a 100%
Percentage variation in quantity to be allowed while receiving or delivering this item.,Variação percentual na quantidade a ser permitido ao receber ou entregar este item.
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.,"Percentagem que estão autorizados a receber ou entregar mais contra a quantidade encomendada. Por exemplo: Se você encomendou 100 unidades. e seu subsídio é de 10%, então você está autorizada a receber 110 unidades."
Performance appraisal.,Avaliação de desempenho.
Period,periode
Period Closing Voucher,Comprovante de Encerramento período
Periodicity,Periodicidade
Permanent Address,Endereço permanente
Permanent Address Is,Vast adres
Permission,Permissão
Personal,Pessoal
Personal Details,Detalhes pessoais
Personal Email,E-mail pessoal
Pharmaceutical,farmacêutico
Pharmaceuticals,Pharmaceuticals
Phone,Telefone
Phone No,N º de telefone
Piecework,trabalho por peça
Pincode,PINCODE
Place of Issue,Local de Emissão
Plan for maintenance visits.,Plano de visitas de manutenção.
Planned Qty,Qtde planejada
"Planned Qty: Quantity, for which, Production Order has been raised, but is pending to be manufactured.","Planned Qtde: Quantidade , para a qual, ordem de produção foi levantada , mas está pendente para ser fabricado."
Planned Quantity,Quantidade planejada
Planning,planejamento
Plant,Planta
Plant and Machinery,Máquinas e instalações
Please Enter Abbreviation or Short Name properly as it will be added as Suffix to all Account Heads.,Por favor insira Abreviação ou Nome Curto corretamente como ele será adicionado como sufixo a todos os chefes de Conta.
Please Update SMS Settings,Atualize Configurações SMS
Please add expense voucher details,"Por favor, adicione despesas detalhes do voucher"
Please add to Modes of Payment from Setup.,"Por favor, adicione às formas de pagamento a partir de configuração."
Please check 'Is Advance' against Account {0} if this is an advance entry.,"Por favor, verifique 'É Advance' contra Conta {0} se isso é uma entrada antecipadamente."
Please click on 'Generate Schedule',"Por favor, clique em "" Gerar Agenda '"
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Por favor, clique em "" Gerar Cronograma ' para buscar Serial Sem adição de item {0}"
Please click on 'Generate Schedule' to get schedule,"Por favor, clique em "" Gerar Agenda "" para obter cronograma"
Please create Customer from Lead {0},"Por favor, crie Cliente de chumbo {0}"
Please create Salary Structure for employee {0},"Por favor, crie estrutura salarial por empregado {0}"
Please create new account from Chart of Accounts.,Maak nieuwe account van Chart of Accounts .
Please do NOT create Account (Ledgers) for Customers and Suppliers. They are created directly from the Customer / Supplier masters.,Gelieve niet Account ( Grootboeken ) te creëren voor klanten en leveranciers . Ze worden rechtstreeks vanuit de klant / leverancier- meesters.
Please enter 'Expected Delivery Date',"Por favor, digite ' Data prevista de entrega '"
Please enter 'Is Subcontracted' as Yes or No,"Por favor, digite ' é subcontratado ""como Sim ou Não"
Please enter 'Repeat on Day of Month' field value,"Por favor, digite 'Repeat no Dia do Mês ' valor do campo"
Please enter Account Receivable/Payable group in company master,Por favor entre Contas a Receber / Pagar em grupo mestre empresa
Please enter Approving Role or Approving User,"Por favor, indique Aprovando Papel ou aprovar Usuário"
Please enter BOM for Item {0} at row {1},"Por favor, indique BOM por item {0} na linha {1}"
Please enter Company,Vul Company
Please enter Cost Center,Vul kostenplaats
Please enter Delivery Note No or Sales Invoice No to proceed,Por favor insira Entrega Nota Não ou fatura de vendas Não para continuar
Please enter Employee Id of this sales parson,Vul Werknemer Id van deze verkoop dominee
Please enter Expense Account,Por favor insira Conta Despesa
Please enter Item Code to get batch no,Vul de artikelcode voor batch niet krijgen
Please enter Item Code.,Vul Item Code .
Please enter Item first,Gelieve eerst in Item
Please enter Maintaince Details first,"Por favor, indique Maintaince Detalhes primeiro"
Please enter Master Name once the account is created.,Vul Master Naam zodra het account is aangemaakt .
Please enter Planned Qty for Item {0} at row {1},"Por favor, indique Planned Qt para item {0} na linha {1}"
Please enter Production Item first,Vul Productie Item eerste
Please enter Purchase Receipt No to proceed,Por favor insira Compra recibo Não para continuar
Please enter Reference date,"Por favor, indique data de referência"
Please enter Warehouse for which Material Request will be raised,Vul Warehouse waarvoor Materiaal Request zal worden verhoogd
Please enter Write Off Account,"Por favor, indique Escrever Off Conta"
Please enter atleast 1 invoice in the table,"Por favor, indique pelo menos uma fatura na tabela"
Please enter company first,Gelieve eerst in bedrijf
Please enter company name first,Vul de naam van het bedrijf voor het eerst
Please enter default Unit of Measure,Por favor entre unidade de medida padrão
Please enter default currency in Company Master,"Por favor, indique moeda padrão in Company Mestre"
Please enter email address,Por favor insira o endereço de email
Please enter item details,Por favor insira os detalhes do item
Please enter message before sending,Por favor introduza a mensagem antes de enviá-
Please enter parent account group for warehouse account,"Por favor, digite grupo conta principal para a conta do armazém"
Please enter parent cost center,Por favor entre o centro de custo pai
Please enter quantity for Item {0},"Por favor, indique a quantidade de item {0}"
Please enter relieving date.,"Por favor, indique data alívio ."
Please enter sales order in the above table,Vul de verkooporder in de bovenstaande tabel
Please enter valid Company Email,Por favor insira válido Empresa E-mail
Please enter valid Email Id,"Por favor, indique -mail válido Id"
Please enter valid Personal Email,"Por favor, indique -mail válido Pessoal"
Please enter valid mobile nos,"Por favor, indique nn móveis válidos"
Please find attached Sales Invoice #{0},Segue em anexo Vendas Invoice # {0}
Please install dropbox python module,"Por favor, instale o Dropbox módulo python"
Please mention no of visits required,"Por favor, não mencione de visitas necessárias"
Please pull items from Delivery Note,"Por favor, puxar itens de entrega Nota"
Please save the Newsletter before sending,"Por favor, salve o Boletim informativo antes de enviar"
Please save the document before generating maintenance schedule,Bewaar het document voordat het genereren van onderhoudsschema
Please see attachment,"Por favor, veja anexo"
Please select Bank Account,Por favor seleccione Conta Bancária
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 se você também quer incluir equilíbrio ano fiscal anterior deixa para este ano fiscal
Please select Category first,Selecteer Categorie eerst
Please select Charge Type first,Selecteer Charge Type eerste
Please select Fiscal Year,Por favor seleccione o Ano Fiscal
Please select Group or Ledger value,Selecione Grupo ou Ledger valor
Please select Incharge Person's name,"Por favor, selecione o nome do Incharge Pessoa"
Please select Invoice Type and Invoice Number in atleast one row,Por favor seleccione fatura Tipo e número da fatura em pelo menos uma linha
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Sales BOM","Por favor, selecione Item onde "" é Stock item "" é "" Não"" e "" é o item de vendas "" é ""Sim"" e não há nenhum outro BOM Vendas"
Please select Price List,"Por favor, selecione Lista de Preço"
Please select Start Date and End Date for Item {0},Por favor seleccione Data de início e data de término do item {0}
Please select Time Logs.,Por favor seleccione Tempo Logs.
Please select a csv file,"Por favor, selecione um arquivo csv"
Please select a valid csv file with data,"Por favor, selecione um arquivo csv com dados válidos"
Please select a value for {0} quotation_to {1},Por favor seleccione um valor para {0} {1} quotation_to
"Please select an ""Image"" first","Selecteer aub een "" beeld"" eerste"
Please select charge type first,"Por favor, selecione o tipo de carga primeiro"
Please select company first,Por favor seleccione primeira empresa
Please select company first.,Por favor seleccione primeira empresa.
Please select item code,Por favor seleccione código do item
Please select month and year,Selecione mês e ano
Please select prefix first,Por favor seleccione prefixo primeiro
Please select the document type first,"Por favor, selecione o tipo de documento primeiro"
Please select weekly off day,Por favor seleccione dia de folga semanal
Please select {0},Por favor seleccione {0}
Please select {0} first,Por favor seleccione {0} primeiro
Please select {0} first.,Por favor seleccione {0} primeiro.
Please set Dropbox access keys in your site config,Defina teclas de acesso Dropbox em sua configuração local
Please set Google Drive access keys in {0},Defina teclas de acesso do Google Drive em {0}
Please set default Cash or Bank account in Mode of Payment {0},Defina Caixa padrão ou conta bancária no Modo de pagamento {0}
Please set default value {0} in Company {0},"Por favor, defina o valor padrão {0} in Company {0}"
Please set {0},Defina {0}
Please setup Employee Naming System in Human Resource > HR Settings,"Por favor, configuração Employee Naming System em Recursos Humanos&gt; Configurações HR"
Please setup numbering series for Attendance via Setup > Numbering Series,"Por favor, configure série de numeração para Participação em Configurar> numeração Series"
Please setup your chart of accounts before you start Accounting Entries,Behagen opstelling uw rekeningschema voordat u start boekingen
Please specify,"Por favor, especifique"
Please specify Company,"Por favor, especifique Empresa"
Please specify Company to proceed,"Por favor, especifique Empresa proceder"
Please specify Default Currency in Company Master and Global Defaults,"Por favor, especifique Moeda predefinida in Company Mestre e padrões globais"
Please specify a,"Por favor, especifique um"
Please specify a valid 'From Case No.',"Por favor, especifique um válido &#39;De Caso No.&#39;"
Please specify a valid Row ID for {0} in row {1},"Por favor, especifique um ID Row válido para {0} na linha {1}"
Please specify either Quantity or Valuation Rate or both,"Por favor, especifique a quantidade ou Taxa de Valorização ou ambos"
Please submit to update Leave Balance.,Gelieve te werken verlofsaldo .
Plot,plot
Plot By,plot Door
Point of Sale,Ponto de Venda
Point-of-Sale Setting,Ponto-de-Venda Setting
Post Graduate,Pós-Graduação
Postal,Postal
Postal Expenses,despesas postais
Posting Date,Data da Publicação
Posting Time,Postagem Tempo
Posting date and posting time is mandatory,Data e postagem Posting tempo é obrigatório
Posting timestamp must be after {0},Postando timestamp deve ser posterior a {0}
Potential opportunities for selling.,Oportunidades potenciais para a venda.
Preferred Billing Address,Preferred Endereço de Cobrança
Preferred Shipping Address,Endereço para envio preferido
Prefix,Prefixo
Present,Apresentar
Prevdoc DocType,Prevdoc DocType
Prevdoc Doctype,Prevdoc Doctype
Preview,visualização
Previous,anterior
Previous Work Experience,Experiência anterior de trabalho
Price,preço
Price / Discount,Preço / desconto
Price List,Lista de Preços
Price List Currency,Hoje Lista de Preços
Price List Currency not selected,Lista de Preço Moeda não selecionado
Price List Exchange Rate,Preço Lista de Taxa de Câmbio
Price List Name,Nome da lista de preços
Price List Rate,Taxa de Lista de Preços
Price List Rate (Company Currency),Preço Taxa List (moeda da empresa)
Price List master.,Mestre Lista de Preços.
Price List must be applicable for Buying or Selling,Lista de Preço deve ser aplicável para comprar ou vender
Price List not selected,Lista de Preço não selecionado
Price List {0} is disabled,Preço de {0} está desativado
Price or Discount,Preço ou desconto
Pricing Rule,Regra de Preços
Pricing Rule Help,Regra Preços Ajuda
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Regra de Preços é o primeiro selecionado com base em ""Aplicar On 'campo, que pode ser Item, item de grupo ou Marca."
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Regra de preços é feita para substituir Lista de Preços / define percentual de desconto, com base em alguns critérios."
Pricing Rules are further filtered based on quantity.,As regras de tarifação são ainda filtrados com base na quantidade.
Print Format Style,Formato de impressão Estilo
Print Heading,Imprimir título
Print Without Amount,Imprimir Sem Quantia
Print and Stationary,Imprimir e estacionária
Printing and Branding,Impressão e Branding
Priority,Prioridade
Private Equity,Private Equity
Privilege Leave,Privilege Deixar
Probation,provação
Process Payroll,Payroll processo
Produced,geproduceerd
Produced Quantity,Quantidade produzida
Product Enquiry,Produto Inquérito
Production,produção
Production Order,Ordem de Produção
Production Order status is {0},Status de ordem de produção é {0}
Production Order {0} must be cancelled before cancelling this Sales Order,Ordem de produção {0} deve ser cancelado antes de cancelar esta ordem de venda
Production Order {0} must be submitted,Ordem de produção {0} deve ser apresentado
Production Orders,Ordens de Produção
Production Orders in Progress,Productieorders in Progress
Production Plan Item,Item do plano de produção
Production Plan Items,Plano de itens de produção
Production Plan Sales Order,Produção Plano de Ordem de Vendas
Production Plan Sales Orders,Vendas de produção do Plano de Ordens
Production Planning Tool,Ferramenta de Planejamento da Produção
Products,produtos
"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Os produtos serão classificados por peso-idade em buscas padrão. Mais o peso-idade, maior o produto irá aparecer na lista."
Professional Tax,Imposto Profissional
Profit and Loss,Lucros e perdas
Profit and Loss Statement,Demonstração dos Resultados
Project,Projeto
Project Costing,Project Costing
Project Details,Detalhes do projeto
Project Manager,Gerente de Projetos
Project Milestone,Projeto Milestone
Project Milestones,Etapas do Projeto
Project Name,Nome do projeto
Project Start Date,Data de início do projeto
Project Type,Tipo de projeto
Project Value,Valor do projeto
Project activity / task.,Atividade de projeto / tarefa.
Project master.,Projeto mestre.
Project will get saved and will be searchable with project name given,Projeto será salvo e poderão ser pesquisados ​​com o nome de determinado projeto
Project wise Stock Tracking,Projeto sábios Stock Rastreamento
Project-wise data is not available for Quotation,Dados do projecto -wise não está disponível para Cotação
Projected,verwachte
Projected Qty,Qtde Projetada
Projects,Projetos
Projects & System,Projetos e Sistema
Prompt for Email on Submission of,Solicitar-mail mediante a apresentação da
Proposal Writing,Proposta Redação
Provide email id registered in company,Fornecer ID e-mail registrado na empresa
Provisional Profit / Loss (Credit),Lucro Provisória / Loss (Crédito)
Public,Público
Published on website at: {0},Publicado no site em: {0}
Publishing,Publishing
Pull sales orders (pending to deliver) based on the above criteria,Puxe pedidos de vendas pendentes (de entregar) com base nos critérios acima
Purchase,Comprar
Purchase / Manufacture Details,Aankoop / Productie Details
Purchase Analytics,Analytics compra
Purchase Common,Compre comum
Purchase Details,Detalhes de compra
Purchase Discounts,Descontos de compra
Purchase Invoice,Compre Fatura
Purchase Invoice Advance,Compra Antecipada Fatura
Purchase Invoice Advances,Avanços comprar Fatura
Purchase Invoice Item,Comprar item Fatura
Purchase Invoice Trends,Compra Tendências fatura
Purchase Invoice {0} is already submitted,Compra Invoice {0} já é submetido
Purchase Order,Ordem de Compra
Purchase Order Item,Comprar item Ordem
Purchase Order Item No,Comprar item Portaria n
Purchase Order Item Supplied,Item da ordem de compra em actualização
Purchase Order Items,Comprar Itens Encomendar
Purchase Order Items Supplied,Itens ordem de compra em actualização
Purchase Order Items To Be Billed,Ordem de Compra itens a serem faturados
Purchase Order Items To Be Received,Comprar itens para ser recebido
Purchase Order Message,Mensagem comprar Ordem
Purchase Order Required,Ordem de Compra Obrigatório
Purchase Order Trends,Ordem de Compra Trends
Purchase Order number required for Item {0},Número do pedido requerido para item {0}
Purchase Order {0} is 'Stopped',Ordem de Compra {0} está ' parado '
Purchase Order {0} is not submitted,Ordem de Compra {0} não é submetido
Purchase Orders given to Suppliers.,As ordens de compra dadas a fornecedores.
Purchase Receipt,Compra recibo
Purchase Receipt Item,Comprar item recepção
Purchase Receipt Item Supplied,Recibo de compra do item em actualização
Purchase Receipt Item Supplieds,Compre Supplieds item recepção
Purchase Receipt Items,Comprar Itens Recibo
Purchase Receipt Message,Mensagem comprar Recebimento
Purchase Receipt No,Compra recibo Não
Purchase Receipt Required,Recibo de compra Obrigatório
Purchase Receipt Trends,Compra Trends Recibo
Purchase Receipt number required for Item {0},Número Recibo de compra necessário para item {0}
Purchase Receipt {0} is not submitted,Recibo de compra {0} não é submetido
Purchase Register,Compra Registre
Purchase Return,Voltar comprar
Purchase Returned,Compre Devolvido
Purchase Taxes and Charges,Impostos e Encargos de compra
Purchase Taxes and Charges Master,Impostos de compra e Master Encargos
Purchse Order number required for Item {0},Número de pedido purchse necessário para item {0}
Purpose,Propósito
Purpose must be one of {0},Objetivo deve ser um dos {0}
QA Inspection,Inspeção QA
Qty,Qty
Qty Consumed Per Unit,Qtde consumida por unidade
Qty To Manufacture,Qtde Para Fabricação
Qty as per Stock UOM,Qtde como por Ação UOM
Qty to Deliver,Aantal te leveren
Qty to Order,Aantal te bestellen
Qty to Receive,Aantal te ontvangen
Qty to Transfer,Aantal Transfer
Qualification,Qualificação
Quality,Qualidade
Quality Inspection,Inspeção de Qualidade
Quality Inspection Parameters,Inspeção parâmetros de qualidade
Quality Inspection Reading,Leitura de Inspeção de Qualidade
Quality Inspection Readings,Leituras de inspeção de qualidade
Quality Inspection required for Item {0},Inspeção de Qualidade exigido para item {0}
Quality Management,Gestão da Qualidade
Quantity,Quantidade
Quantity Requested for Purchase,Quantidade Solicitada para Compra
Quantity and Rate,Quantidade e Taxa
Quantity and Warehouse,Quantidade e Armazém
Quantity cannot be a fraction in row {0},A quantidade não pode ser uma fracção em linha {0}
Quantity for Item {0} must be less than {1},Quantidade de item {0} deve ser inferior a {1}
Quantity in row {0} ({1}) must be same as manufactured quantity {2},Quantidade em linha {0} ( {1} ) deve ser a mesma quantidade fabricada {2}
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Quantidade do item obtido após a fabricação / reembalagem de determinadas quantidades de matérias-primas
Quantity required for Item {0} in row {1},Quantidade necessária para item {0} na linha {1}
Quarter,Trimestre
Quarterly,Trimestral
Quick Help,Quick Help
Quotation,Citação
Quotation Item,Item citação
Quotation Items,Itens cotação
Quotation Lost Reason,Cotação Perdeu Razão
Quotation Message,Mensagem citação
Quotation To,Para citação
Quotation Trends,Tendências cotação
Quotation {0} is cancelled,Cotação {0} é cancelada
Quotation {0} not of type {1},Cotação {0} não é do tipo {1}
Quotations received from Suppliers.,Citações recebidas de fornecedores.
Quotes to Leads or Customers.,Cotações para Leads ou Clientes.
Raise Material Request when stock reaches re-order level,Levante solicitar material quando o estoque atinge novo pedido de nível
Raised By,Levantadas por
Raised By (Email),Levantadas por (e-mail)
Random,Acaso
Range,Alcance
Rate,Taxa
Rate ,Taxa
Rate (%),Taxa (%)
Rate (Company Currency),Rate (moeda da empresa)
Rate Of Materials Based On,Taxa de materiais com base
Rate and Amount,Taxa e montante
Rate at which Customer Currency is converted to customer's base currency,Taxa em que moeda do cliente é convertido para a moeda base de cliente
Rate at which Price list currency is converted to company's base currency,Taxa em que moeda lista de preços é convertido para a moeda da empresa de base
Rate at which Price list currency is converted to customer's base currency,Taxa em que moeda lista de preços é convertido para a moeda base de cliente
Rate at which customer's currency is converted to company's base currency,Taxa na qual a moeda do cliente é convertido para a moeda da empresa de base
Rate at which supplier's currency is converted to company's base currency,Taxa na qual a moeda que fornecedor é convertido para a moeda da empresa de base
Rate at which this tax is applied,Taxa em que este imposto é aplicado
Raw Material,Matéria-prima
Raw Material Item Code,Item Código de matérias-primas
Raw Materials Supplied,Matérias-primas em actualização
Raw Materials Supplied Cost,Matérias-primas fornecidas Custo
Raw material cannot be same as main Item,Matéria-prima não pode ser o mesmo como o principal item
Re-Order Level,Re Ordem Nível
Re-Order Qty,Re-Ordem Qtde
Re-order,Re-vista
Re-order Level,Re fim-Level
Re-order Qty,Re-vista Qtde
Read,Ler
Reading 1,Leitura 1
Reading 10,Leitura 10
Reading 2,Leitura 2
Reading 3,Leitura 3
Reading 4,Reading 4
Reading 5,Leitura 5
Reading 6,Leitura 6
Reading 7,Lendo 7
Reading 8,Leitura 8
Reading 9,Leitura 9
Real Estate,imóveis
Reason,Razão
Reason for Leaving,Motivo da saída
Reason for Resignation,Motivo para Demissão
Reason for losing,Reden voor het verliezen
Recd Quantity,Quantidade RECD
Receivable,a receber
Receivable / Payable account will be identified based on the field Master Type,Conta a receber / pagar serão identificados com base no campo Type Master
Receivables,Recebíveis
Receivables / Payables,Contas a receber / contas a pagar
Receivables Group,Grupo de recebíveis
Received Date,Data de recebimento
Received Items To Be Billed,Itens recebidos a ser cobrado
Received Qty,Qtde recebeu
Received and Accepted,Recebeu e aceitou
Receiver List,Lista de receptor
Receiver List is empty. Please create Receiver List,"Lista Receiver está vazio. Por favor, crie Lista Receiver"
Receiver Parameter,Parâmetro receptor
Recipients,Destinatários
Reconcile,conciliar
Reconciliation Data,Dados de reconciliação
Reconciliation HTML,Reconciliação HTML
Reconciliation JSON,Reconciliação JSON
Record item movement.,Gravar o movimento item.
Recurring Id,Id recorrente
Recurring Invoice,Fatura recorrente
Recurring Type,Tipo recorrente
Reduce Deduction for Leave Without Pay (LWP),Reduzir Dedução por licença sem vencimento (LWP)
Reduce Earning for Leave Without Pay (LWP),Reduzir a Geração de Renda para sair sem pagar (LWP)
Ref,Ref
Ref Code,Ref Código
Ref SQ,Ref ²
Reference,Referência
Reference #{0} dated {1},Referência # {0} {1} datado
Reference Date,Data de Referência
Reference Name,Nome de referência
Reference No & Reference Date is required for {0},Número de referência e Referência Data é necessário para {0}
Reference No is mandatory if you entered Reference Date,Referência Não é obrigatório se você entrou Data de Referência
Reference Number,Número de Referência
Reference Row #,Referência Row #
Refresh,Refrescar
Registration Details,Detalhes registro
Registration Info,Registo Informações
Rejected,Rejeitado
Rejected Quantity,Quantidade rejeitado
Rejected Serial No,Rejeitado Não Serial
Rejected Warehouse,Armazém rejeitado
Rejected Warehouse is mandatory against regected item,Verworpen Warehouse is verplicht tegen regected post
Relation,Relação
Relieving Date,Aliviar Data
Relieving Date must be greater than Date of Joining,Aliviar A data deve ser maior que Data de Juntando
Remark,Observação
Remarks,Observações
Remarks Custom,Observações Personalizado
Rename,andere naam geven
Rename Log,Renomeie Entrar
Rename Tool,Renomear Ferramenta
Rent Cost,Kosten huur
Rent per hour,Huur per uur
Rented,Alugado
Repeat on Day of Month,Repita no Dia do Mês
Replace,Substituir
Replace Item / BOM in all BOMs,Substituir item / BOM em todas as BOMs
Replied,Respondeu
Report Date,Relatório Data
Report Type,Tipo de relatório
Report Type is mandatory,Tipo de relatório é obrigatória
Reports to,Relatórios para
Reqd By Date,Reqd Por Data
Reqd by Date,Reqd por Data
Request Type,Tipo de Solicitação
Request for Information,Pedido de Informação
Request for purchase.,Pedido de compra.
Requested,gevraagd
Requested For,gevraagd voor
Requested Items To Be Ordered,Itens solicitados devem ser pedidos
Requested Items To Be Transferred,Itens solicitados para ser transferido
Requested Qty,verzocht Aantal
"Requested Qty: Quantity requested for purchase, but not ordered.","Aangevraagd Aantal : Aantal op aankoop, maar niet besteld."
Requests for items.,Os pedidos de itens.
Required By,Exigido por
Required Date,Data Obrigatório
Required Qty,Quantidade requerida
Required only for sample item.,Necessário apenas para o item amostra.
Required raw materials issued to the supplier for producing a sub - contracted item.,Matérias-primas necessárias emitidos para o fornecedor para a produção de um sub - item contratado.
Research,pesquisa
Research & Development,Pesquisa e Desenvolvimento
Researcher,investigador
Reseller,Revendedor
Reserved,gereserveerd
Reserved Qty,Gereserveerd Aantal
"Reserved Qty: Quantity ordered for sale, but not delivered.","Gereserveerd Aantal : Aantal besteld te koop , maar niet geleverd ."
Reserved Quantity,Quantidade reservados
Reserved Warehouse,Reservado Armazém
Reserved Warehouse in Sales Order / Finished Goods Warehouse,Armazém reservada no Pedido de Vendas / armazém de produtos acabados
Reserved Warehouse is missing in Sales Order,Reservado Warehouse está faltando na Ordem de Vendas
Reserved Warehouse required for stock Item {0} in row {1},Armazém reservados necessário para stock o item {0} na linha {1}
Reserved warehouse required for stock item {0},Armazém reservados necessário para estoque item {0}
Reserves and Surplus,Reservas e Excedente
Reset Filters,Reset Filters
Resignation Letter Date,Data carta de demissão
Resolution,Resolução
Resolution Date,Data resolução
Resolution Details,Detalhes de Resolução
Resolved By,Resolvido por
Rest Of The World,Resto do mundo
Retail,Varejo
Retail & Wholesale,Varejo e Atacado
Retailer,Varejista
Review Date,Comente Data
Rgt,Rgt
Role Allowed to edit frozen stock,Papel permissão para editar estoque congelado
Role that is allowed to submit transactions that exceed credit limits set.,Papel que é permitido submeter transações que excedam os limites de crédito estabelecidos.
Root Type,Tipo de Raiz
Root Type is mandatory,Tipo de Raiz é obrigatório
Root account can not be deleted,Conta root não pode ser excluído
Root cannot be edited.,Root não pode ser editado .
Root cannot have a parent cost center,Root não pode ter um centro de custos pai
Rounded Off,arredondado
Rounded Total,Total arredondado
Rounded Total (Company Currency),Total arredondado (Moeda Company)
Row # ,Linha #
Row # {0}: ,
Row #{0}: Ordered qty can not less than item's minimum order qty (defined in item master).,Row # {0}: qty ordenado pode não inferior a qty pedido mínimo do item (definido no mestre de item).
Row #{0}: Please specify Serial No for Item {1},Row # {0}: Favor especificar Sem Serial para item {1}
"Row {0}: Account does not match with \
						Purchase Invoice Credit To account","Row {0}: Conta não corresponde com \
 Compra fatura de crédito para conta"
"Row {0}: Account does not match with \
						Sales Invoice Debit To account","Row {0}: Conta não corresponde com \
 Vendas fatura de débito em conta"
Row {0}: Conversion Factor is mandatory,Row {0}: Fator de Conversão é obrigatório
Row {0}: Credit entry can not be linked with a Purchase Invoice,Row {0}: entrada de crédito não pode ser associada com uma fatura de compra
Row {0}: Debit entry can not be linked with a Sales Invoice,Row {0}: lançamento de débito não pode ser associada com uma factura de venda
Row {0}: Payment amount must be less than or equals to invoice outstanding amount. Please refer Note below.,"Row {0}: Valor do pagamento deve ser menor ou igual a facturar montante em dívida. Por favor, consulte a nota abaixo."
Row {0}: Qty is mandatory,Row {0}: Quantidade é obrigatório
"Row {0}: Qty not avalable in warehouse {1} on {2} {3}.
					Available Qty: {4}, Transfer Qty: {5}","Row {0}: Quantidade não avalable no armazém {1} em {2} {3}.
 Disponível Qtde: {4}, Transferência Qtde: {5}"
"Row {0}: To set {1} periodicity, difference between from and to date \
						must be greater than or equal to {2}","Fila {0}: Para definir {1} periodicidade, diferença entre a data e a partir de \
 deve ser maior do que ou igual a {2}"
Row {0}:Start Date must be before End Date,Row {0}: Data de início deve ser anterior a data de término
Rules for adding shipping costs.,Regras para adicionar os custos de envio .
Rules for applying pricing and discount.,Regras para aplicação de preços e de desconto.
Rules to calculate shipping amount for a sale,Regras para calcular valor de frete para uma venda
S.O. No.,S.O. Nee.
SHE Cess on Excise,SHE Cess em impostos indiretos
SHE Cess on Service Tax,SHE Cess em Imposto sobre Serviços
SHE Cess on TDS,SHE Cess em TDS
SMS Center,SMS Center
SMS Gateway URL,SMS Gateway de URL
SMS Log,SMS Log
SMS Parameter,Parâmetro SMS
SMS Sender Name,Nome do remetente SMS
SMS Settings,Definições SMS
SO Date,SO Data
SO Pending Qty,Está pendente de Qtde
SO Qty,SO Aantal
Salary,Salário
Salary Information,Informação salário
Salary Manager,Gerente de salário
Salary Mode,Modo de salário
Salary Slip,Folha de salário
Salary Slip Deduction,Dedução folha de salário
Salary Slip Earning,Folha de salário Ganhando
Salary Slip of employee {0} already created for this month,Folha de salário de empregado {0} já criado para este mês
Salary Structure,Estrutura Salarial
Salary Structure Deduction,Dedução Estrutura Salarial
Salary Structure Earning,Estrutura salarial Ganhando
Salary Structure Earnings,Estrutura Lucros Salário
Salary breakup based on Earning and Deduction.,Separação Salário com base em salário e dedução.
Salary components.,Componentes salariais.
Salary template master.,Mestre modelo Salário .
Sales,De vendas
Sales Analytics,Sales Analytics
Sales BOM,BOM vendas
Sales BOM Help,Vendas Ajuda BOM
Sales BOM Item,Vendas item BOM
Sales BOM Items,Vendas Itens BOM
Sales Browser,Navegador Vendas
Sales Details,Detalhes de vendas
Sales Discounts,Descontos de vendas
Sales Email Settings,Vendas Configurações de Email
Sales Expenses,Despesas com Vendas
Sales Extras,Extras de vendas
Sales Funnel,Sales Funnel
Sales Invoice,Fatura de vendas
Sales Invoice Advance,Vendas antecipadas Fatura
Sales Invoice Item,Vendas item Fatura
Sales Invoice Items,Vendas itens da fatura
Sales Invoice Message,Vendas Mensagem Fatura
Sales Invoice No,Vendas factura n
Sales Invoice Trends,Vendas Tendências fatura
Sales Invoice {0} has already been submitted,Fatura de vendas {0} já foi apresentado
Sales Invoice {0} must be cancelled before cancelling this Sales Order,Fatura de vendas {0} deve ser cancelado antes de cancelar esta ordem de venda
Sales Order,Ordem de Vendas
Sales Order Date,Vendas Data Ordem
Sales Order Item,Vendas item Ordem
Sales Order Items,Vendas Itens Encomendar
Sales Order Message,Vendas Mensagem Ordem
Sales Order No,Vendas decreto n º
Sales Order Required,Ordem vendas Obrigatório
Sales Order Trends,Pedido de Vendas Trends
Sales Order required for Item {0},Ordem de venda necessário para item {0}
Sales Order {0} is not submitted,Ordem de Vendas {0} não é submetido
Sales Order {0} is not valid,Ordem de Vendas {0} não é válido
Sales Order {0} is stopped,Ordem de Vendas {0} está parado
Sales Partner,Parceiro de vendas
Sales Partner Name,Vendas Nome do parceiro
Sales Partner Target,Vendas Alvo Parceiro
Sales Partners Commission,Vendas Partners Comissão
Sales Person,Vendas Pessoa
Sales Person Name,Vendas Nome Pessoa
Sales Person Target Variance Item Group-Wise,Vendas Pessoa Alvo Variance item Group-wise
Sales Person Targets,Metas de vendas Pessoa
Sales Person-wise Transaction Summary,Resumo da transação Pessoa-wise vendas
Sales Register,Vendas Registrar
Sales Return,Vendas Retorno
Sales Returned,Sales Terugkerende
Sales Taxes and Charges,Vendas Impostos e Taxas
Sales Taxes and Charges Master,Vendas Impostos e Encargos mestre
Sales Team,Equipe de Vendas
Sales Team Details,Vendas Team Detalhes
Sales Team1,Vendas team1
Sales and Purchase,Vendas e Compras
Sales campaigns.,Campanhas de vendas .
Salutation,Saudação
Sample Size,Tamanho da amostra
Sanctioned Amount,Quantidade sancionada
Saturday,Sábado
Schedule,Programar
Schedule Date,tijdschema
Schedule Details,Detalhes da Agenda
Scheduled,Programado
Scheduled Date,Data prevista
Scheduled to send to {0},Programado para enviar para {0}
Scheduled to send to {0} recipients,Programado para enviar para {0} destinatários
Scheduler Failed Events,Eventos Scheduler Falha
School/University,Escola / Universidade
Score (0-5),Pontuação (0-5)
Score Earned,Pontuação Agregado
Score must be less than or equal to 5,Score moet lager dan of gelijk aan 5 zijn
Scrap %,Sucata%
Seasonality for setting budgets.,Sazonalidade para definir orçamentos.
Secretary,secretário
Secured Loans,Empréstimos garantidos
Securities & Commodity Exchanges,Valores Mobiliários e Bolsas de Mercadorias
Securities and Deposits,Títulos e depósitos
"See ""Rate Of Materials Based On"" in Costing Section",Consulte &quot;taxa de materiais baseados em&quot; no Custeio Seção
"Select ""Yes"" for sub - contracting items",Selecione &quot;Sim&quot; para a sub - itens contratantes
"Select ""Yes"" if this item is used for some internal purpose in your company.",Selecione &quot;Sim&quot; se este item é usado para alguma finalidade interna na sua empresa.
"Select ""Yes"" if this item represents some work like training, designing, consulting etc.","Selecione &quot;Sim&quot; se esse item representa algum trabalho como treinamento, design, consultoria etc"
"Select ""Yes"" if you are maintaining stock of this item in your Inventory.",Selecione &quot;Sim&quot; se você está mantendo estoque deste item no seu inventário.
"Select ""Yes"" if you supply raw materials to your supplier to manufacture this item.",Selecione &quot;Sim&quot; se você fornecer matérias-primas para o seu fornecedor para fabricar este item.
Select Brand...,Selecione Marca ...
Select Budget Distribution to unevenly distribute targets across months.,Selecione distribuição do orçamento para distribuir desigualmente alvos em todo mês.
"Select Budget Distribution, if you want to track based on seasonality.","Selecione distribuição do orçamento, se você quiser acompanhar baseado em sazonalidade."
Select Company...,Selecione Empresa ...
Select DocType,Selecione DocType
Select Fiscal Year...,Selecione o ano fiscal ...
Select Items,Selecione itens
Select Project...,Selecione Project ...
Select Purchase Receipts,Selecteer Aankoopfacturen
Select Sales Orders,Selecione Pedidos de Vendas
Select Sales Orders from which you want to create Production Orders.,Selecione Ordens de venda a partir do qual você deseja criar ordens de produção.
Select Time Logs and Submit to create a new Sales Invoice.,Selecione Time Logs e enviar para criar uma nova factura de venda.
Select Transaction,Selecione Transação
Select Warehouse...,Selecione Armazém ...
Select Your Language,Selecione seu idioma
Select account head of the bank where cheque was deposited.,Selecione cabeça conta do banco onde cheque foi depositado.
Select company name first.,Selecione o nome da empresa em primeiro lugar.
Select template from which you want to get the Goals,Selecione o modelo a partir do qual você deseja obter as Metas
Select the Employee for whom you are creating the Appraisal.,Selecione o funcionário para quem você está criando a Avaliação.
Select the period when the invoice will be generated automatically,Selecione o período em que a factura será gerado automaticamente
Select the relevant company name if you have multiple companies,"Selecione o nome da empresa em questão, se você tem várias empresas"
Select the relevant company name if you have multiple companies.,"Selecione o nome da empresa em questão, se você tem várias empresas."
Select who you want to send this newsletter to,Selecione para quem você deseja enviar esta newsletter para
Select your home country and check the timezone and currency.,Selecteer uw land en controleer de tijdzone en valuta .
"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Selecionando &quot;Sim&quot; vai permitir que este item deve aparecer na Ordem de Compra, Recibo de Compra."
"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","Selecionando &quot;Sim&quot; vai permitir que este item para figurar na Ordem de Vendas, Nota de Entrega"
"Selecting ""Yes"" will allow you to create Bill of Material showing raw material and operational costs incurred to manufacture this item.",Selecionando &quot;Sim&quot; permitirá a você criar Bill of Material mostrando matérias-primas e os custos operacionais incorridos para fabricar este item.
"Selecting ""Yes"" will allow you to make a Production Order for this item.",Selecionando &quot;Sim&quot; vai permitir que você faça uma ordem de produção para este item.
"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.",Selecionando &quot;Sim&quot; vai dar uma identidade única para cada entidade deste item que pode ser visto no mestre Número de ordem.
Selling,Vendendo
Selling Settings,Vendendo Configurações
"Selling must be checked, if Applicable For is selected as {0}","Venda deve ser verificada, se for caso disso for selecionado como {0}"
Send,Enviar
Send Autoreply,Enviar Autoreply
Send Email,Enviar E-mail
Send From,Enviar de
Send Notifications To,Enviar notificações para
Send Now,Nu verzenden
Send SMS,Envie SMS
Send To,Enviar para
Send To Type,Enviar para Digite
Send mass SMS to your contacts,Enviar SMS em massa para seus contatos
Send to this list,Enviar para esta lista
Sender Name,Nome do remetente
Sent On,Enviado em
Separate production order will be created for each finished good item.,Ordem de produção separado será criado para cada item acabado.
Serial No,N º de Série
Serial No / Batch,Serienummer / Batch
Serial No Details,Serial Detalhes Nenhum
Serial No Service Contract Expiry,N º de Série Vencimento Contrato de Serviço
Serial No Status,No Estado de série
Serial No Warranty Expiry,Caducidade Não Serial Garantia
Serial No is mandatory for Item {0},Não Serial é obrigatória para item {0}
Serial No {0} created,Serial Não {0} criado
Serial No {0} does not belong to Delivery Note {1},Serial Não {0} não pertence a entrega Nota {1}
Serial No {0} does not belong to Item {1},Serial Não {0} não pertence ao item {1}
Serial No {0} does not belong to Warehouse {1},Serial Não {0} não pertence ao Armazém {1}
Serial No {0} does not exist,Serial Não {0} não existe
Serial No {0} has already been received,Serial Não {0} já foi recebido
Serial No {0} is under maintenance contract upto {1},Serial Não {0} está sob contrato de manutenção até {1}
Serial No {0} is under warranty upto {1},Serial Não {0} está na garantia até {1}
Serial No {0} not in stock,Serial Não {0} não em estoque
Serial No {0} quantity {1} cannot be a fraction,Serial Não {0} {1} quantidade não pode ser uma fração
Serial No {0} status must be 'Available' to Deliver,Serial No {0} Estado deve ser ' Disponível ' para entregar
Serial Nos Required for Serialized Item {0},Serial Nos Obrigatório para Serialized item {0}
Serial Number Series,Serienummer Series
Serial number {0} entered more than once,Número de série {0} entrou mais de uma vez
"Serialized Item {0} cannot be updated \
					using Stock Reconciliation","Serialized item {0} não pode ser atualizado \
 usando Banco de Reconciliação"
Series,serie
Series List for this Transaction,Lista de séries para esta transação
Series Updated,Série Atualizado
Series Updated Successfully,Série atualizado com sucesso
Series is mandatory,Série é obrigatório
Series {0} already used in {1},Série {0} já usado em {1}
Service,serviço
Service Address,Serviço Endereço
Service Tax,Imposto sobre Serviços
Services,Serviços
Set,conjunto
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Definir valores padrão , como Company, de moeda, Atual Exercício , etc"
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,"Definir item Group-wise orçamentos sobre este território. Você também pode incluir sazonalidade, definindo a distribuição."
Set Status as Available,Definir status como Disponível
Set as Default,Instellen als standaard
Set as Lost,Instellen als Lost
Set prefix for numbering series on your transactions,Definir prefixo para numeração de série em suas transações
Set targets Item Group-wise for this Sales Person.,Estabelecer metas item Group-wise para este Vendas Pessoa.
Setting Account Type helps in selecting this Account in transactions.,Tipo de conta Definir ajuda na seleção desta conta em transações.
Setting this Address Template as default as there is no other default,"A definição desse modelo de endereço como padrão, pois não há outro padrão"
Setting up...,Het opzetten ...
Settings,Configurações
Settings for HR Module,Configurações para o Módulo HR
"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""","Definições para extrair os candidatos a emprego a partir de um &quot;jobs@example.com&quot; caixa de correio, por exemplo"
Setup,Instalação
Setup Already Complete!!,Setup al voltooid !
Setup Complete,Instalação concluída
Setup SMS gateway settings,Configurações de gateway SMS Setup
Setup Series,Série de configuração
Setup Wizard,Assistente de Configuração
Setup incoming server for jobs email id. (e.g. jobs@example.com),Configuração do servidor de entrada para os trabalhos de identificação do email . ( por exemplo jobs@example.com )
Setup incoming server for sales email id. (e.g. sales@example.com),Configuração do servidor de entrada de e-mail id vendas. ( por exemplo sales@example.com )
Setup incoming server for support email id. (e.g. support@example.com),Configuração do servidor de entrada para suporte e-mail id . ( por exemplo support@example.com )
Share,Ação
Share With,Compartilhar
Shareholders Funds,CAPITAL PRÓPRIO
Shipments to customers.,Os embarques para os clientes.
Shipping,Expedição
Shipping Account,Conta de Envio
Shipping Address,Endereço para envio
Shipping Amount,Valor do transporte
Shipping Rule,Regra de envio
Shipping Rule Condition,Regra Condições de envio
Shipping Rule Conditions,Regra Condições de envio
Shipping Rule Label,Regra envio Rótulo
Shop,Loja
Shopping Cart,Carrinho de Compras
Short biography for website and other publications.,Breve biografia para o site e outras publicações.
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Show &quot;Em Stock&quot; ou &quot;não em estoque&quot;, baseado em stock disponível neste armazém."
"Show / Hide features like Serial Nos, POS etc.","Mostrar / Ocultar recursos como os números de ordem , POS , etc"
Show In Website,Mostrar No Site
Show a slideshow at the top of the page,Ver uma apresentação de slides no topo da página
Show in Website,Show em site
Show rows with zero values,Mostrar as linhas com valores zero
Show this slideshow at the top of the page,Mostrar esta slideshow no topo da página
Sick Leave,doente Deixar
Signature,Assinatura
Signature to be appended at the end of every email,Assinatura para ser anexado no final de cada e-mail
Single,Único
Single unit of an Item.,Única unidade de um item.
Sit tight while your system is being setup. This may take a few moments.,Hou je vast terwijl uw systeem wordt setup. Dit kan even duren .
Slideshow,Slideshow
Soap & Detergent,Soap & detergente
Software,Software
Software Developer,Software Developer
"Sorry, Serial Nos cannot be merged","Sorry , kan de serienummers niet worden samengevoegd"
"Sorry, companies cannot be merged","Sorry , bedrijven kunnen niet worden samengevoegd"
Source,Fonte
Source File,Source File
Source Warehouse,Armazém fonte
Source and target warehouse cannot be same for row {0},Fonte e armazém de destino não pode ser o mesmo para a linha {0}
Source of Funds (Liabilities),Fonte de Recursos ( Passivo)
Source warehouse is mandatory for row {0},Origem do Warehouse é obrigatória para a linha {0}
Spartan,Espartano
"Special Characters except ""-"" and ""/"" not allowed in naming series","Caracteres especiais , exceto "" - "" e ""/ "" não é permitido em série nomeando"
Specification Details,Detalhes especificação
Specifications,especificações
"Specify a list of Territories, for which, this Price List is valid","Especificar uma lista de territórios, para a qual, esta lista de preços é válida"
"Specify a list of Territories, for which, this Shipping Rule is valid","Especificar uma lista de territórios, para a qual, essa regra de envio é válida"
"Specify a list of Territories, for which, this Taxes Master is valid","Especificar uma lista de territórios, para a qual, este Impostos Master é válido"
"Specify the operations, operating cost and give a unique Operation no to your operations.","Geef de operaties , operationele kosten en geven een unieke operatie niet aan uw activiteiten ."
Split Delivery Note into packages.,Nota de Entrega dividir em pacotes.
Sports,esportes
Sr,Sr
Standard,Padrão
Standard Buying,Compra padrão
Standard Reports,Relatórios padrão
Standard Selling,venda padrão
Standard contract terms for Sales or Purchase.,Termos do contrato padrão para vendas ou compra.
Start,begin
Start Date,Data de Início
Start date of current invoice's period,A data de início do período de fatura atual
Start date should be less than end date for Item {0},Data de início deve ser inferior a data final para o item {0}
State,Estado
Statement of Account,Extrato de conta
Static Parameters,Parâmetros estáticos
Status,Estado
Status must be one of {0},Estado deve ser um dos {0}
Status of {0} {1} is now {2},Estado de {0} {1} é agora {2}
Status updated to {0},Atualizou estado para {0}
Statutory info and other general information about your Supplier,Informações legais e outras informações gerais sobre o seu Fornecedor
Stay Updated,Fique Atualizado
Stock,Estoque
Stock Adjustment,Banco de Ajuste
Stock Adjustment Account,Banco de Acerto de Contas
Stock Ageing,Envelhecimento estoque
Stock Analytics,Analytics ações
Stock Assets,Ativos estoque
Stock Balance,Balanço de estoque
Stock Entries already created for Production Order ,
Stock Entry,Entrada estoque
Stock Entry Detail,Detalhe Entrada estoque
Stock Expenses,despesas Stock
Stock Frozen Upto,Fotografia congelada Upto
Stock Ledger,Estoque Ledger
Stock Ledger Entry,Entrada da Razão
Stock Ledger entries balances updated,Banco de Ledger Entradas saldos atualizados
Stock Level,Nível de estoque
Stock Liabilities,Passivo estoque
Stock Projected Qty,Verwachte voorraad Aantal
Stock Queue (FIFO),Da fila (FIFO)
Stock Received But Not Billed,"Banco recebido, mas não faturados"
Stock Reconcilation Data,Stock Verzoening gegevens
Stock Reconcilation Template,Stock Verzoening Template
Stock Reconciliation,Da Reconciliação
"Stock Reconciliation can be used to update the stock on a particular date, usually as per physical inventory.","Banco de reconciliação pode ser usado para atualizar o estoque em uma data específica , geralmente de acordo com o inventário físico ."
Stock Settings,Configurações da
Stock UOM,Estoque UOM
Stock UOM Replace Utility,Utilitário da Substituir UOM
Stock UOM updatd for Item {0},Updatd Banco UOM por item {0}
Stock Uom,Estoque Uom
Stock Value,Valor da
Stock Value Difference,Banco de Valor Diferença
Stock balances updated,Banco saldos atualizados
Stock cannot be updated against Delivery Note {0},Banco não pode ser atualizado contra entrega Nota {0}
Stock entries exist against warehouse {0} cannot re-assign or modify 'Master Name',As entradas em existências existir contra armazém {0} não pode voltar a atribuir ou modificar 'Master Name'
Stock transactions before {0} are frozen,Transações com ações antes {0} são congelados
Stop,Pare
Stop Birthday Reminders,Stop verjaardagsherinneringen
Stop Material Request,Stop Materiaal Request
Stop users from making Leave Applications on following days.,Pare de usuários de fazer aplicações deixam nos dias seguintes.
Stop!,Stop!
Stopped,Parado
Stopped order cannot be cancelled. Unstop to cancel.,Parado ordem não pode ser cancelado. Desentupir para cancelar.
Stores,Lojas
Stub,toco
Sub Assemblies,Sub Assembléias
"Sub-currency. For e.g. ""Cent""",Sub-moeda. Para &quot;Cent&quot; por exemplo
Subcontract,Subcontratar
Subject,Assunto
Submit Salary Slip,Enviar folha de salário
Submit all salary slips for the above selected criteria,Submeter todas as folhas de salários para os critérios acima selecionados
Submit this Production Order for further processing.,Submit deze productieorder voor verdere verwerking .
Submitted,Enviado
Subsidiary,Subsidiário
Successful: ,Bem-sucedido:
Successfully Reconciled,Reconciliados com sucesso
Suggestions,Sugestões
Sunday,Domingo
Supplier,Fornecedor
Supplier (Payable) Account,Fornecedor (pago) Conta
Supplier (vendor) name as entered in supplier master,"Nome do fornecedor (fornecedor), inscritos no cadastro de fornecedores"
Supplier > Supplier Type,Fornecedor> Fornecedor Tipo
Supplier Account Head,Fornecedor Cabeça Conta
Supplier Address,Endereço do Fornecedor
Supplier Addresses and Contacts,Leverancier Adressen en Contacten
Supplier Details,Detalhes fornecedor
Supplier Intro,Intro fornecedor
Supplier Invoice Date,Fornecedor Data Fatura
Supplier Invoice No,Fornecedor factura n
Supplier Name,Nome do Fornecedor
Supplier Naming By,Fornecedor de nomeação
Supplier Part Number,Número da peça de fornecedor
Supplier Quotation,Cotação fornecedor
Supplier Quotation Item,Cotação do item fornecedor
Supplier Reference,Referência fornecedor
Supplier Type,Tipo de fornecedor
Supplier Type / Supplier,Leverancier Type / leverancier
Supplier Type master.,Fornecedor Tipo de mestre.
Supplier Warehouse,Armazém fornecedor
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Fornecedor Armazém obrigatório para sub- contratados Recibo de compra
Supplier database.,Banco de dados de fornecedores.
Supplier master.,Fornecedor mestre.
Supplier warehouse where you have issued raw materials for sub - contracting,Armazém do fornecedor onde você emitiu matérias-primas para a sub - contratação
Supplier-Wise Sales Analytics,Leveranciers Wise Sales Analytics
Support,Apoiar
Support Analtyics,ondersteuning Analtyics
Support Analytics,Analytics apoio
Support Email,Suporte E-mail
Support Email Settings,Ondersteuning E-mailinstellingen
Support Password,Senha de
Support Ticket,Ticket de Suporte
Support queries from customers.,Suporte a consultas de clientes.
Symbol,Símbolo
Sync Support Mails,Sincronizar e-mails de apoio
Sync with Dropbox,Sincronizar com o Dropbox
Sync with Google Drive,Sincronia com o Google Drive
System,Sistema
System Settings,Configurações do sistema
"System User (login) ID. If set, it will become default for all HR forms.","Sistema de identificação do usuário (login). Se for definido, ele vai se tornar padrão para todas as formas de RH."
TDS (Advertisement),TDS (Anúncio)
TDS (Commission),TDS (Comissão)
TDS (Contractor),TDS (Contratado)
TDS (Interest),TDS (interesse)
TDS (Rent),TDS (Rent)
TDS (Salary),TDS (Salário)
Target  Amount,Valor Alvo
Target Detail,Detalhe alvo
Target Details,Detalhes alvo
Target Details1,Alvo Details1
Target Distribution,Distribuição alvo
Target On,Target On
Target Qty,Qtde alvo
Target Warehouse,Armazém alvo
Target warehouse in row {0} must be same as Production Order,Warehouse de destino na linha {0} deve ser o mesmo que ordem de produção
Target warehouse is mandatory for row {0},Destino do Warehouse é obrigatória para a linha {0}
Task,Tarefa
Task Details,Detalhes da tarefa
Tasks,taken
Tax,Imposto
Tax Amount After Discount Amount,Total de Impostos Depois Montante do Desconto
Tax Assets,Ativo Fiscal
Tax Category can not be 'Valuation' or 'Valuation and Total' as all items are non-stock items,Fiscale categorie kan ' Valuation ' of ' Valuation en Total ' als alle items zijn niet-voorraadartikelen niet
Tax Rate,Taxa de Imposto
Tax and other salary deductions.,Fiscais e deduções salariais outros.
"Tax detail table fetched from item master as a string and stored in this field.
Used for Taxes and Charges","Tabela de detalhes Imposto obtido a partir de mestre como uma string e armazenada neste campo.
 Usado para Impostos e Taxas"
Tax template for buying transactions.,Modelo de impostos para a compra de transações.
Tax template for selling transactions.,Modelo imposto pela venda de transações.
Taxable,Tributável
Taxes,Impostos
Taxes and Charges,Impostos e Encargos
Taxes and Charges Added,Impostos e Encargos Adicionado
Taxes and Charges Added (Company Currency),Impostos e taxas Adicionado (Moeda Company)
Taxes and Charges Calculation,Impostos e Encargos de Cálculo
Taxes and Charges Deducted,Impostos e Encargos Deduzidos
Taxes and Charges Deducted (Company Currency),Impostos e taxas Deduzido (Moeda Company)
Taxes and Charges Total,Impostos e encargos totais
Taxes and Charges Total (Company Currency),Impostos e Encargos Total (moeda da empresa)
Technology,tecnologia
Telecommunications,Telecomunicações
Telephone Expenses,Despesas de telefone
Television,televisão
Template,Modelo
Template for performance appraisals.,Modelo para avaliação de desempenho .
Template of terms or contract.,Modelo de termos ou contratos.
Temporary Accounts (Assets),Contas Transitórias (Ativo )
Temporary Accounts (Liabilities),Contas temporárias ( Passivo)
Temporary Assets,Ativos temporários
Temporary Liabilities,Passivo temporárias
Term Details,Detalhes prazo
Terms,Voorwaarden
Terms and Conditions,Termos e Condições
Terms and Conditions Content,Termos e Condições conteúdo
Terms and Conditions Details,Termos e Condições Detalhes
Terms and Conditions Template,Termos e Condições de modelo
Terms and Conditions1,Termos e Conditions1
Terretory,terretory
Territory,Território
Territory / Customer,Grondgebied / Klantenservice
Territory Manager,Territory Manager
Territory Name,Nome território
Territory Target Variance Item Group-Wise,Território Alvo Variance item Group-wise
Territory Targets,Metas território
Test,Teste
Test Email Id,Email Id teste
Test the Newsletter,Teste a Newsletter
The BOM which will be replaced,O BOM que será substituído
The First User: You,De eerste gebruiker : U
"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""",O item que representa o pacote. Este item deve ter &quot;é o item da&quot; como &quot;Não&quot; e &quot;é o item de vendas&quot; como &quot;Sim&quot;
The Organization,de Organisatie
"The account head under Liability, in which Profit/Loss will be booked","De rekening hoofd onder Aansprakelijkheid , waarin Winst / verlies zal worden geboekt"
"The date on which next invoice will be generated. It is generated on submit.
","A data em que próxima fatura será gerada. Ele é gerado em enviar.
"
The date on which recurring invoice will be stop,A data em que fatura recorrente será parar
"The day of the month on which auto invoice will be generated e.g. 05, 28 etc ","O dia do mês em que factura automática será gerada, por exemplo 05, 28 etc"
The day(s) on which you are applying for leave are holiday. You need not apply for leave.,No dia (s) em que você está se candidatando para a licença estão de férias. Você não precisa solicitar uma licença .
The first Leave Approver in the list will be set as the default Leave Approver,O primeiro Deixe Approver na lista vai ser definido como o Leave Approver padrão
The first user will become the System Manager (you can change that later).,De eerste gebruiker zal de System Manager te worden (u kunt dat later wijzigen ) .
The gross weight of the package. Usually net weight + packaging material weight. (for print),O peso bruto do pacote. Normalmente peso líquido + peso do material de embalagem. (Para impressão)
The name of your company for which you are setting up this system.,De naam van uw bedrijf waar u het opzetten van dit systeem .
The net weight of this package. (calculated automatically as sum of net weight of items),O peso líquido do pacote. (Calculado automaticamente como soma de peso líquido dos itens)
The new BOM after replacement,O BOM novo após substituição
The rate at which Bill Currency is converted into company's base currency,A taxa na qual a moeda que Bill é convertida em moeda empresa de base
The unique id for tracking all recurring invoices. It is generated on submit.,A ID exclusiva para acompanhar todas as facturas recorrentes. Ele é gerado em enviar.
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Então Preços Regras são filtradas com base no Cliente, Grupo de Clientes, Território, fornecedor, fornecedor Tipo, Campanha, Parceiro de vendas etc"
There are more holidays than working days this month.,Há mais feriados do que dias úteis do mês.
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Só pode haver uma regra de envio Condição com 0 ou valor em branco para "" To Valor """
There is not enough leave balance for Leave Type {0},Não há o suficiente equilíbrio pela licença Tipo {0}
There is nothing to edit.,Er is niets om te bewerken .
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.,Er is een fout opgetreden . Een mogelijke reden zou kunnen zijn dat je niet hebt opgeslagen het formulier . Neem dan contact support@erpnext.com als het probleem aanhoudt .
There were errors.,Er waren fouten .
This Currency is disabled. Enable to use in transactions,Deze valuta is uitgeschakeld . In staat om te gebruiken in transacties
This Leave Application is pending approval. Only the Leave Apporver can update status.,Deze verlofaanvraag is in afwachting van goedkeuring . Alleen de Leave Apporver kan status bijwerken .
This Time Log Batch has been billed.,Este lote Log O tempo tem sido anunciado.
This Time Log Batch has been cancelled.,Este lote Log Tempo foi cancelada.
This Time Log conflicts with {0},Este Log Tempo em conflito com {0}
This format is used if country specific format is not found,Este formato é usado se o formato específico país não é encontrado
This is a root account and cannot be edited.,Dit is een root account en kan niet worden bewerkt .
This is a root customer group and cannot be edited.,Dit is een wortel klantgroep en kan niet worden bewerkt .
This is a root item group and cannot be edited.,Dit is een hoofditem groep en kan niet worden bewerkt .
This is a root sales person and cannot be edited.,Dit is een wortel verkoper en kan niet worden bewerkt .
This is a root territory and cannot be edited.,Dit is een wortel grondgebied en kan niet worden bewerkt .
This is an example website auto-generated from ERPNext,Este é um exemplo website auto- gerada a partir ERPNext
This is the number of the last created transaction with this prefix,Este é o número da última transacção criados com este prefixo
This will be used for setting rule in HR module,Isso será usado para fixação de regras no módulo HR
Thread HTML,Tópico HTML
Thursday,Quinta-feira
Time Log,Tempo Log
Time Log Batch,Tempo Batch Log
Time Log Batch Detail,Tempo Log Detail Batch
Time Log Batch Details,Tempo de registro de detalhes de lote
Time Log Batch {0} must be 'Submitted',Tempo Log Batch {0} deve ser ' enviado '
Time Log Status must be Submitted.,Tempo Log Estado devem ser apresentadas.
Time Log for tasks.,Tempo de registro para as tarefas.
Time Log is not billable,Tempo Log não é cobrável
Time Log {0} must be 'Submitted',Tempo Log {0} deve ser ' enviado '
Time Zone,Fuso horário
Time Zones,Time Zones
Time and Budget,Tempo e Orçamento
Time at which items were delivered from warehouse,Hora em que itens foram entregues a partir de armazém
Time at which materials were received,Momento em que os materiais foram recebidos
Title,Título
Titles for print templates e.g. Proforma Invoice.,"Títulos para modelos de impressão , por exemplo, Proforma Invoice ."
To,Para
To Currency,A Moeda
To Date,Conhecer
To Date should be same as From Date for Half Day leave,Om datum moet dezelfde zijn als Van Datum voor halve dag verlof zijn
To Date should be within the Fiscal Year. Assuming To Date = {0},Para data deve ser dentro do exercício social. Assumindo Para Date = {0}
To Discuss,Para Discutir
To Do List,Para fazer a lista
To Package No.,Para empacotar Não.
To Produce,Produce
To Time,Para Tempo
To Value,Ao Valor
To Warehouse,Para Armazém
"To add child nodes, explore tree and click on the node under which you want to add more nodes.","Om onderliggende nodes te voegen , te verkennen boom en klik op het knooppunt waar u wilt meer knooppunten toe te voegen ."
"To assign this issue, use the ""Assign"" button in the sidebar.","Para atribuir esse problema, use o botão &quot;Atribuir&quot; na barra lateral."
To create a Bank Account,Para criar uma conta bancária
To create a Tax Account,Para criar uma conta de impostos
"To create an Account Head under a different company, select the company and save customer.","Para criar uma conta, sob Cabeça uma empresa diferente, selecione a empresa e salvar cliente."
To date cannot be before from date,Tot op heden kan niet eerder worden vanaf datum
To enable <b>Point of Sale</b> features,Para habilitar o <b>Ponto de Venda</b> características
To enable <b>Point of Sale</b> view,Om <b> Point of Sale < / b > view staat
To get Item Group in details table,Para obter Grupo item na tabela de detalhes
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Para incluir impostos na linha {0} na taxa de Item, os impostos em linhas {1} também deve ser incluída"
"To merge, following properties must be same for both items","Te fuseren , moeten volgende eigenschappen hetzelfde zijn voor beide posten"
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Para não aplicar regra de preços em uma transação particular, todas as regras de preços aplicáveis devem ser desativados."
"To set this Fiscal Year as Default, click on 'Set as Default'","Om dit fiscale jaar ingesteld als standaard , klik op ' Als standaard instellen '"
To track any installation or commissioning related work after sales,Para rastrear qualquer instalação ou comissionamento trabalho relacionado após vendas
"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 acompanhar marca nos seguintes documentos Nota de Entrega , Oportunidade, Solicitação Material, Item, Ordem de Compra, Compra Vale , Comprador recibo , cotação, nota fiscal de venda , Vendas BOM, Pedido de Vendas , Serial Não"
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 acompanhar o item em documentos de vendas e de compras com base em seus números de ordem. Este é também pode ser usada para rastrear detalhes sobre a garantia do produto.
To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,Para controlar os itens de vendas e documentos de compra com lotes n º s <br> <b>Indústria preferido: etc Chemicals</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 rastrear itens usando código de barras. Você será capaz de inserir itens na nota de entrega e nota fiscal de venda pela digitalização de código de barras do item.
Too many columns. Export the report and print it using a spreadsheet application.,Muitas colunas. Exportar o relatório e imprimi-lo usando um aplicativo de planilha.
Tools,Ferramentas
Total,Total
Total ({0}),Total ({0})
Total Advance,Antecipação total
Total Amount,Valor Total
Total Amount To Pay,Valor total a pagar
Total Amount in Words,Valor Total em Palavras
Total Billing This Year: ,Faturamento total deste ano:
Total Characters,Total de Personagens
Total Claimed Amount,Montante reclamado total
Total Commission,Total Comissão
Total Cost,Custo 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 deve ser igual ao total de crédito.
Total Deduction,Dedução Total
Total Earning,Ganhar total
Total Experience,Experiência total
Total Hours,Total de Horas
Total Hours (Expected),Total de Horas (esperado)
Total Invoiced Amount,Valor total faturado
Total Leave Days,Total de dias de férias
Total Leaves Allocated,Folhas total atribuído
Total Message(s),Mensagem total ( s )
Total Operating Cost,Custo Operacional Total
Total Points,Total de pontos
Total Raw Material Cost,Custo total das matérias-primas
Total Sanctioned Amount,Valor total Sancionada
Total Score (Out of 5),Pontuação total (em 5)
Total Tax (Company Currency),Imposto Total (moeda da empresa)
Total Taxes and Charges,Total Impostos e Encargos
Total Taxes and Charges (Company Currency),Total de Impostos e Taxas (moeda da empresa)
Total allocated percentage for sales team should be 100,Porcentagem total alocado para a equipe de vendas deve ser de 100
Total amount of invoices received from suppliers during the digest period,O valor total das faturas recebidas de fornecedores durante o período de digestão
Total amount of invoices sent to the customer during the digest period,O valor total das faturas enviadas para o cliente durante o período de digestão
Total cannot be zero,Total não pode ser zero
Total in words,Total em palavras
Total points for all goals should be 100. It is {0},Total de pontos para todos os objetivos devem ser 100. Ele é {0}
Total valuation for manufactured or repacked item(s) can not be less than total valuation of raw materials,Valor total para o item (s) fabricados ou reembalados não pode ser menor do que valor total das matérias-primas
Total weightage assigned should be 100%. It is {0},Weightage total atribuído deve ser de 100 %. É {0}
Totals,Totais
Track Leads by Industry Type.,Trilha leva por setor Type.
Track this Delivery Note against any Project,Acompanhar este Nota de Entrega contra qualquer projeto
Track this Sales Order against any Project,Acompanhar este Ordem de vendas contra qualquer projeto
Transaction,Transação
Transaction Date,Data Transação
Transaction not allowed against stopped Production Order {0},Transação não é permitido contra parou Ordem de produção {0}
Transfer,Transferir
Transfer Material,Transfer Materiaal
Transfer Raw Materials,Transfer Grondstoffen
Transferred Qty,overgedragen hoeveelheid
Transportation,transporte
Transporter Info,Informações Transporter
Transporter Name,Nome Transporter
Transporter lorry number,Número caminhão transportador
Travel,viagem
Travel Expenses,Despesas de viagem
Tree Type,boom Type
Tree of Item Groups.,Árvore de Grupos de itens .
Tree of finanial Cost Centers.,Árvore de Centros de custo finanial .
Tree of finanial accounts.,Árvore de contas finanial .
Trial Balance,Balancete
Tuesday,Terça-feira
Type,Tipo
Type of document to rename.,Tipo de documento a ser renomeado.
"Type of leaves like casual, sick etc.","Tipo de folhas como etc, casual doente"
Types of Expense Claim.,Tipos de reembolso de despesas.
Types of activities for Time Sheets,Tipos de atividades para folhas de tempo
"Types of employment (permanent, contract, intern etc.).","Tipos de emprego ( permanente , contrato, etc estagiário ) ."
UOM Conversion Detail,UOM Detalhe Conversão
UOM Conversion Details,Conversão Detalhes UOM
UOM Conversion Factor,UOM Fator de Conversão
UOM Conversion factor is required in row {0},UOM fator de conversão é necessária na linha {0}
UOM Name,Nome UOM
UOM coversion factor required for UOM: {0} in Item: {1},Fator coversion UOM necessário para UOM: {0} no Item: {1}
Under AMC,Sob AMC
Under Graduate,Sob graduação
Under Warranty,Sob Garantia
Unit,unidade
Unit of Measure,Unidade de Medida
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Unidade de Medida {0} foi inserido mais de uma vez na Tabela de Conversão de Fator
"Unit of measurement of this item (e.g. Kg, Unit, No, Pair).","Unidade de medida do item (por exemplo kg Unidade, não, par)."
Units/Hour,Unidades / hora
Units/Shifts,Unidades / Turnos
Unpaid,Não remunerado
Unreconciled Payment Details,Unreconciled Detalhes do pagamento
Unscheduled,Sem marcação
Unsecured Loans,Empréstimos não garantidos
Unstop,opendraaien
Unstop Material Request,Unstop Materiaal Request
Unstop Purchase Order,Unstop Bestelling
Unsubscribed,Inscrição cancelada
Update,Atualizar
Update Clearance Date,Atualize Data Liquidação
Update Cost,Kosten bijwerken
Update Finished Goods,Afgewerkt update Goederen
Update Landed Cost,Update Landed Cost
Update Series,Atualização Series
Update Series Number,Atualização de Número de Série
Update Stock,Actualização de stock
Update bank payment dates with journals.,Atualização de pagamento bancário com data revistas.
Update clearance date of Journal Entries marked as 'Bank Vouchers',Goedkeuring datum actualisering van Journaalposten gemarkeerd als ' Bank Vouchers '
Updated,Atualizado
Updated Birthday Reminders,Bijgewerkt verjaardagsherinneringen
Upload Attendance,Envie Atendimento
Upload Backups to Dropbox,Carregar Backups para Dropbox
Upload Backups to Google Drive,Carregar Backups para Google Drive
Upload HTML,Carregar HTML
Upload a .csv file with two columns: the old name and the new name. Max 500 rows.,Enviar um arquivo CSV com duas colunas:. O nome antigo eo novo nome. No máximo 500 linhas.
Upload attendance from a .csv file,Carregar atendimento de um arquivo CSV.
Upload stock balance via csv.,Carregar saldo de estoque via csv.
Upload your letter head and logo - you can edit them later.,Upload uw brief hoofd en logo - u kunt ze later bewerken .
Upper Income,Renda superior
Urgent,Urgente
Use Multi-Level BOM,Utilize Multi-Level BOM
Use SSL,Use SSL
Used for Production Plan,Usado para o Plano de Produção
User,Usuário
User ID,ID de usuário
User ID not set for Employee {0},ID do usuário não definido para Employee {0}
User Name,Nome de usuário
User Name or Support Password missing. Please enter and try again.,Nome de usuário ou senha Suporte faltando. Por favor entre e tente novamente.
User Remark,Observação de usuário
User Remark will be added to Auto Remark,Observação usuário será adicionado à observação Auto
User Remarks is mandatory,Usuário Observações é obrigatório
User Specific,Especificas do usuário
User must always select,O usuário deve sempre escolher
User {0} is already assigned to Employee {1},Usuário {0} já está atribuído a Employee {1}
User {0} is disabled,Usuário {0} está desativado
Username,Nome de Utilizador
Users with this role are allowed to create / modify accounting entry before frozen date,Gebruikers met deze rol mogen maken / boekhoudkundige afschrijving vóór bevroren datum wijzigen
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Gebruikers met deze rol mogen bevroren accounts en maak / boekingen tegen bevroren rekeningen wijzigen
Utilities,Utilitários
Utility Expenses,Despesas de Utilidade
Valid For Territories,Válido para os territórios
Valid From,Válido de
Valid Upto,Válido Upto
Valid for Territories,Válido para Territórios
Validate,Validar
Valuation,Avaliação
Valuation Method,Método de Avaliação
Valuation Rate,Taxa de valorização
Valuation Rate required for Item {0},Valorização Taxa exigida para item {0}
Valuation and Total,Avaliação e Total
Value,Valor
Value or Qty,Waarde of Aantal
Vehicle Dispatch Date,Veículo Despacho Data
Vehicle No,No veículo
Venture Capital,venture Capital
Verified By,Verified By
View Ledger,Bekijk Ledger
View Now,Bekijk nu
Visit report for maintenance call.,Relatório de visita para a chamada manutenção.
Voucher #,voucher #
Voucher Detail No,Detalhe folha no
Voucher Detail Number,Número Detalhe voucher
Voucher ID,ID comprovante
Voucher No,Não vale
Voucher Type,Tipo comprovante
Voucher Type and Date,Tipo Vale e Data
Walk In,Walk In
Warehouse,armazém
Warehouse Contact Info,Armazém Informações de Contato
Warehouse Detail,Detalhe Armazém
Warehouse Name,Nome Armazém
Warehouse and Reference,Warehouse and Reference
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,Warehouse não pode ser excluído como existe entrada de material de contabilidade para este armazém.
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Magazijn kan alleen via Stock Entry / Delivery Note / Kwitantie worden veranderd
Warehouse cannot be changed for Serial No.,Magazijn kan niet worden gewijzigd voor Serienummer
Warehouse is mandatory for stock Item {0} in row {1},Armazém é obrigatória para stock o item {0} na linha {1}
Warehouse is missing in Purchase Order,Warehouse ontbreekt in Purchase Order
Warehouse not found in the system,Warehouse não foi encontrado no sistema
Warehouse required for stock Item {0},Armazém necessário para stock o item {0}
Warehouse where you are maintaining stock of rejected items,Armazém onde você está mantendo estoque de itens rejeitados
Warehouse {0} can not be deleted as quantity exists for Item {1},Armazém {0} não pode ser excluído como existe quantidade para item {1}
Warehouse {0} does not belong to company {1},Armazém {0} não pertence à empresa {1}
Warehouse {0} does not exist,Armazém {0} não existe
Warehouse {0}: Company is mandatory,Armazém {0}: Empresa é obrigatório
Warehouse {0}: Parent account {1} does not bolong to the company {2},Armazém {0}: conta Parent {1} não Bolong à empresa {2}
Warehouse-Wise Stock Balance,Warehouse-sábio Stock Balance
Warehouse-wise Item Reorder,Armazém-sábio item Reordenar
Warehouses,Armazéns
Warehouses.,Armazéns .
Warn,Avisar
Warning: Leave application contains following block dates,Atenção: Deixe o aplicativo contém seguintes datas bloco
Warning: Material Requested Qty is less than Minimum Order Qty,Waarschuwing : Materiaal gevraagde Aantal minder dan Minimum afname
Warning: Sales Order {0} already exists against same Purchase Order number,Aviso: Pedido de Vendas {0} já existe contra mesmo número de ordem de compra
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Aviso : O sistema não irá verificar superfaturamento desde montante para item {0} em {1} é zero
Warranty / AMC Details,Garantia / AMC Detalhes
Warranty / AMC Status,Garantia / AMC Estado
Warranty Expiry Date,Data de validade da garantia
Warranty Period (Days),Período de Garantia (Dias)
Warranty Period (in days),Período de Garantia (em dias)
We buy this Item,Nós compramos este item
We sell this Item,Nós vendemos este item
Website,Site
Website Description,Descrição do site
Website Item Group,Grupo Item site
Website Item Groups,Item Grupos site
Website Settings,Configurações do site
Website Warehouse,Armazém site
Wednesday,Quarta-feira
Weekly,Semanal
Weekly Off,Weekly Off
Weight UOM,Peso UOM
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Gewicht wordt vermeld , \ nGelieve noemen "" Gewicht Verpakking "" te"
Weightage,Weightage
Weightage (%),Weightage (%)
Welcome,bem-vindo
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!,"Welkom bij ERPNext . In de komende paar minuten zullen we u helpen opzetten van je ERPNext account. Probeer en vul zo veel mogelijk informatie je hebt , zelfs als het duurt een beetje langer . Het zal u een hoop tijd later besparen . Good Luck !"
Welcome to ERPNext. Please select your language to begin the Setup Wizard.,"Bem-vindo ao ERPNext . Por favor, selecione o idioma para iniciar o Assistente de Configuração."
What does it do?,Wat doet het?
"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.","Quando qualquer uma das operações verificadas estão &quot;Enviado&quot;, um e-mail pop-up aberta automaticamente para enviar um e-mail para o associado &quot;Contato&quot;, em que a transação, com a transação como um anexo. O usuário pode ou não enviar o e-mail."
"When submitted, the system creates difference entries to set the given stock and valuation on this date.","Quando submetidos , o sistema cria entradas de diferença para definir o estoque e valorização dada nesta data ."
Where items are stored.,Onde os itens são armazenados.
Where manufacturing operations are carried out.,Sempre que as operações de fabricação são realizadas.
Widowed,Viúva
Will be calculated automatically when you enter the details,Será calculado automaticamente quando você digitar os detalhes
Will be updated after Sales Invoice is Submitted.,Será atualizado após a factura de venda é submetido.
Will be updated when batched.,Será atualizado quando agrupadas.
Will be updated when billed.,Será atualizado quando faturado.
Wire Transfer,por transferência bancária
With Operations,Com Operações
With Period Closing Entry,Com a entrada do período de encerramento
Work Details,Detalhes da Obra
Work Done,Trabalho feito
Work In Progress,Trabalho em andamento
Work-in-Progress Warehouse,Armazém Work-in-Progress
Work-in-Progress Warehouse is required before Submit,Trabalho em andamento Warehouse é necessário antes de Enviar
Working,Trabalhando
Working Days,Dias de trabalho
Workstation,Estação de trabalho
Workstation Name,Nome da Estação de Trabalho
Write Off Account,Escreva Off Conta
Write Off Amount,Escreva Off Quantidade
Write Off Amount <=,Escreva Off Valor &lt;=
Write Off Based On,Escreva Off Baseado em
Write Off Cost Center,Escreva Off Centro de Custos
Write Off Outstanding Amount,Escreva Off montante em dívida
Write Off Voucher,Escreva voucher
Wrong Template: Unable to find head row.,Template errado: Não é possível encontrar linha cabeça.
Year,Ano
Year Closed,Ano Encerrado
Year End Date,Eind van het jaar Datum
Year Name,Nome Ano
Year Start Date,Data de início do ano
Year of Passing,Ano de Passagem
Yearly,Anual
Yes,Sim
You are not authorized to add or update entries before {0},Você não está autorizado para adicionar ou atualizar entradas antes de {0}
You are not authorized to set Frozen value,U bent niet bevoegd om Frozen waarde in te stellen
You are the Expense Approver for this record. Please Update the 'Status' and Save,U bent de Expense Approver voor dit record . Werk van de 'Status' en opslaan
You are the Leave Approver for this record. Please Update the 'Status' and Save,U bent de Leave Approver voor dit record . Werk van de 'Status' en opslaan
You can enter any date manually,Você pode entrar em qualquer data manualmente
You can enter the minimum quantity of this item to be ordered.,Você pode inserir a quantidade mínima deste item a ser ordenada.
You can not change rate if BOM mentioned agianst any item,U kunt geen koers veranderen als BOM agianst een item genoemd
You can not enter both Delivery Note No and Sales Invoice No. Please enter any one.,Je kunt niet Geen Voer beide Delivery Note en verkoopfactuur Nee Geef iemand.
You can not enter current voucher in 'Against Journal Voucher' column,Você não pode entrar comprovante atual em ' Contra Jornal Vale ' coluna
You can set Default Bank Account in Company master,Você pode definir padrão Conta Bancária no mestre Empresa
You can start by selecting backup frequency and granting access for sync,Você pode começar por selecionar a freqüência de backup e concessão de acesso para sincronização
You can submit this Stock Reconciliation.,U kunt indienen dit Stock Verzoening .
You can update either Quantity or Valuation Rate or both.,U kunt Hoeveelheid of Valuation Rate of beide te werken.
You cannot credit and debit same account at the same time,Você não pode de crédito e débito mesma conta ao mesmo tempo
You have entered duplicate items. Please rectify and try again.,U heeft dubbele items ingevoerd. Aub verwijderen en probeer het opnieuw .
You may need to update: {0},Você pode precisar atualizar : {0}
You must Save the form before proceeding,Você deve salvar o formulário antes de continuar
Your Customer's TAX registration numbers (if applicable) or any general information,Seu cliente FISCAIS números de inscrição (se aplicável) ou qualquer outra informação geral
Your Customers,uw klanten
Your Login Id,Seu ID de login
Your Products or Services,Uw producten of diensten
Your Suppliers,uw Leveranciers
Your email address,Seu endereço de email
Your financial year begins on,O ano financeiro tem início a
Your financial year ends on,Seu exercício termina em
Your sales person who will contact the customer in future,Sua pessoa de vendas que entrará em contato com o cliente no futuro
Your sales person will get a reminder on this date to contact the customer,Seu vendedor receberá um lembrete sobre esta data para contato com o cliente
Your setup is complete. Refreshing...,Uw installatie is voltooid . Verfrissend ...
Your support email id - must be a valid email - this is where your emails will come!,O seu ID e-mail de apoio - deve ser um email válido - este é o lugar onde seus e-mails virão!
[Error],[Erro]
[Select],[ Select]
`Freeze Stocks Older Than` should be smaller than %d days.,` Stocks Congelar Mais velho do que ` deve ser menor que %d dias .
and,e
are not allowed.,zijn niet toegestaan ​​.
assigned by,atribuído pela
cannot be greater than 100,não pode ser maior do que 100
"e.g. ""Build tools for builders""","por exemplo ""Construa ferramentas para os construtores """
"e.g. ""MC""","por exemplo "" MC """
"e.g. ""My Company LLC""","por exemplo "" My Company LLC"""
e.g. 5,por exemplo 5
"e.g. Bank, Cash, Credit Card","por exemplo Banco, Dinheiro, cartão de crédito"
"e.g. Kg, Unit, Nos, m","kg por exemplo, Unidade, n, m"
e.g. VAT,por exemplo IVA
eg. Cheque Number,por exemplo. Número de cheques
example: Next Day Shipping,exemplo: Next Day envio
lft,lft
old_parent,old_parent
rgt,rgt
subject,assunto
to,para
website page link,link da página site
{0} '{1}' not in Fiscal Year {2},{0} '{1}' não no ano fiscal de {2}
{0} Credit limit {0} crossed,{0} Limite de crédito {0} atravessou
{0} Serial Numbers required for Item {0}. Only {0} provided.,{0} números de série necessários para item {0}. Apenas {0} fornecida .
{0} budget for Account {1} against Cost Center {2} will exceed by {3},{0} orçamento para conta {1} contra Centro de Custo {2} excederá por {3}
{0} can not be negative,{0} não pode ser negativo
{0} created,{0} criado
{0} does not belong to Company {1},{0} não pertence à empresa {1}
{0} entered twice in Item Tax,{0} entrou duas vezes em Imposto item
{0} is an invalid email address in 'Notification Email Address',{0} é um endereço de e-mail inválido em ' Notificação de E-mail '
{0} is mandatory,{0} é obrigatório
{0} is mandatory for Item {1},{0} é obrigatório para item {1}
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} é obrigatório. Talvez recorde Câmbios não é criado para {1} de {2}.
{0} is not a stock Item,{0} não é um item de estoque
{0} is not a valid Batch Number for Item {1},{0} não é um número de lote válido por item {1}
{0} is not a valid Leave Approver. Removing row #{1}.,{0} não é uma licença Approver válido. Remoção de linha # {1}.
{0} is not a valid email id,{0} não é um ID de e-mail válido
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,"{0} é agora o padrão Ano Fiscal. Por favor, atualize seu navegador para que a alteração tenha efeito."
{0} is required,{0} é necessária
{0} must be a Purchased or Sub-Contracted Item in row {1},{0} deve ser um item comprado ou subcontratadas na linha {1}
{0} must be reduced by {1} or you should increase overflow tolerance,{0} deve ser reduzido em {1} ou você deve aumentar a tolerância ao excesso
{0} must have role 'Leave Approver',{0} deve ter papel ' Leave aprovador '
{0} valid serial nos for Item {1},{0} N º s de série válido para o item {1}
{0} {1} against Bill {2} dated {3},{0} {1} contra Bill {2} {3} datado
{0} {1} against Invoice {2},{0} {1} contra Invoice {2}
{0} {1} has already been submitted,{0} {1} já foi apresentado
{0} {1} has been modified. Please refresh.,"{0} {1} foi modificado . Por favor, atualize ."
{0} {1} is not submitted,{0} {1} não for apresentado
{0} {1} must be submitted,{0} {1} deve ser apresentado
{0} {1} not in any Fiscal Year,{0} {1} não em qualquer ano fiscal
{0} {1} status is 'Stopped',{0} {1} status é ' parado '
{0} {1} status is Stopped,{0} {1} status é parado
{0} {1} status is Unstopped,{0} {1} status é abrirão
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Centro de Custo é obrigatória para item {2}
{0}: {1} not found in Invoice Details table,{0}: {1} não foi encontrado na fatura Detalhes Mesa
