 (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 = [?] FractionFor 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
