 (Half Day),(Meio Dia)
 and year: ,e ano:
""" does not exists",""" Não existe"
%  Delivered,Entregue %
% Amount Billed,Valor faturado %
% Billed,Faturado %
% Completed,% Concluído
% Delivered,Entregue %
% 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 faturados contra esta Ordem de Venda
% of materials delivered against this Delivery Note,% de materiais entregues contra esta Guia de Remessa
% of materials delivered against this Sales Order,% de materiais entregues contra esta Ordem de Venda
% of materials ordered against this Material Request,% De materiais encomendados contra este pedido se
% of materials received against this Purchase Order,% de materiais recebidos contra esta Ordem de Compra
%(conversion_rate_label)s is mandatory. Maybe Currency Exchange record is not created for %(from_currency)s to %(to_currency)s,% ( conversion_rate_label ) s é obrigatória. Talvez recorde Câmbios não é criado para % ( from_currency ) s para% ( to_currency ) s
'Actual Start Date' can not be greater than 'Actual End Date',' Real data de início ' não pode ser maior que ' Actual Data Final '
'Based On' and 'Group By' can not be same,'Baseado ' e ' Grupo por ' não pode ser o mesmo
'Days Since Last Order' must be greater than or equal to zero,' Dias desde a última Ordem deve ser maior ou igual a zero
'Entries' cannot be empty,' Entradas ' não pode estar vazio
'Expected Start Date' can not be greater than 'Expected End Date',""" Data de Início esperado ' não pode ser maior que' Data Final Esperado '"
'From Date' is required,'From Date' é necessária
'From Date' must be after 'To Date','De Data ' deve ser depois de ' To Date '
'Has Serial No' can not be 'Yes' for non-stock item,'Não tem de série ' não pode ser 'Sim' para o item não- estoque
'Notification Email Addresses' not specified for recurring invoice,"«Notificação endereços de email "" não especificadas para fatura recorrentes"
'Profit and Loss' type account {0} not allowed in Opening Entry,""" Lucros e Perdas "" tipo de conta {0} não é permitido na abertura de entrada"
'To Case No.' cannot be less than 'From Case No.',&quot;Para Processo n º &#39; não pode ser inferior a &#39;From Processo n&#39;
'To Date' is required,' To Date ' é necessária
'Update Stock' for Sales Invoice {0} must be set,"'Atualizar Estoque ""para vendas Invoice {0} deve ser definido"
* Will be calculated in the transaction.,* Será calculado na transação.
"1 Currency = [?] Fraction
For e.g. 1 USD = 100 Cent",1 Moeda = [?] Fração \ nPor exemplo
1. To maintain the customer wise item code and to make them searchable based on their code use this option,1. Para manter o código de item do cliente e para torná-los pesquisáveis ​​com base em seu código use esta opção
"<a href=""#Sales Browser/Customer Group"">Add / Edit</a>","<a href=""#Sales Browser/Customer grupo""> Adicionar / Editar </ a>"
"<a href=""#Sales Browser/Item Group"">Add / Edit</a>","<a href=""#Sales Browser/Item grupo""> Adicionar / Editar </ a>"
"<a href=""#Sales Browser/Territory"">Add / Edit</a>","<a href=""#Sales Browser/Territory""> Adicionar / Editar </ a>"
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 Prospecto com esse endereço 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,Data de Validade do CAM
Abbr,Abrev
Abbreviation cannot have more than 5 characters,Abreviatura não pode ter mais de 5 caracteres
About,Sobre
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 Aceita
Accepted Warehouse,Almoxarifado Aceito
Account,conta
Account Balance,Saldo em Conta
Account Created: {0},Conta Criada : {0}
Account Details,Detalhes da Conta
Account Head,Conta
Account Name,Nome da Conta
Account Type,Tipo de Conta
Account for the warehouse (Perpetual Inventory) will be created under this Account.,Conta para o depósito ( inventário permanente ) será criado nessa conta.
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 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} 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} can only be updated via \
					Stock Transactions",Conta: {0} só pode ser atualizado via \ \ n Stock Transações
Accountant,contador
Accounting,Contabilidade
"Accounting Entries can be made against leaf nodes, called","Lançamentos contábeis podem ser feitas contra nós folha , chamado"
"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 no livro Diário.
Accounts,Contas
Accounts Browser,Contas Navegador
Accounts Frozen Upto,Contas congeladas até
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,Log de Atividade
Activity Log:,Activity Log :
Activity Type,Tipo da 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 (na origem / destino)
Actual Qty After Transaction,Qtde Real Após a Transação
Actual Qty: Quantity available in the warehouse.,Qtde real: a quantidade disponível em armazém.
Actual Quantity,Quantidade Real
Actual Start Date,Data de Início Real
Add,Adicionar
Add / Edit Taxes and Charges,Adicionar / Editar Impostos e Encargos
Add Child,Adicionar Criança
Add Serial No,Adicionar Serial No
Add Taxes,Adicionar Impostos
Add Taxes and Charges,Adicionar Impostos e Taxas
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,Adicionar ao calendário nesta data
Add/Remove Recipients,Adicionar / Remover Destinatários
Address,Endereço
Address & Contact,Address &amp; Contact
Address & Contacts,Endereço e Contatos
Address Desc,Descrição do Endereço
Address Details,Detalhes do Endereço
Address HTML,Endereço HTML
Address Line 1,Endereço Linha 1
Address Line 2,Endereço Linha 2
Address Title,Título do 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 Antecipada
Advance amount,Valor do adiantamento
Advances,Avanços
Advertisement,Anúncio
Advertising,publicidade
Aerospace,aeroespaço
After Sale Installations,Instalações Pós-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 do Documento nº
Against Document No,Contra Documento nº
Against Entries,contra Entradas
Against Expense Account,Contra a Conta de Despesas
Against Income Account,Contra a Conta de Rendimentos
Against Journal Voucher,Contra Comprovante do livro Diário
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,Contra Ordem de Vendas
Against Voucher,Contra Comprovante
Against Voucher Type,Contra Tipo de Comprovante
Ageing Based On,Envelhecimento Baseado em
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,Data de Envelhecimento
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,Todo Contato
All Contacts.,Todos os contatos.
All Customer Contact,Todo Contato do Cliente
All Customer Groups,Todos os grupos de clientes
All Day,Dia de Todos os
All Employee (Active),Todos os Empregados (Ativos)
All Item Groups,Todos os grupos de itens
All Lead (Open),Todos Prospectos (Abertos)
All Products or Services.,Todos os Produtos ou Serviços.
All Sales Partner Contact,Todo Contato de Parceiros de Vendas
All Sales Person,Todos os Vendedores
All Supplier Contact,Todo Contato de Fornecedor
All Supplier Types,Todos os tipos de fornecedores
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 items have already been transferred for this Production Order.,Todos os itens já foram transferidos para esta ordem de produção .
All these items have already been invoiced,Todos esses itens já foram faturados
Allocate,Alocar
Allocate Amount Automatically,Alocar o valor automaticamente
Allocate leaves for a period.,Alocar folhas por um período .
Allocate leaves for the year.,Alocar licenças para o ano.
Allocated Amount,Montante alocado
Allocated Budget,Orçamento alocado
Allocated amount,Montante alocado
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 usuários a seguir para aprovar aplicações deixam 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 de tolerância
Allowance for over-delivery / over-billing crossed for Item {0},Provisão para over- entrega / sobre- faturamento cruzou para item {0}
Allowed Role to Edit Entries Before Frozen Date,Permitidos Papel para editar entradas Antes Congelado Data
Amended From,Corrigido De
Amount,Quantidade
Amount (Company Currency),Amount (Moeda Company)
Amount <=,Quantidade &lt;=
Amount >=,Quantidade&gt; =
Amount to Bill,Elevar-se a 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 deva 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,Território aplicável
Applicable To (Designation),Aplicável Para (Designação)
Applicable To (Employee),Aplicável Para (Funcionário)
Applicable To (Role),Aplicável Para (Função)
Applicable To (User),Aplicável Para (Usuário)
Applicant Name,Nome do Requerente
Applicant for a Job.,Requerente de uma Job.
Application of Funds (Assets),Aplicações de Recursos ( Ativos )
Applications for leave.,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 do 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,Estado da Aprovação
Approval Status must be 'Approved' or 'Rejected',"Status de Aprovação deve ser ""Aprovado"" ou "" Rejeitado """
Approved,Aprovado
Approver,Aprovador
Approving Role,Função Aprovadora
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,Usuário Aprovador
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 em 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 UDM do Estoque
"As there are existing stock transactions for this item, you can not change the values of 'Has Serial No', 'Is Stock Item' and 'Valuation Method'","Como existem operações com ações existentes para este item , você não pode alterar os valores de 'não tem de série ', ' é Stock Item' e ' Método de avaliação '"
Asset,ativos
Assistant,assistente
Associate,associado
Atleast one warehouse is mandatory,Pelo menos um almoxarifado é 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 Comparecimento
Attendance Details,Detalhes do Comparecimento
Attendance From Date,Data Inicial de Comparecimento
Attendance From Date and Attendance To Date is mandatory,Atendimento De Data e Atendimento à data é obrigatória
Attendance To Date,Data Final de Comparecimento
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.,Registro de comparecimento.
Authorization Control,Controle de autorização
Authorization Rule,Regra de autorização
Auto Accounting For Stock Settings,Contabilidade Auto para o estoque Configurações
Auto Material Request,Pedido de material Auto
Auto-raise Material Request if quantity goes below re-order level in a warehouse,Auto-raise solicitar material se a quantidade for inferior a reordenar nível 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.,"Extrair automaticamente Leads de uma caixa de correio , por exemplo,"
Automatically updated via Stock Entry of type Manufacture/Repack,Atualizado automaticamente através do lançamento de Estoque do tipo Fabricação/Reempacotamento
Automotive,automotivo
Autoreply when a new mail is received,Responder automaticamente quando um novo e-mail é recebido
Available,disponível
Available Qty at Warehouse,Qtde Disponível em Almoxarifado
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,Idade Média
Average Commission Rate,Média Comissão Taxa
Average Discount,Desconto Médio
Awesome Products,produtos impressionantes
Awesome Services,impressionante Serviços
BOM Detail No,Nº do detalhe da LDM
BOM Explosion Item,Item da Explosão da LDM
BOM Item,Item da LDM
BOM No,Nº da LDM
BOM No. for a Finished Good Item,Nº da LDM para um Item Bom Acabado
BOM Operation,Operação da LDM
BOM Operations,Operações da LDM
BOM Replace Tool,Ferramenta de Substituição da LDM
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,LDM substituída
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,Balanço Qtde
Balance Sheet,Balanço
Balance Value,Valor Patrimonial
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 A/C No.,Nº Cta. Bancária
Bank Account,Conta Bancária
Bank Account No.,Nº Conta Bancária
Bank Accounts,Contas Bancárias
Bank Clearance Summary,Banco Resumo Clearance
Bank Draft,cheque administrativo
Bank Name,Nome do Banco
Bank Overdraft Account,Conta Garantida Banco
Bank Reconciliation,Reconciliação Bancária
Bank Reconciliation Detail,Detalhe da Reconciliação Bancária
Bank Reconciliation Statement,Declaração de reconciliação bancária
Bank Voucher,Comprovante Bancário
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,Lote
Batch (lot) of an Item.,Lote de um item.
Batch Finished Date,Data de Término do Lote
Batch ID,ID do Lote
Batch No,Nº do Lote
Batch Started Date,Data de Início do Lote
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 de Faturamento
Bill No,Fatura 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 (LDM)
Billable,Faturável
Billed,Faturado
Billed Amount,valor faturado
Billed Amt,Valor Faturado
Billing,Faturamento
Billing Address,Endereço de Cobrança
Billing Address Name,Faturamento Nome Endereço
Billing Status,Estado do Faturamento
Bills raised by Suppliers.,Contas levantada por Fornecedores.
Bills raised to Customers.,Contas levantdas para Clientes.
Bin,Caixa
Bio,Bio
Biotechnology,biotecnologia
Birthday,aniversário
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 do Blog
Blood Group,Grupo sanguíneo
Both Warehouse must belong to same Company,Ambos Warehouse devem pertencer a mesma empresa
Box,caixa
Branch,Ramo
Brand,Marca
Brand Name,Marca
Brand master.,Cadastro de Marca.
Brands,Marcas
Breakdown,Colapso
Broadcasting,radiodifusão
Brokerage,corretagem
Budget,Orçamento
Budget Allocated,Orçamento Alocado
Budget Detail,Detalhe do Orçamento
Budget Details,Detalhes do Orçamento
Budget Distribution,Distribuição de Orçamento
Budget Distribution Detail,Detalhe da Distribuição de Orçamento
Budget Distribution Details,Detalhes da Distribuição de 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,Criar relatório
Built on,construído sobre
Bundle items at time of sale.,Empacotar itens no momento da venda.
Business Development Manager,Gerente de Desenvolvimento de Negócios
Buying,Compras
Buying & Selling,Compra e Venda
Buying Amount,Comprar Valor
Buying Settings,Comprar Configurações
C-Form,Formulário-C
C-Form Applicable,Formulário-C Aplicável
C-Form Invoice Detail,Detalhe Fatura do Formulário-C
C-Form No,Nº do Formulário-C
C-Form records,Registros C -Form
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","Não é possível filtrar com base em conta , se agrupados por Conta"
"Can not filter based on Voucher No, if grouped by Voucher","Não é possível filtrar com base no Comprovante Não, se agrupados por 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.,Cancelando este Stock Reconciliação vai anular seu efeito.
Cannot Cancel Opportunity as Quotation Exists,Não é possível cancelar Opportunity como Cotação existe
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 Year Start Date and Year End Date once the Fiscal Year is saved.,Não é possível alterar Ano Data de Início e Fim de Ano Data vez 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.","Não pode declarar como perdido , porque Cotação foi feita."
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 'Setup' > 'Global Defaults'","Não pode overbill para item {0} na linha {0} mais de {1}. Para permitir o superfaturamento , defina em ""Setup"" > "" padrões globais """
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.,Não é possível definir como perdida como ordem de venda é feita.
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,Encaminhar
Carry Forwarded Leaves,Encaminhar Licenças
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,Caso n não pode ser 0
Cash,Numerário
Cash In Hand,Dinheiro na mão
Cash Voucher,Comprovante de Caixa
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,Conta do Caixa/Banco
Casual Leave,Casual Deixar
Cell Number,Telefone Celular
Change UOM for an Item.,Alterar UDM de um item.
Change the starting / current sequence number of an existing series.,Alterar o número sequencial de início/atual 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,Taxá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 a newsletter é exibido em um e-mail enviando-o para o seu e-mail.
"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Marque se é uma nota fiscal recorrente, desmarque para parar a recorrência ou colocar uma Data Final adequada"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Marque se você precisa de notas fiscais recorrentes automáticas. Depois de enviar qualquer nota fiscal de venda, a seção Recorrente será visível."
Check if you want to send salary slip in mail to each employee while submitting salary slip,Marque se você quiser enviar a folha de pagamento pelo correio a cada empregado ao enviar a folha de pagamento
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 a selecionar uma série antes de salvar. Não haverá nenhum padrão se você marcar 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 os e-mails de sua caixa de correio
Check to activate,Marque para ativar
Check to make Shipping Address,Marque para criar Endereço de Remessa
Check to make primary address,Marque para criar Endereço Principal
Chemical,químico
Cheque,Cheque
Cheque Date,Data do Cheque
Cheque Number,Número do cheque
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,Valor Requerido
Claims for company expense.,Os pedidos de despesa da empresa.
Class / Percentage,Classe / Percentual
Classic,Clássico
Clear Table,Limpar Tabela
Clearance Date,Data de Liberaçã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.,Fechar Balanço e livro ou perda .
Closed,Fechado
Closing Account Head,Conta de Fechamento
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 fiscal
Closing Qty,fechando Qtde
Closing Value,fechando Valor
CoA Help,Ajuda CoA
Code,Código
Cold Calling,Cold Calling
Color,Cor
Comma separated list of email addresses,Lista separada por vírgulas de endereços de e-mail
Comments,Comentários
Commercial,comercial
Commission,comissão
Commission Rate,Taxa de Comissão
Commission Rate (%),Taxa de Comissão (%)
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órico da comunicação
Communication log.,Log de Comunicação.
Communications,Comunicações
Company,Empresa
Company (not Customer or Supplier) master.,Company ( não cliente ou fornecedor ) mestre.
Company Abbreviation,Sigla Empresa
Company Details,Detalhes da Empresa
Company Email,Empresa 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 de registro da empresa para sua referência. Exemplo: CNPJ, IE, 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","Empresa , Mês e Ano Fiscal é obrigatória"
Compensatory Off,compensatória Off
Complete,Completar
Complete Setup,Instalação concluída
Completed,Concluído
Completed Production Orders,Ordens de produção concluídas
Completed Qty,Qtde concluída
Completion Date,Data de Conclusão
Completion Status,Estado de Conclusão
Computer,computador
Computers,informática
Confirmation Date,confirmação Data
Confirmed orders from Customers.,Pedidos confirmados 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,Custo dos consumíveis
Consumable cost per hour,Custo de consumíveis por hora
Consumed Qty,Qtde consumida
Consumer Products,produtos para o Consumidor
Contact,Contato
Contact Control,Controle de Contato
Contact Desc,Descrição do Contato
Contact Details,Detalhes do Contato
Contact Email,E-mail do Contato
Contact HTML,Contato HTML
Contact Info,Informações para Contato
Contact Mobile No,Celular do Contato
Contact Name,Nome do Contato
Contact No.,Nº Contato.
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,Comprovante de Caixa
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 Nota Fiscal Recorrente
Convert to Group,Converter em Grupo
Convert to Ledger,Converter para Ledger
Converted,Convertido
Copy From Item Group,Copiar do item do grupo
Cosmetics,Cosméticos
Cost Center,Centro de Custos
Cost Center Details,Detalhes do Centro de Custo
Cost Center Name,Nome do Centro de Custo
Cost Center is mandatory for Item {0},Centro de Custo é obrigatória para item {0}
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, Timezone and Currency","País , o fuso horário e moeda"
Create Bank Voucher for the total salary paid for the above selected criteria,Criar Comprovante Bancário para o salário total pago para os critérios acima selecionados
Create Customer,criar Cliente
Create Material Requests,Criar Pedidos de Materiais
Create New,criar Novo
Create Opportunity,criar Opportunity
Create Production Orders,Criar Ordens de Produção
Create Quotation,criar cotação
Create Receiver List,Criar Lista de Receptor
Create Salary Slip,Criar Folha de Pagamento
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 pagamento para os critérios acima mencionados.
Creation Date,Data de criação
Creation Document No,Criação de Documentos Não
Creation Document Type,Tipo de Documento de Criação
Creation Time,Data de Criação
Credentials,Credenciais
Credit,Crédito
Credit Amt,Montante de Crédito
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,Crédito Para
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,Endereço atual é
Current Assets,Ativo Circulante
Current BOM,LDM atual
Current BOM and New BOM can not be same,Atual BOM e Nova BOM não pode ser o mesmo
Current Fiscal Year,Ano Fiscal Atual
Current Liabilities,passivo circulante
Current Stock,Estoque Atual
Current Stock UOM,UDM de 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,Cliente / Chumbo Endereço
Customer / Lead Name,Cliente / Nome de chumbo
Customer Account Head,Cliente Cabeça Conta
Customer Acquisition and Loyalty,Aquisição de Cliente e Fidelização
Customer Address,Endereço do cliente
Customer Addresses And Contacts,Endereços e contatos do cliente
Customer Code,Código do 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,Grupo de cliente / cliente
Customer Group Name,Nome do grupo de Clientes
Customer Intro,Introdução do Cliente
Customer Issue,Questão do 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 Item do Cliente
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,Ordem de Compra Número do Cliente
Customer's Vendor,Vendedor do cliente
Customers Not Buying Since Long Time,Os clientes não compra desde há muito tempo
Customerwise Discount,Desconto referente ao Cliente
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 introdutório separado.
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 da 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 Efetivação
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 caminhão partiu do almoxarifado do fornecedor
Date on which lorry started from your warehouse,Data em que o caminhão partiu do seu almoxarifado
Dates,Datas
Days Since Last Order,Dias desde Last Order
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,Montante de Débito
Debit Note,Nota de Débito
Debit To,Débito Para
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,Padrão
Default Account,Conta Padrão
Default BOM,LDM padrão
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Conta do Banco/Caixa padrão será atualizada automaticamente na nota fiscal do PDV 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,Compra Lista de Preços Padrão
Default Cash Account,Conta Caixa padrão
Default Company,Empresa padrão
Default Cost Center for tracking expense for this item.,Centro de Custo padrão para controle de despesas para este item.
Default Currency,Moeda padrão
Default Customer Group,Grupo de Clientes padrão
Default Expense Account,Conta Despesa padrão
Default Income Account,Conta de Rendimento padrão
Default Item Group,Grupo de Itens 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,Configurações padrão
Default Source Warehouse,Almoxarifado da origem padrão
Default Stock UOM,Padrão da UDM do Estouqe
Default Supplier,Fornecedor padrão
Default Supplier Type,Tipo de fornecedor padrão
Default Target Warehouse,Almoxarifado de destino 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.","Unidade de medida padrão não pode ser alterado diretamente porque você já fez alguma transação (s) com outro UOM . Para alterar UOM padrão, use ' UOM Substituir Utility ""ferramenta abaixo Stock módulo."
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"">Cadastro de Empresa</a>"
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,Nº do Documento de Entrega
Delivery Document Type,Tipo do Documento de Entrega
Delivery Note,Guia de Remessa
Delivery Note Item,Item da Guia de Remessa
Delivery Note Items,Itens da Guia de Remessa
Delivery Note Message,Mensagem da Guia de Remessa
Delivery Note No,Nº da Guia de Remessa
Delivery Note Required,Guia de Remessa Obrigatória
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 da entrega
Delivery Time,Prazo de entrega
Delivery To,Entrega
Department,Departamento
Department Stores,Lojas de Departamento
Depends on LWP,Dependem do LWP
Depreciation,depreciação
Description,Descrição
Description HTML,Descrição HTML
Designation,Designação
Designer,estilista
Detailed Breakup of the totals,Detalhamento dos totais
Details,Detalhes
Difference (Dr - Cr),Diferença ( Dr - Cr)
Difference Account,Conta Diferença
"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,Desativado
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ão disponíveis em Ordem de Compra, Recibo de Compra, Nota Fiscal de Compra"
Discount Percentage,Percentagem de Desconto
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 itens principais
Distribute transport overhead across items.,Distribuir o custo de transporte através dos itens.
Distribution,Distribuição
Distribution Id,Id da distribuição
Distribution Name,Nome da distribuição
Distributor,Distribuidor
Divorced,Divorciado
Do Not Contact,Não entre em contato
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?,Você realmente quer parar esta solicitação de materiais ?
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?,Você realmente quer para desentupir este Pedir material?
Do you really want to stop production order: ,
Doc Name,Nome do Documento
Doc Type,Tipo do Documento
Document Description,Descrição do documento
Document Type,Tipo de Documento
Documents,Documentos
Domain,Domínio
Don't send Employee Birthday Reminders,Não envie Employee Aniversário Lembretes
Download Materials Required,Baixar Materiais Necessários
Download Reconcilation Data,Download dados a reconciliação
Download Template,Baixar o Modelo
Download a report containing all raw materials with their latest inventory status,Baixar um relatório contendo todas as matérias-primas com o seu estado mais recente do 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. \ NTodas datas e combinação de funcionários 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,Setup ERPNext
Earliest,Mais antigas
Earnest Money,Dinheiro Earnest
Earning,Ganho
Earning & Deduction,Ganho &amp; Dedução
Earning Type,Tipo de Ganho
Earning1,Earning1
Edit,Editar
Education,educação
Educational Qualification,Qualificação Educacional
Educational Qualification Details,Detalhes da Qualificação Educacional
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,Custo de Energia Elétrica
Electricity cost per hour,Custo de eletricidade por hora
Electronics,eletrônica
Email,E-mail
Email Digest,Resumo por E-mail
Email Digest Settings,Configurações do Resumo por E-mail
Email Digest: ,
Email Id,Endereço de e-mail
"Email Id where a job applicant will email e.g. ""jobs@example.com""","Endereço do e-mail onde um candidato a emprego vai enviar e-mail, por exemplo: &quot;empregos@exemplo.com&quot;"
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 Prospectos do e-mail de vendas, por exemplo &quot;vendas@exemplo.com&quot;"
Emergency Contact,Contato de emergência
Emergency Contact Details,Detalhes do contato de emergência
Emergency Phone,Telefone de emergência
Employee,Funcionário
Employee Birthday,Aniversário empregado
Employee Details,Detalhes do Funcionário
Employee Education,Escolaridade do Funcionário
Employee External Work History,Histórico de trabalho externo do Funcionário
Employee Information,Informações do Funcionário
Employee Internal Work History,Histórico de trabalho interno do Funcionário
Employee Internal Work Historys,Histórico de trabalho interno do Funcionário
Employee Leave Approver,Empregado Leave Approver
Employee Leave Balance,Equilíbrio Leave empregado
Employee Name,Nome do Funcionário
Employee Number,Número do Funcionário
Employee Records to be created by,Empregado Records para ser criado por
Employee Settings,Configurações Empregado
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,Endereços de e-mail dos Funcionários
Employment Details,Detalhes de emprego
Employment Type,Tipo de emprego
Enable / disable currencies.,Ativar / desativar moedas.
Enabled,Habilitado
Encashment Date,Data da 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 de 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 se a origem do Prospecto foi uma campanha.
Enter department to which this Contact belongs,Entre com o departamento a que este contato pertence
Enter designation of this Contact,Digite a designação deste contato
"Enter email id separated by commas, invoice will be mailed automatically on particular date","Digite os endereços de e-mail separados por vírgulas, a fatura será enviada automaticamente na data determinada"
Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Digite itens e qtde. 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 o motivo da consulta foi uma campanha.
"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Digite os parâmetros da URL estática aqui (por exemplo remetente=ERPNext, usuario=ERPNext, senha=1234, etc)"
Enter the company name under which Account Head will be created for this Supplier,Digite o nome da empresa sob a qual a Conta será criada para este fornecedor
Enter url parameter for message,Digite o parâmetro da url para mensagem
Enter url parameter for receiver nos,Digite o parâmetro da url para os números de receptores
Entertainment & Leisure,Entretenimento & Lazer
Entertainment Expenses,despesas de representação
Entries,Lançamentos
Entries against,Entradas contra
Entries are not allowed against this Fiscal Year if the year is closed.,Lançamentos não são permitidos contra este Ano Fiscal se o ano está fechado.
Entries before {0} are frozen,Entradas antes {0} são congelados
Equity,equidade
Error: {0} > {1},Erro: {0} > {1}
Estimated Material Cost,Custo estimado de Material
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 # # # # # \ nSe série está definido e número de série não é mencionado em transações , então o número de série automático será criado com base nessa série."
Exchange Rate,Taxa de Câmbio
Excise Page Number,Número de página do imposto
Excise Voucher,Comprovante do imposto
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,Detalhes da Entrevista de saída
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,Data prevista não pode ser antes de Material Data do Pedido
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 prevista
Expected Start Date,Data Inicial prevista
Expense,despesa
Expense Account,Conta de Despesas
Expense Account is mandatory,Conta de despesa é obrigatória
Expense Claim,Pedido de Reembolso de Despesas
Expense Claim Approved,Pedido de Reembolso de Despesas Aprovado
Expense Claim Approved Message,Mensagem de aprovação do Pedido de Reembolso de Despesas
Expense Claim Detail,Detalhe do Pedido de Reembolso de Despesas
Expense Claim Details,Detalhes do Pedido de Reembolso de Despesas
Expense Claim Rejected,Pedido de Reembolso de Despesas Rejeitado
Expense Claim Rejected Message,Mensagem de recusa do Pedido de Reembolso de Despesas
Expense Claim Type,Tipo de Pedido de Reembolso de Despesas
Expense Claim has been approved.,Despesa reivindicação foi aprovada.
Expense Claim has been rejected.,Despesa reivindicação foi rejeitada.
Expense Claim is pending approval. Only the Expense Approver can update status.,Despesa reivindicação está pendente de aprovação . Somente o aprovador Despesa pode atualizar status.
Expense Date,Data da despesa
Expense Details,Detalhes da despesa
Expense Head,Conta de despesas
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 agendadas
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 de características
Feed,Alimentar
Feed Type,Tipo de alimentação
Feedback,Comentários
Female,Feminino
Fetch exploded BOM (including sub-assemblies),Fetch BOM explodiu (incluindo sub-conjuntos )
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Campo disponível na Guia de Remessa, Cotação, Nota Fiscal de Venda, Ordem de Venda"
Files Folder ID,Arquivos de ID de pasta
Fill the form and save it,Preencha o formulário e salvá-lo
Filter based on customer,Filtrar baseado em cliente
Filter based on item,Filtrar baseado 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,Produtos Acabados
First Name,Nome
First Responded On,Primeira resposta em
Fiscal Year,Exercício fiscal
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.",A tabela a seguir mostrará valores se os itens são sub-contratados. Estes valores serão obtidos a partir do cadastro da &quot;Lista de Materiais&quot; de itens sub-contratados.
Food,comida
"Food, Beverage & Tobacco","Alimentos, Bebidas e Fumo"
For Company,Para a Empresa
For Employee,Para o Funcionário
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,para Fornecedor
For Warehouse,Para Almoxarifado
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 Notas Fiscais e Guias de Remessa"
Fraction,Fração
Fraction Units,Unidades fracionadas
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,Do problema do cliente
From Date,A partir da data
From Date must be before To Date,A data inicial deve ser anterior a data final
From Delivery Note,De Nota de Entrega
From Employee,De Empregado
From Lead,De Chumbo
From Maintenance Schedule,Do Programa de Manutenção
From Material Request,Do Pedido de materiais
From Opportunity,De Opportunity
From Package No.,De No. Package
From Purchase Order,Da Ordem de Compra
From Purchase Receipt,De Recibo de compra
From Quotation,De Citação
From Sales Order,Da Ordem de Vendas
From Supplier Quotation,De Fornecedor Cotação
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,Contas congeladas Modifier
Fulfilled,Cumprido
Full Name,Nome Completo
Full-time,De tempo integral
Fully Completed,Totalmente concluída
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,"Outros nós só pode ser criado sob os nós do tipo ""grupo"""
GL Entry,Lançamento GL
Gantt Chart,Gráfico de Gantt
Gantt chart of all tasks.,Gráfico de Gantt de todas as tarefas.
Gender,Sexo
General,Geral
General Ledger,Razão Geral
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 pagamento
Generate Schedule,Gerar Agenda
Generates HTML to include selected image in the description,Gera HTML para incluir a imagem selecionada na descrição
Get Advances Paid,Obter adiantamentos pagos
Get Advances Received,Obter adiantamentos recebidos
Get Against Entries,Obter Contra Entradas
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,Obter itens de BOM
Get Last Purchase Rate,Obter Valor da Última Compra
Get Outstanding Invoices,Obter faturas pendentes
Get Relevant Entries,Obter entradas relevantes
Get Sales Orders,Obter Ordens de Venda
Get Specification Details,Obter detalhes da Especificação
Get Stock and Rate,Obter Estoque e Valor
Get Template,Obter Modelo
Get Terms and Conditions,Obter os Termos e Condições
Get Weekly Off Dates,Obter datas de descanso semanal
"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 valorização e estoque disponível no almoxarifado de origem/destino na data e hora de postagem mencionada. Se for item serializado, pressione este botão depois de entrar os nº 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 em atraso + Valor de cobrança - Dedução Total
Gross Profit,Lucro bruto
Gross Profit (%),Lucro Bruto (%)
Gross Weight,Peso bruto
Gross Weight UOM,UDM do Peso Bruto
Group,Grupo
Group by Account,Grupo por Conta
Group by Voucher,Grupo pela Vale
Group or Ledger,Grupo ou Razão
Groups,Grupos
HR Manager,Gerente de RH
HR Settings,Configurações HR
HTML / Banner that will show on the top of product list.,HTML / Faixa que vai ser mostrada no topo da lista de produtos.
Half Day,Meio Dia
Half Yearly,Semestral
Half-yearly,Semestral
Happy Birthday!,Feliz Aniversário!
Hardware,ferragens
Has Batch No,Tem nº de Lote
Has Child Node,Tem nó filho
Has Serial No,Tem nº 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 sobre a 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 familiares como o nome 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, preocupações médica, etc"
Hide Currency Symbol,Ocultar Símbolo de Moeda
High,Alto
History In Company,Histórico na Empresa
Hold,Segurar
Holiday,Feriado
Holiday List,Lista de feriado
Holiday List Name,Nome da lista de feriados
Holiday master.,Mestre férias .
Holidays,Feriados
Home,Início
Host,Host
"Host, Email and Password required if emails are to be pulled","Host, E-mail e Senha são necessários se desejar obter e-mails"
Hour,hora
Hour Rate,Valor por hora
Hour Rate Labour,Valor por hora de mão-de-obra
Hours,Horas
How frequently?,Com que frequência?
"How should this currency be formatted? If not set, will use system defaults","Como essa moeda deve ser formatada? Se não for definido, serão usados os 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 for 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 do Fornecedor existir para um determinado item, ele fica armazenado aqui"
If Yearly Budget Exceeded,Se orçamento anual for 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 marcado, os itens da LDM para a Sub-Montagem serão considerados para obter matérias-primas. Caso contrário, todos os itens da sub-montagem vão ser tratados como 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 marcado, o valor do imposto será considerado como já incluído na Impressão de Taxa / Impressão do Valor"
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&#39; 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 (para impressão)
"If no change in either Quantity or Valuation Rate, leave the cell blank.","Se nenhuma alteração em qualquer quantidade ou Avaliação Rate, deixar em branco o celular."
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 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.","Se a conta for congelada , as entradas são permitidos aos usuários restritos."
"If this Account represents a Customer, Supplier or Employee, set it here.","Se essa conta representa um cliente, fornecedor ou funcionário, estabeleça aqui."
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) eles podem ser marcadas e manter suas contribuições 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 cadastro de Impostos de Compra e 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 no cadastro de Impostos de Vendas e Encargos, 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ê formatos longos de impressão, 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
Ignored: ,Ignorados:
Image,Imagem
Image View,Ver imagem
Implementation Partner,Parceiro de implementação
Import Attendance,Importação de Atendimento
Import Failed!,Falha na importação !
Import Log,Importar Log
Import Successful!,Importe com sucesso!
Imports,Importações
In Hours,Em Horas
In Process,Em Processo
In Qty,No Qt
In Value,em Valor
In Words,Por extenso
In Words (Company Currency),In Words (Moeda Company)
In Words (Export) will be visible once you save the Delivery Note.,Por extenso (Exportação) será visível quando você salvar a Guia de Remessa.
In Words will be visible once you save the Delivery Note.,Por extenso será visível quando você salvar a Guia de Remessa.
In Words will be visible once you save the Purchase Invoice.,Por extenso será visível quando você salvar a Nota Fiscal de Compra.
In Words will be visible once you save the Purchase Order.,Por extenso será visível quando você salvar a Ordem de Compra.
In Words will be visible once you save the Purchase Receipt.,Por extenso será visível quando você salvar o recibo de compra.
In Words will be visible once you save the Quotation.,Por extenso será visível quando você salvar a cotação.
In Words will be visible once you save the Sales Invoice.,Por extenso será visível quando você salvar a Nota Fiscal de Venda.
In Words will be visible once you save the Sales Order.,Por extenso será visível quando você salvar a Ordem de Venda.
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 de Renda
Income Booked,Renda Reservado
Income Tax,Imposto de Renda
Income Year to Date,Ano de rendimento até a 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 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,Indica que o pacote é uma parte desta entrega
Indirect Expenses,Despesas Indiretas
Indirect Income,Resultado indirecto
Individual,Individual
Industry,Indústria
Industry Type,Tipo de indústria
Inspected By,Inspecionado por
Inspection Criteria,Critérios de Inspeção
Inspection Required,Inspeção Obrigatória
Inspection Type,Tipo de Inspeção
Installation Date,Data de Instalação
Installation Note,Nota de Instalação
Installation Note Item,Item da Nota de Instalação
Installation Note {0} has already been submitted,Instalação Nota {0} já foi apresentado
Installation Status,Estado 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,Integrar e-mails de apoio recebidas de Apoio Ticket
Interested,Interessado
Intern,internar
Internal,Interno
Internet Publishing,Publishing Internet
Introduction,Introdução
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,Invalid Name Mestre
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 nota fiscal
Invoice Details,Detalhes da nota fiscal
Invoice No,Nota Fiscal nº
Invoice Period From Date,Período Inicial de Fatura
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 Date,Período Final de Fatura
Invoiced Amount (Exculsive Tax),Valor faturado ( Exculsive Tributário)
Is Active,É Ativo
Is Advance,É antecipado
Is Cancelled,É cancelado
Is Carry Forward,É encaminhado
Is Default,É padrão
Is Encash,É cobrança
Is Fixed Asset Item,É item de Imobilização
Is LWP,É LWP
Is Opening,É abertura
Is Opening Entry,Está abrindo Entry
Is POS,É PDV
Is Primary Contact,É o contato principal
Is Purchase Item,É item de compra
Is Sales Item,É item de venda
Is Service Item,É item de serviço
Is Stock Item,É item de estoque
Is Sub Contracted Item,É item subcontratado
Is Subcontracted,É subcontratada
Is this Tax included in Basic Rate?,Este imposto está incluído no Valor Base?
Issue,Questão
Issue Date,Data da Questão
Issue Details,Detalhes da Questão
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.,Ele também pode ser usado para criar entradas de abertura de ações e fixar o valor das ações .
Item,item
Item Advanced,Item antecipado
Item Barcode,Código de barras do Item
Item Batch Nos,Nº do Lote do Item
Item Code,Código do Item
Item Code and Warehouse should already exist.,Código do item e Warehouse já deve existir.
Item Code cannot be changed for Serial No.,Código do item não pode ser alterado para Serial No.
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 do Cliente do Item
Item Description,Descrição do Item
Item Desription,Descrição do Item
Item Details,Detalhes do Item
Item Group,Grupo de Itens
Item Group Name,Nome do Grupo de Itens
Item Group Tree,Item Tree grupo
Item Groups in Details,Detalhes dos Grupos de Itens
Item Image (if not slideshow),Imagem do Item (se não for slideshow)
Item Name,Nome do Item
Item Naming By,Item de nomeação
Item Price,Preço do Item
Item Prices,Preços de itens
Item Quality Inspection Parameter,Parâmetro de Inspeção de Qualidade do Item
Item Reorder,Item Reordenar
Item Serial No,Nº de série do Item
Item Serial Nos,Nº de série de Itens
Item Shortage Report,Item de relatório Escassez
Item Supplier,Fornecedor do Item
Item Supplier Details,Detalhes do Fornecedor do Item
Item Tax,Imposto do Item
Item Tax Amount,Valor do Imposto do Item
Item Tax Rate,Taxa de Imposto do 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,UDM do Item
Item Website Specification,Especificação do Site do Item
Item Website Specifications,Especificações do Site do Item
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,Mesa Item não pode estar em branco
Item to be manufactured or repacked,Item a ser fabricado ou reembalado
Item valuation updated,Valorização item atualizado
Item will be saved by this name in the data base.,O Item será salvo com 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.","Detalhes do Item, Garantia, CAM (Contrato Anual de Manutenção) serão carregados automaticamente quando o número de série for selecionado."
Item-wise Price List Rate,-Item sábio Preço de Taxa
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 podem ser reconciliadas usando \ \ n Stock 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,Itens a ser solicitado
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 almoxarifados com base na quantidade projetada e pedido 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 na requisição do cliente
Itemwise Discount,Desconto relativo ao Item
Itemwise Recommended Reorder Level,Itemwise Recomendado nível de reposição
Job Applicant,Candidato a emprego
Job Opening,Vaga de emprego
Job Profile,Perfil Job
Job Title,Cargo
"Job profile, qualifications required etc.","Perfil de trabalho , qualificações exigidas , etc"
Jobs Email Settings,Configurações do e-mail de empregos
Journal Entries,Lançamentos do livro Diário
Journal Entry,Lançamento do livro Diário
Journal Voucher,Comprovante do livro Diário
Journal Voucher Detail,Detalhe do Comprovante do livro Diário
Journal Voucher Detail No,Nº do Detalhe do Comprovante do livro Diário
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 o controle de comunicações relacionadas a esta consulta, o que irá ajudar para futuras referências."
Keep it web friendly 900px (w) by 100px (h),Mantenha- web 900px amigável (w) por 100px ( h )
Key Performance Area,Área Chave de Performance
Key Responsibility Area,Área Chave de Responsabilidade
Kg,Kg.
LR Date,Data LR
LR No,Nº LR
Label,Etiqueta
Landed Cost Item,Custo de desembarque do Item
Landed Cost Items,Custo de desembarque dos Itens
Landed Cost Purchase Receipt,Recibo de compra do custo de desembarque
Landed Cost Purchase Receipts,Recibos de compra do custo de desembarque
Landed Cost Wizard,Assistente de Custo de Desembarque
Landed Cost updated successfully,Custo Landed atualizado com sucesso
Language,Idioma
Last Name,Sobrenome
Last Purchase Rate,Valor da última compra
Latest,Latest
Lead,Prospecto
Lead Details,Detalhes do Prospecto
Lead Id,chumbo Id
Lead Name,Nome do Prospecto
Lead Owner,Proprietário do Prospecto
Lead Source,Chumbo Fonte
Lead Status,Chumbo Estado
Lead Time Date,Prazo de entrega
Lead Time Days,Prazo de entrega
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,Tipo de Prospecto
Lead must be set if Opportunity is made from Lead,Fila deve ser definido se Opportunity é feito de chumbo
Leave Allocation,Alocação de Licenças
Leave Allocation Tool,Ferramenta de Alocação de Licenças
Leave Application,Solicitação de Licenças
Leave Approver,Aprovador de Licenças
Leave Approvers,Deixe aprovadores
Leave Balance Before Application,Saldo de Licenças antes da solicitaçã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,Painel de Controle de Licenças
Leave Encashed?,Licenças cobradas?
Leave Encashment Amount,Valor das Licenças cobradas
Leave Type,Tipo de Licenças
Leave Type Name,Nome do Tipo de Licença
Leave Without Pay,Licença sem pagamento
Leave application has been approved.,Deixar pedido foi aprovado .
Leave application has been rejected.,Deixar pedido foi rejeitado.
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 função de &quot;Aprovador de Licenças&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,Razão
Ledgers,livros
Left,Esquerda
Legal,legal
Legal Expenses,despesas legais
Letter Head,Timbrado
Letter Heads for print templates.,Chefes de letras para modelos de impressão .
Level,Nível
Lft,Esq.
Liability,responsabilidade
List a few of your customers. They could be organizations or individuals.,Liste alguns de seus clientes. Eles podem ser organizações ou indivíduos .
List a few of your suppliers. They could be organizations or individuals.,Liste alguns de seus fornecedores. Eles podem ser organizações ou indivíduos .
List items that form the package.,Lista de itens que compõem o pacote.
List this Item in multiple groups on the website.,Listar 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...,Carregando ...
Loans (Liabilities),Empréstimos ( Passivo)
Loans and Advances (Assets),Empréstimos e Adiantamentos (Ativo )
Local,local
Login with your new User ID,Entrar com o seu novo ID de usuário
Logo,Logotipo
Logo and Letter Heads,Logo e Carta Chefes
Lost,perdido
Lost Reason,Razão da perda
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 o mesmo valor através de todo o ciclo de compra
Maintenance,Manutenção
Maintenance Date,Data de manutenção
Maintenance Details,Detalhes da manutenção
Maintenance Schedule,Programação da Manutenção
Maintenance Schedule Detail,Detalhe da Programação da Manutenção
Maintenance Schedule Item,Item da Programação da 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 da manutenção
Maintenance Time,Tempo da manutenção
Maintenance Type,Tipo de manutenção
Maintenance Visit,Visita de manutenção
Maintenance Visit Purpose,Finalidade da 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 / Opcionais
Make ,
Make Accounting Entry For Every Stock Movement,Faça Contabilidade entrada para cada Banco de Movimento
Make Bank Voucher,Fazer Comprovante Bancário
Make Credit Note,Faça Nota de Crédito
Make Debit Note,Faça Nota de Débito
Make Delivery,Faça Entrega
Make Difference Entry,Fazer Lançamento da Diferença
Make Excise Invoice,Faça Imposto fatura
Make Installation Note,Faça Instalação Nota
Make Invoice,Faça fatura
Make Maint. Schedule,Faça Manut . horário
Make Maint. Visit,Faça Manut . visita
Make Maintenance Visit,Faça Manutenção Visita
Make Packing Slip,Faça embalagem deslizamento
Make Payment Entry,Faça Entry Pagamento
Make Purchase Invoice,Faça factura de compra
Make Purchase Order,Faça Ordem de Compra
Make Purchase Receipt,Faça Recibo de compra
Make Salary Slip,Faça folha de salário
Make Salary Structure,Faça Estrutura Salarial
Make Sales Invoice,Fazer vendas Fatura
Make Sales Order,Faça Ordem de Vendas
Make Supplier Quotation,Faça Fornecedor Cotação
Male,Masculino
Manage Customer Group Tree.,Gerenciar Grupo Cliente Tree.
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 Venda
Manufacture/Repack,Fabricar / Reembalar
Manufactured Qty,Qtde. fabricada
Manufactured quantity will be updated in this warehouse,Quantidade fabricada será atualizada neste almoxarifado
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 de peça do fabricante
Manufacturing,Fabricação
Manufacturing Quantity,Quantidade de fabricação
Manufacturing Quantity is mandatory,Manufacturing Quantidade é obrigatório
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 do Cadastro
Master Name is mandatory if account type is Warehouse,Nome Master é obrigatória se o tipo de conta é Warehouse
Master Type,Tipo de Cadastro
Masters,Cadastros
Match non-linked Invoices and Payments.,Combinar Faturas e Pagamentos não relacionados.
Material Issue,Emissão de material
Material Receipt,Recebimento de material
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 essa entrada de material
Material Request {0} is cancelled or stopped,Pedido de material {0} é cancelado ou interrompido
Material Requests for which Supplier Quotations are not created,Os pedidos de materiais para os quais Fornecedor Quotations não são criados
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,Período máximo de Licença
Max Discount (%),Desconto Máx. (%)
Max Qty,Max Qtde
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 da mensagem
Message Sent,mensagem enviada
Message updated,Mensagem Atualizado
Messages,Mensagens
Messages greater than 160 characters will be split into multiple messages,Mensagens maiores do que 160 caracteres vão ser divididos em múltiplas mensagens
Middle Income,Rendimento Médio
Milestone,Marco
Milestone Date,Data do Marco
Milestones,Marcos
Milestones will be added as Events in the Calendar,Marcos serão adicionados como eventos no calendário
Min Order Qty,Pedido Mínimo
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 Order Qty,Pedido Mínimo
Minute,minuto
Misc Details,Detalhes Diversos
Miscellaneous Expenses,Despesas Diversas
Miscelleneous,Diversos
Mobile No,Telefone Celular
Mobile No.,Telefone Celular.
Mode of Payment,Forma de Pagamento
Modern,Moderno
Modified Amount,Quantidade modificada
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 salarial 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,Taxa da Média Móvel
Mr,Sr.
Ms,Sra.
Multiple Item prices.,Vários preços item.
"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 \ \ n conflito , atribuindo prioridade."
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 a que este endereço pertence.
Name of the Budget Distribution,Nome da Distribuição de Orçamento
Naming Series,Séries nomeadas
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 Líquido
Net Pay (in words) will be visible once you save the Salary Slip.,Pagamento líquido (por extenso) será visível quando você salvar a folha de pagamento.
Net Total,Total Líquido
Net Total (Company Currency),Total Líquido (Moeda Company)
Net Weight,Peso Líquido
Net Weight UOM,UDM do 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,Nova Conta
New Account Name,Novo Nome da conta
New BOM,Nova LDM
New Communications,Nova Comunicação
New Company,Nova Empresa
New Cost Center,Novo Centro de Custo
New Cost Center Name,Novo Centro de Custo Nome
New Delivery Notes,Novas Guias de Remessa
New Enquiries,Novas Consultas
New Leads,Novos Prospectos
New Leave Application,Aplicação deixar Nova
New Leaves Allocated,Novas Licenças alocadas
New Leaves Allocated (In Days),Novas Licenças alocadas (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 Venda
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,Novos lançamentos de estoque
New Stock UOM,Nova UDM de estoque
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 cotações de fornecedores
New Support Tickets,Novos pedidos de suporte
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 do boletim
Newsletter Status,Estado do boletim
Newsletter has already been sent,Boletim informativo já foi enviado
Newsletters is not allowed for Trial users,Newsletters não é permitido para usuários experimentais
"Newsletters to contacts, leads.","Newsletters para contatos, leva."
Newspaper Publishers,Editores de Jornais
Next,próximo
Next Contact By,Próximo Contato Por
Next Contact Date,Data do próximo Contato
Next Date,Próxima data
Next email will be sent on:,Próximo e-mail será enviado em:
No,Não
No Customer Accounts found.,Nenhum cliente foi encontrado.
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.,Nenhum fornecedor responde encontrado. Contas de fornecedores são identificados com base no valor 'Master Type' na conta de registro.
No accounting entries for the following warehouses,Nenhuma entrada de contabilidade para os seguintes armazéns
No addresses created,Nenhum endereço criadas
No contacts created,Nenhum contato criadas
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,Nº de SMS pedidos
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 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,não disponível
Not Billed,Não Faturado
Not Delivered,Não Entregue
Not Set,não informado
Not allowed to update entries older than {0},Não permitido para atualizar as entradas 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-mails não serão enviado para usuários desabilitados
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:,notas:
Nothing to request,Nada de pedir
Notice (days),Notice ( dias)
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,Oferta Data
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,No Total Líquido
On Previous Row Amount,No Valor na linha anterior
On Previous Row Total,No Total na 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.","Apenas os números de ordem , com status de "" disponível"" pode ser entregue."
Only leaf nodes are allowed in transaction,Somente nós-folha são permitidos em transações
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,Pedidos em aberto Produção
Open Tickets,Tickets abertos
Open source ERP built for the web,ERP de código aberto construído para a web
Opening (Cr),Abertura (Cr)
Opening (Dr),Abertura (Dr)
Opening Date,Data de abertura
Opening Entry,Abertura Entry
Opening Qty,Qtde abertura
Opening Time,Horário de abertura
Opening Value,Valor abertura
Opening for a Job.,Vaga de emprego.
Operating Cost,Custo de Operação
Operation Description,Descrição da operação
Operation No,Nº da 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 da oportunidade
Opportunity From,Oportunidade De
Opportunity Item,Item da oportunidade
Opportunity Items,Itens da oportunidade
Opportunity Lost,Oportunidade perdida
Opportunity Type,Tipo de Oportunidade
Optional. This setting will be used to filter in various transactions.,Opcional . Esta configuração será usada para filtrar em várias transações.
Order Type,Tipo de Ordem
Order Type must be one of {1},Tipo de Ordem deve ser uma das {1}
Ordered,pedido
Ordered Items To Be Billed,Itens encomendados a serem faturados
Ordered Items To Be Delivered,Itens encomendados a serem entregues
Ordered Qty,ordenada Qtde
"Ordered Qty: Quantity ordered for purchase, but not received.","Ordenada Qtde: Quantidade pedida para a compra , mas não recebeu ."
Ordered Quantity,Quantidade encomendada
Orders released for production.,Ordens liberadas para produção.
Organization Name,Nome da Organização
Organization Profile,Perfil da Organização
Organization branch master.,Mestre Organização ramo .
Organization unit (department) master.,Organização unidade (departamento) mestre.
Original Amount,Valor original
Other,Outro
Other Details,Outros detalhes
Others,outros
Out Qty,Fora Qtde
Out Value,Fora Valor
Out of AMC,Fora do CAM
Out of Warranty,Fora de Garantia
Outgoing,De Saída
Outstanding Amount,Quantia 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,As despesas gerais
Overlapping conditions found between:,Condições sobreposição encontradas entre :
Overview,visão global
Owned,Pertencente
Owner,proprietário
PL or BS,PL ou BS
PO Date,PO Data
PO No,No PO
POP3 Mail Server,Servidor de e-mail POP3
POP3 Mail Settings,Configurações de e-mail pop3
POP3 mail server (e.g. pop.gmail.com),"Servidor de e-mail POP3 (por exemplo, pop.gmail.com)"
POP3 server e.g. (pop.gmail.com),"Servidor de e-mail POP3 (por exemplo, pop.gmail.com)"
POS Setting,Configuração de PDV
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
PR Posting Date,PR Data da Publicação
Package Item Details,Detalhes do Item do Pacote
Package Items,Itens do pacote
Package Weight Details,Detalhes do peso do pacote
Packed Item,Item do Pacote da Guia de Remessa
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,Guia de Remessa
Packing Slip Item,Item da Guia de Remessa
Packing Slip Items,Itens da Guia de Remessa
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 do Detalhe pai
Parent Item,Item Pai
Parent Item Group,Grupo de 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,Vendedor pai
Parent Territory,Território pai
Parent Website Page,Pai site Página
Parent Website Route,Pai site Route
Parent account can not be a ledger,Pai conta não pode ser um livro
Parent account does not exist,Pai conta não existe
Parenttype,Parenttype
Part-time,De meio expediente
Partially Completed,Parcialmente concluída
Partly Billed,Parcialmente faturado
Partly Delivered,Parcialmente entregue
Partner Target Detail,Detalhe da Meta do parceiro
Partner Type,Tipo de parceiro
Partner's Website,Site do parceiro
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,Pagar Para/ Recebido De
Payable,a pagar
Payables,Contas a pagar
Payables Group,Grupo de contas a pagar
Payment Days,Datas de Pagamento
Payment Due Date,Data de Vencimento
Payment Period Based On Invoice Date,Período de pagamento com base no fatura Data
Payment Type,Tipo de pagamento
Payment of salary for the month {0} and year {1},Pagamento de salário para o mês {0} e {1} ano
Payment to Invoice Matching Tool,Ferramenta de Pagamento contra Fatura correspondente
Payment to Invoice Matching Tool Detail,Detalhe da Ferramenta de Pagamento contra Fatura correspondente
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,Configurações da folha de pagamento
Pending,Pendente
Pending Amount,Enquanto aguarda Valor
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,período
Period Closing Voucher,Comprovante de Encerramento período
Periodicity,Periodicidade
Permanent Address,Endereço permanente
Permanent Address Is,Endereço permanente é
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 a correta Abreviação ou Nome Curto pois ele será adicionado como sufixo a todas as Contas.
Please add expense voucher details,"Por favor, adicione despesas detalhes do voucher"
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.,"Por favor, crie uma nova conta de Plano de Contas ."
Please do NOT create Account (Ledgers) for Customers and Suppliers. They are created directly from the Customer / Supplier masters.,"Por favor, não criar Conta ( Ledger ) para Clientes e Fornecedores . Eles são criados diretamente dos clientes / fornecedores mestres."
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,"Por favor, indique Empresa"
Please enter Cost Center,"Por favor, indique Centro de Custo"
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,Por favor entre Employee Id deste pároco vendas
Please enter Expense Account,Por favor insira Conta Despesa
Please enter Item Code to get batch no,"Por favor, insira o Código Item para obter lotes não"
Please enter Item Code.,"Por favor, insira o Código Item."
Please enter Item first,"Por favor, indique primeiro item"
Please enter Maintaince Details first,"Por favor, indique Maintaince Detalhes primeiro"
Please enter Master Name once the account is created.,"Por favor, indique Master Nome uma vez que a conta é criada."
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,"Por favor, indique item Produção primeiro"
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,"Por favor, indique Armazém para que Pedido de materiais serão levantados"
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,Por favor insira primeira empresa
Please enter company name first,"Por favor, insira o nome da empresa em primeiro lugar"
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,Por favor entre pedidos de vendas na tabela acima
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 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,"Por favor, salve o documento antes de gerar programação de manutenção"
Please select Account first,"Por favor, selecione Conta primeiro"
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 selecione Encaminhar se você também quer incluir o saldo de licenças do ano fiscal anterior neste ano fiscal
Please select Category first,Por favor seleccione Categoria primeira
Please select Charge Type first,Por favor seleccione Carga Tipo primeiro
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 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 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","Por favor, selecione uma ""Imagem"" primeiro"
Please select charge type first,"Por favor, selecione o tipo de carga primeiro"
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 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,"Por favor, configure o seu plano de contas antes de começar a lançamentos contábeis"
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.,Por favor envie para atualizar Deixar Balance.
Plot,enredo
Plot By,Lote por
Point of Sale,Ponto de Venda
Point-of-Sale Setting,Configurações de Ponto-de-Venda
Post Graduate,Pós-Graduação
Postal,Postal
Postal Expenses,despesas postais
Posting Date,Data da Postagem
Posting Time,Horário da Postagem
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,Moeda da Lista de Preços
Price List Currency not selected,Lista de Preço Moeda não selecionado
Price List Exchange Rate,Taxa de Câmbio da Lista de Preços
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 For Discount,Preços Regra para desconto
Pricing Rule For Price,Preços regra para Preço
Print Format Style,Formato de impressão Estilo
Print Heading,Cabeçalho de impressão
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,Processa folha de pagamento
Produced,produzido
Produced Quantity,Quantidade produzida
Product Enquiry,Consulta de Produto
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,Ordens de produção em andamento
Production Plan Item,Item do plano de produção
Production Plan Items,Itens do plano de produção
Production Plan Sales Order,Ordem de Venda do Plano de Produção
Production Plan Sales Orders,Ordens de Venda do Plano de Produção
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 em buscas padrão. Maior o peso, mais alto o produto irá aparecer na lista."
Profit and Loss,Lucros e perdas
Project,Projeto
Project Costing,Custo do Projeto
Project Details,Detalhes do Projeto
Project Manager,Gerente de Projetos
Project Milestone,Marco do Projeto
Project Milestones,Marcos 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 / tarefa do projeto.
Project master.,Cadastro de Projeto.
Project will get saved and will be searchable with project name given,O Projeto será salvo e poderá ser pesquisado através do nome dado
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,projetado
Projected Qty,Qtde. Projetada
Projects,Projetos
Projects & System,Projetos e Sistema
Prompt for Email on Submission of,Solicitar e-mail no envio da
Proposal Writing,Proposta Redação
Provide email id registered in company,Fornecer Endereço de E-mail registrado na empresa
Public,Público
Publishing,Publishing
Pull sales orders (pending to deliver) based on the above criteria,Puxar as Ordens de Venda (pendentes de entrega) com base nos critérios acima
Purchase,Compras
Purchase / Manufacture Details,Detalhes Compra / Fabricação
Purchase Analytics,Análise de compras
Purchase Common,Compras comum
Purchase Details,Detalhes da compra
Purchase Discounts,Descontos da compra
Purchase In Transit,Compre Em Trânsito
Purchase Invoice,Nota Fiscal de Compra
Purchase Invoice Advance,Antecipação da Nota Fiscal de Compra
Purchase Invoice Advances,Antecipações da Nota Fiscal de Compra
Purchase Invoice Item,Item da Nota Fiscal de Compra
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 Date,Data da Ordem de Compra
Purchase Order Item,Item da Ordem de Compra
Purchase Order Item No,Nº do Item da Ordem de Compra
Purchase Order Item Supplied,Item da Ordem de Compra fornecido
Purchase Order Items,Itens da Ordem de Compra
Purchase Order Items Supplied,Itens da Ordem de Compra fornecidos
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 da Ordem de Compra
Purchase Order Required,Ordem de Compra Obrigatória
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.,Ordens de Compra dadas a fornecedores.
Purchase Receipt,Recibo de Compra
Purchase Receipt Item,Item do Recibo de Compra
Purchase Receipt Item Supplied,Item do Recibo de Compra Fornecido
Purchase Receipt Item Supplieds,Item do Recibo de Compra Fornecido
Purchase Receipt Items,Itens do Recibo de Compra
Purchase Receipt Message,Mensagem do Recibo de Compra
Purchase Receipt No,Nº do Recibo de Compra
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,Devolução de Compra
Purchase Returned,Compra Devolvida
Purchase Taxes and Charges,Impostos e Encargos sobre Compras
Purchase Taxes and Charges Master,Cadastro de Impostos e Encargos sobre Compras
Purchse Order number required for Item {0},Número de pedido purchse necessário para item {0}
Purpose,Finalidade
Purpose must be one of {0},Objetivo deve ser um dos {0}
QA Inspection,Inspeção QA
Qty,Qtde.
Qty Consumed Per Unit,Qtde. consumida por unidade
Qty To Manufacture,Qtde. Para Fabricação
Qty as per Stock UOM,Qtde. como por UDM de estoque
Qty to Deliver,Qt para entregar
Qty to Order,Qtde encomendar
Qty to Receive,Qt para receber
Qty to Transfer,Qtde transferir
Qualification,Qualificação
Quality,Qualidade
Quality Inspection,Inspeção de Qualidade
Quality Inspection Parameters,Parâmetros da Inspeção de Qualidade
Quality Inspection Reading,Leitura da Inspeção de Qualidade
Quality Inspection Readings,Leituras da 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 a partir de determinadas quantidades de matéria-prima
Quantity required for Item {0} in row {1},Quantidade necessária para item {0} na linha {1}
Quarter,Trimestre
Quarterly,Trimestral
Quick Help,Ajuda Rápida
Quotation,Cotação
Quotation Date,Data da Cotação
Quotation Item,Item da Cotação
Quotation Items,Itens da Cotação
Quotation Lost Reason,Razão da perda da Cotação
Quotation Message,Mensagem da Cotação
Quotation To,Cotação para
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 Prospectos 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,Aleatório
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 em
Rate and Amount,Taxa e montante
Rate at which Customer Currency is converted to customer's base currency,Taxa na qual a moeda do cliente é convertida para a moeda base do cliente
Rate at which Price list currency is converted to company's base currency,Taxa na qual a moeda da lista de preços é convertida para a moeda base da empresa
Rate at which Price list currency is converted to customer's base currency,Taxa na qual a moeda da lista de preços é convertida para a moeda base do cliente
Rate at which customer's currency is converted to company's base currency,Taxa na qual a moeda do cliente é convertida para a moeda base da empresa
Rate at which supplier's currency is converted to company's base currency,Taxa na qual a moeda do fornecedor é convertida para a moeda base da empresa
Rate at which this tax is applied,Taxa em que este imposto é aplicado
Raw Material,Matéria-prima
Raw Material Item Code,Código de Item de Matérias-Primas
Raw Materials Supplied,Matérias-primas em actualização
Raw Materials Supplied Cost,Custo de fornecimento de Matérias-Primas
Raw material cannot be same as main Item,Matéria-prima não pode ser o mesmo como o principal item
Re-Order Level,Nível para novo pedido
Re-Order Qty,Qtde. para novo pedido
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,Leitura 4
Reading 5,Leitura 5
Reading 6,Leitura 6
Reading 7,Leitura 7
Reading 8,Leitura 8
Reading 9,Leitura 9
Real Estate,imóveis
Reason,Motivo
Reason for Leaving,Motivo da saída
Reason for Resignation,Motivo para Demissão
Reason for losing,Motivo para perder
Recd Quantity,Quantidade Recebida
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. recebida
Received and Accepted,Recebeu e aceitou
Receiver List,Lista de recebedores
Receiver List is empty. Please create Receiver List,"Lista Receiver está vazio. Por favor, crie Lista Receiver"
Receiver Parameter,Parâmetro do recebedor
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,Nota Fiscal Recorrente
Recurring Type,Tipo de recorrência
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 Code,Código de Ref.
Ref SQ,Ref SQ
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,Atualizar
Registration Details,Detalhes de Registro
Registration Info,Informações do Registro
Rejected,Rejeitado
Rejected Quantity,Quantidade rejeitada
Rejected Serial No,Nº de Série Rejeitado
Rejected Warehouse,Almoxarifado Rejeitado
Rejected Warehouse is mandatory against regected item,Armazém Rejeitado é obrigatória na rubrica regected
Relation,Relação
Relieving Date,Data da Liberação
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
Rename,rebatizar
Rename Log,Renomeie Entrar
Rename Tool,Ferramenta de Renomear
Rent Cost,Rent Custo
Rent per hour,Alugar por hora
Rented,Alugado
Repeat on Day of Month,Repita no Dia do Mês
Replace,Substituir
Replace Item / BOM in all BOMs,Substituir item / LDM em todas as LDMs
Replied,Respondeu
Report Date,Data do Relatório
Report Type,Tipo de relatório
Report Type is mandatory,Tipo de relatório é obrigatória
Reports to,Relatórios para
Reqd By Date,Requisições Por Data
Request Type,Tipo de Solicitação
Request for Information,Pedido de Informação
Request for purchase.,Pedido de Compra.
Requested,solicitado
Requested For,solicitadas para
Requested Items To Be Ordered,Itens solicitados devem ser pedidos
Requested Items To Be Transferred,Itens solicitados para ser transferido
Requested Qty,solicitado Qtde
"Requested Qty: Quantity requested for purchase, but not ordered.","Solicitado Qtde: Quantidade solicitada para a compra , mas não ordenado."
Requests for items.,Os pedidos de itens.
Required By,Exigido por
Required Date,Data Obrigatória
Required Qty,Quantidade requerida
Required only for sample item.,Necessário apenas para o item de amostra.
Required raw materials issued to the supplier for producing a sub - contracted item.,Matérias-primas necessárias emitidas para o fornecedor para a produção de um item sub-contratado.
Research,pesquisa
Research & Development,Pesquisa e Desenvolvimento
Researcher,investigador
Reseller,Revendedor
Reserved,reservado
Reserved Qty,reservados Qtde
"Reserved Qty: Quantity ordered for sale, but not delivered.","Reservados Qtde: Quantidade pedida para venda, mas não entregue."
Reserved Quantity,Quantidade Reservada
Reserved Warehouse,Almoxarifado Reservado
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,Reiniciar Filtros
Resignation Letter Date,Data da carta de demissão
Resolution,Resolução
Resolution Date,Data da Resolução
Resolution Details,Detalhes da Resolução
Resolved By,Resolvido por
Rest Of The World,Resto do mundo
Retail,Varejo
Retail & Wholesale,Varejo e Atacado
Retailer,Varejista
Review Date,Data da Revisão
Rgt,Dir.
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}: Account does not match with \
						Purchase Invoice Credit To account",Row {0} : Conta não coincide com \ \ n factura de compra de crédito para conta
"Row {0}: Account does not match with \
						Sales Invoice Debit To account",Row {0} : Conta não coincide com \ \ n vendas fatura de débito em conta
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}: 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 de e \ \ n 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. Não.
SMS Center,Centro de SMS
SMS Control,Controle de SMS
SMS Gateway URL,URL de Gateway para SMS
SMS Log,Log de SMS
SMS Parameter,Parâmetro de SMS
SMS Sender Name,Nome do remetente do SMS
SMS Settings,Definições de SMS
SO Date,Data da OV
SO Pending Qty,Qtde. pendente na OV
SO Qty,SO Qtde
Salary,Salário
Salary Information,Informação sobre salário
Salary Manager,Gerenciador de salário
Salary Mode,Modo de salário
Salary Slip,Folha de pagamento
Salary Slip Deduction,Dedução da folha de pagamento
Salary Slip Earning,Ganhos da folha de pagamento
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 da Estrutura Salarial
Salary Structure Earning,Ganho da Estrutura Salarial
Salary Structure Earnings,Ganhos da Estrutura Salarial
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,Vendas
Sales Analytics,Análise de Vendas
Sales BOM,LDM de Vendas
Sales BOM Help,Ajuda da LDM de Vendas
Sales BOM Item,Item da LDM de Vendas
Sales BOM Items,Itens da LDM de Vendas
Sales Browser,Navegador Vendas
Sales Details,Detalhes de Vendas
Sales Discounts,Descontos de Vendas
Sales Email Settings,Configurações do Email de Vendas
Sales Expenses,Despesas com Vendas
Sales Extras,Extras de Vendas
Sales Funnel,Funil de Vendas
Sales Invoice,Nota Fiscal de Venda
Sales Invoice Advance,Antecipação da Nota Fiscal de Venda
Sales Invoice Item,Item da Nota Fiscal de Venda
Sales Invoice Items,Vendas itens da fatura
Sales Invoice Message,Mensagem da Nota Fiscal de Venda
Sales Invoice No,Nº da Nota Fiscal de Venda
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 Venda
Sales Order Date,Data da Ordem de Venda
Sales Order Item,Item da Ordem de Venda
Sales Order Items,Itens da Ordem de Venda
Sales Order Message,Mensagem da Ordem de Venda
Sales Order No,Nº da Ordem de Venda
Sales Order Required,Ordem de Venda Obrigatória
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,Nome do Parceiro de Vendas
Sales Partner Target,Metas do Parceiro de Vendas
Sales Partners Commission,Vendas Partners Comissão
Sales Person,Vendedor
Sales Person Name,Nome do Vendedor
Sales Person Target Variance Item Group-Wise,Vendas Pessoa Alvo Variance item Group-wise
Sales Person Targets,Metas do Vendedor
Sales Person-wise Transaction Summary,Resumo da transação Pessoa-wise vendas
Sales Register,Vendas Registrar
Sales Return,Retorno de Vendas
Sales Returned,Vendas Devolvido
Sales Taxes and Charges,Impostos e Taxas sobre Vendas
Sales Taxes and Charges Master,Cadastro de Impostos e Taxas sobre Vendas
Sales Team,Equipe de Vendas
Sales Team Details,Detalhes da Equipe de Vendas
Sales Team1,Equipe de Vendas
Sales and Purchase,Compra e Venda
Sales campaigns.,Campanhas de vendas .
Salutation,Saudação
Sample Size,Tamanho da amostra
Sanctioned Amount,Quantidade sancionada
Saturday,Sábado
Schedule,Agendar
Schedule Date,Programação Data
Schedule Details,Detalhes da Agenda
Scheduled,Agendado
Scheduled Date,Data Agendada
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 Obtida
Score must be less than or equal to 5,Pontuação deve ser inferior ou igual a 5
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 itens sub-contratados
"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ê fornece as matérias-primas para o seu fornecedor fabricar este item.
Select Budget Distribution to unevenly distribute targets across months.,Selecione distribuição do orçamento para distribuir metas diferentes para os meses.
"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 DocType,Selecione o DocType
Select Items,Selecione itens
Select Purchase Receipts,Selecione recibos de compra
Select Sales Orders,Selecione as Ordens de Venda
Select Sales Orders from which you want to create Production Orders.,Selecione as Ordens de Venda a partir das quais 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 a Transação
Select Your Language,Selecione seu idioma
Select account head of the bank where cheque was deposited.,Selecione a Conta do banco onde o cheque foi depositado.
Select company name first.,Selecione o nome da empresa por primeiro.
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 fatura será gerada 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
Select your home country and check the timezone and currency.,Selecione o seu país de origem e verificar o fuso horário e moeda.
"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Selecionando &quot;Sim&quot; vai permitir que este item apareça 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 conste na Ordem de Venda, Guia de Remessa"
"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; vai permitir que você crie uma Lista de Materiais mostrando as 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 identificação única para cada entidade deste item que pode ser vista no cadastro do Número de Série.
Selling,Vendas
Selling Settings,Vendendo Configurações
Send,Enviar
Send Autoreply,Enviar Resposta Automática
Send Email,Enviar E-mail
Send From,Enviar de
Send Notifications To,Enviar notificações para
Send Now,Enviar agora
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.,Uma Ordem de Produção separada será criada para cada item acabado.
Serial No,Nº de Série
Serial No / Batch,N º de Série / lote
Serial No Details,Detalhes do Nº de Série
Serial No Service Contract Expiry,Vencimento do Contrato de Serviço com Nº de Série
Serial No Status,Estado do Nº de Série
Serial No Warranty Expiry,Vencimento da Garantia com Nº de Série
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,Serial Series Número
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 \ \ n usando Banco de Reconciliação
Series,série
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,Endereço de Serviço
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 orçamentos para Grupos de Itens neste território. Você também pode incluir a sazonalidade, defininda na Distribuição."
Set as Default,Definir como padrão
Set as Lost,Definir como perdida
Set prefix for numbering series on your transactions,Definir prefixo para séries de numeração em suas transações
Set targets Item Group-wise for this Sales Person.,Estabelecer metas para Grupos de Itens para este Vendedor.
Setting Account Type helps in selecting this Account in transactions.,Definir o Tipo de Conta ajuda na seleção desta Conta nas transações.
Setting up...,Configurar ...
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 e-mail, por exemplo: &quot;empregos@exemplo.com&quot;"
Setup,Configuração
Setup Already Complete!!,Instalação já está completa !
Setup Complete,Instalação concluída
Setup Series,Configuração de Séries
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 de 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.",Mostrar &quot;Em Stock&quot; ou &quot;Fora de Estoque&quot; baseado no estoque disponível neste almoxarifado.
"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,Mostrar uma apresentação de slides no topo da página
Show in Website,Mostrar no site
Show this slideshow at the top of the page,Mostrar esta apresentação de slides no topo da página
Sick Leave,doente Deixar
Signature,Assinatura
Signature to be appended at the end of every email,Assinatura para ser inserida no final de cada e-mail
Single,Único
Single unit of an Item.,Unidade única de um item.
Sit tight while your system is being setup. This may take a few moments.,Sente-se apertado enquanto o sistema está sendo configurado . Isso pode demorar alguns instantes.
Slideshow,Apresentação de slides
Soap & Detergent,Soap & detergente
Software,Software
Software Developer,Software Developer
"Sorry, Serial Nos cannot be merged","Desculpe, os números de ordem não podem ser mescladas"
"Sorry, companies cannot be merged","Desculpe , as empresas não podem ser mescladas"
Source,Fonte
Source File,Source File
Source Warehouse,Almoxarifado de origem
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 da 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.","Especificar as operações , custos operacionais e dar uma operação única não às suas operações."
Split Delivery Note into packages.,Dividir Guia de Remessa em pacotes.
Sports,esportes
Standard,Padrão
Standard Buying,Compra padrão
Standard Rate,Taxa normal
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,começo
Start Date,Data de Início
Start date of current invoice's period,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
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 estatutárias 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 do Estoque
Stock Analytics,Análise do Estoque
Stock Assets,Ativos estoque
Stock Balance,Balanço de Estoque
Stock Entries already created for Production Order ,
Stock Entry,Lançamento no Estoque
Stock Entry Detail,Detalhe do lançamento no Estoque
Stock Expenses,despesas Stock
Stock Frozen Upto,Estoque congelado até
Stock Ledger,Livro de Inventário
Stock Ledger Entry,Lançamento do Livro de Inventário
Stock Ledger entries balances updated,Banco de Ledger Entradas saldos atualizados
Stock Level,Nível de Estoque
Stock Liabilities,Passivo estoque
Stock Projected Qty,Banco Projetada Qtde
Stock Queue (FIFO),Fila do estoque (PEPS)
Stock Received But Not Billed,"Banco recebido, mas não faturados"
Stock Reconcilation Data,Banco de Dados a reconciliação
Stock Reconcilation Template,Estoque a reconciliação Template
Stock Reconciliation,Reconciliação de Estoque
"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,UDM do Estoque
Stock UOM Replace Utility,Utilitário para Substituir UDM do Estoque
Stock UOM updatd for Item {0},Updatd Banco UOM por item {0}
Stock Uom,UDM do Estoque
Stock Value,Valor do Estoque
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'
Stop,Pare
Stop Birthday Reminders,Parar Aniversário Lembretes
Stop Material Request,Solicitação de parada de materiais
Stop users from making Leave Applications on following days.,Pare de usuários de fazer aplicações deixam nos dias seguintes.
Stop!,Pare !
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. Por exemplo &quot;Centavo&quot;
Subcontract,Subcontratar
Subject,Assunto
Submit Salary Slip,Enviar folha de pagamento
Submit all salary slips for the above selected criteria,Enviar todas as folhas de pagamento para os critérios acima selecionados
Submit this Production Order for further processing.,Enviar esta ordem de produção para posterior processamento.
Submitted,Enviado
Subsidiary,Subsidiário
Successful: ,Bem-sucedido:
Successfully allocated,alocados 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 (vendedor), como inscritos no cadastro de fornecedores"
Supplier Account,Fornecedor Conta
Supplier Account Head,Fornecedor Cabeça Conta
Supplier Address,Endereço do Fornecedor
Supplier Addresses and Contacts,Fornecedor Endereços e contatos
Supplier Details,Detalhes do Fornecedor
Supplier Intro,Introdução do 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 do Fornecedor
Supplier Quotation,Cotação do Fornecedor
Supplier Quotation Item,Item da Cotação do Fornecedor
Supplier Reference,Referência do Fornecedor
Supplier Type,Tipo de Fornecedor
Supplier Type / Supplier,Fornecedor Tipo / Fornecedor
Supplier Type master.,Fornecedor Tipo de mestre.
Supplier Warehouse,Almoxarifado do 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 do Fornecedor.
Supplier master.,Fornecedor mestre.
Supplier warehouse where you have issued raw materials for sub - contracting,Almoxarifado do fornecedor onde você emitiu matérias-primas para a subcontratação
Supplier-Wise Sales Analytics,Fornecedor -wise vendas Analytics
Support,Suporte
Support Analtyics,Analtyics Suporte
Support Analytics,Análise do Suporte
Support Email,E-mail de Suporte
Support Email Settings,Suporte Configurações de e-mail
Support Password,Senha do Suporte
Support Ticket,Ticket de Suporte
Support queries from customers.,Suporte a consultas de clientes.
Symbol,Símbolo
Sync Support Mails,Sincronizar E-mails de Suporte
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.","Identificação do usuário do sistema (login). Se for marcado, ele vai se tornar padrão para todos os formulários de RH."
Target  Amount,Valor da meta
Target Detail,Detalhe da meta
Target Details,Detalhes da meta
Target Details1,Detalhes da meta
Target Distribution,Distribuição de metas
Target On,Alvo Em
Target Qty,Qtde. de metas
Target Warehouse,Almoxarifado de destino
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,Tarefas
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,"Categoria imposto não pode ser ' Avaliação ' ou ' Avaliação e total "", como todos os itens não são itens de estoque"
Tax Rate,Taxa de Imposto
Tax and other salary deductions.,Impostos e outras deduções salariais.
"Tax detail table fetched from item master as a string and stored in this field.
Used for Taxes and Charges",Pormenor tabela do Imposto buscados mestre como uma string e armazenada neste campo. \ NUsed dos 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 and Charges,Impostos e Encargos
Taxes and Charges Added,Impostos e Encargos Adicionados
Taxes and Charges Added (Company Currency),Impostos e taxas Adicionado (Moeda Company)
Taxes and Charges Calculation,Cálculo de Impostos e Encargos
Taxes and Charges Deducted,Impostos e Encargos Deduzidos
Taxes and Charges Deducted (Company Currency),Impostos e taxas Deduzido (Moeda Company)
Taxes and Charges Total,Total de Impostos e Encargos
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 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 dos Termos
Terms,condições
Terms and Conditions,Termos e Condições
Terms and Conditions Content,Conteúdos dos Termos e Condições
Terms and Conditions Details,Detalhes dos Termos e Condições
Terms and Conditions Template,Modelo de Termos e Condições
Terms and Conditions1,Termos e Condições
Terretory,terretory
Territory,Território
Territory / Customer,Território / Cliente
Territory Manager,Gerenciador de Territórios
Territory Name,Nome do Território
Territory Target Variance Item Group-Wise,Território Alvo Variance item Group-wise
Territory Targets,Metas do Território
Test,Teste
Test Email Id,Endereço de Email de Teste
Test the Newsletter,Newsletter de Teste
The BOM which will be replaced,A LDM que será substituída
The First User: You,O primeiro usuário : Você
"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;É Item de Estoque&quot; como &quot;Não&quot; e &quot;É Item de Venda&quot; como &quot;Sim&quot;
The Organization,a Organização
"The account head under Liability, in which Profit/Loss will be booked","O chefe conta com Responsabilidade , no qual Lucro / Prejuízo será reservado"
"The date on which next invoice will be generated. It is generated on submit.
",A data em que próxima fatura será gerada.
The date on which recurring invoice will be stop,A data em que fatura recorrente será interrompida
"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).,O primeiro usuário será o System Manager (você pode mudar isso mais tarde) .
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.,O nome da sua empresa para a qual você está configurando o sistema.
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 do peso líquido dos itens)
The new BOM after replacement,A nova LDM após substituição
The rate at which Bill Currency is converted into company's base currency,A taxa na qual a moeda de faturamento é convertida na moeda base da empresa
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.
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.,Não há nada a ser editado.
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.,Houve um erro . Uma razão provável pode ser que você não tenha salvo o formulário. Entre em contato com support@erpnext.com se o problema persistir .
There were errors.,Ocorreram erros .
This Currency is disabled. Enable to use in transactions,Esta moeda é desativado. Ativar para usar em transações
This Leave Application is pending approval. Only the Leave Apporver can update status.,Este pedido de férias está pendente de aprovação . Somente o Leave Apporver pode atualizar status.
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 is a root account and cannot be edited.,Esta é uma conta de root e não pode ser editada.
This is a root customer group and cannot be edited.,Este é um grupo de clientes de raiz e não pode ser editada.
This is a root item group and cannot be edited.,Este é um grupo de itens de raiz e não pode ser editada.
This is a root sales person and cannot be edited.,Esta é uma pessoa de vendas de raiz e não pode ser editado .
This is a root territory and cannot be edited.,Este é um território de raiz e não pode ser editada.
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 transação criada com este prefixo
This will be used for setting rule in HR module,Isso será usado para a definição de regras no módulo RH
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 for tasks.,Tempo de registro para as tarefas.
Time Log {0} must be 'Submitted',Tempo Log {0} deve ser ' enviado '
Time Zone,Fuso horário
Time Zones,Fusos horários
Time and Budget,Tempo e Orçamento
Time at which items were delivered from warehouse,Horário em que os itens foram entregues do almoxarifado
Time at which materials were received,Horário 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,Até a Data
To Date should be same as From Date for Half Day leave,Para data deve ser mesmo a partir da data de licença Meio Dia
To Discuss,Para Discutir
To Do List,Para fazer a lista
To Package No.,Para Pacote Nº.
To Produce,para Produzir
To Time,Para Tempo
To Value,Ao Valor
To Warehouse,Para Almoxarifado
"To add child nodes, explore tree and click on the node under which you want to add more nodes.","Para adicionar nós filho, explorar árvore e clique no nó em que você deseja adicionar mais nós."
"To assign this issue, use the ""Assign"" button in the sidebar.","Para atribuir esse problema a alguém, 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 Imposto:
"To create an Account Head under a different company, select the company and save customer.","Para criar uma Conta, sob uma empresa diferente, selecione a empresa e salve o Cliente."
To date cannot be before from date,Até o momento não pode ser antes a partir da data
To enable <b>Point of Sale</b> features,Para habilitar as características de <b>Ponto de Venda</b>
To enable <b>Point of Sale</b> view,Para habilitar <b> Point of Sale </ b> vista
To get Item Group in details table,Para obter Grupo de Itens 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","Para mesclar , seguintes propriedades devem ser os mesmos para ambos os itens"
"To report an issue, go to ",
"To set this Fiscal Year as Default, click on 'Set as Default'","Para definir esse Ano Fiscal como padrão , clique em ' Definir como padrão '"
To track any installation or commissioning related work after sales,Para rastrear qualquer trabalho relacionado à instalação ou colocação em funcionamento após a venda
"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 série. Isso também pode ser usado 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 pelo nº do lote<br> <b>Por Ex.: Indústria Química, etc</b>"
To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.,Para rastrear itens usando código de barras. Você será capaz de inserir itens na Guia de Remessa e Nota Fiscal de Venda através do escaneamento do código de barras do item.
Tools,Ferramentas
Total,Total
Total Advance,Antecipação Total
Total Allocated Amount,Montante total atribuído
Total Allocated Amount can not be greater than unmatched amount,Montante total atribuído não pode ser maior do que a quantidade inigualável
Total Amount,Valor Total
Total Amount To Pay,Valor total a pagar
Total Amount in Words,Valor Total por extenso
Total Billing This Year: ,Faturamento total deste ano:
Total Claimed Amount,Montante Total Requerido
Total Commission,Total da 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,Total de Ganhos
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 licença
Total Leaves Allocated,Total de licenças alocadas
Total Message(s),Mensagem total ( s )
Total Operating Cost,Custo de Operacional Total
Total Points,Total de pontos
Total Raw Material Cost,Custo Total das matérias-primas
Total Sanctioned Amount,Valor Total Sancionado
Total Score (Out of 5),Pontuação total (sobre 5)
Total Tax (Company Currency),Imposto Total (moeda da empresa)
Total Taxes and Charges,Total de Impostos e Encargos
Total Taxes and Charges (Company Currency),Total de Impostos e Taxas (moeda da empresa)
Total Words,Total de Palavras
Total Working Days In The Month,Total de dias úteis do mês
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 por extenso
Total points for all goals should be 100. It is {0},Total de pontos para todos os objetivos devem ser 100. Ele é {0}
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 Guia de Remessa contra qualquer projeto
Track this Sales Order against any Project,Acompanhar este Ordem de Venda contra qualquer projeto
Transaction,Transação
Transaction Date,Data da 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ência de Material
Transfer Raw Materials,Transferência de Matérias-Primas
Transferred Qty,transferido Qtde
Transportation,transporte
Transporter Info,Informações da Transportadora
Transporter Name,Nome da Transportadora
Transporter lorry number,Número do caminhão da Transportadora
Travel,viagem
Travel Expenses,Despesas de viagem
Tree Type,Tipo de árvore
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 licenças como casual, doença, etc."
Types of Expense Claim.,Tipos de reembolso de despesas.
Types of activities for Time Sheets,Tipos de atividades para quadro de horários
"Types of employment (permanent, contract, intern etc.).","Tipos de emprego ( permanente , contrato, etc estagiário ) ."
UOM Conversion Detail,Detalhe da Conversão de UDM
UOM Conversion Details,Detalhes da Conversão de UDM
UOM Conversion Factor,Fator de Conversão da UDM
UOM Conversion factor is required in row {0},UOM fator de conversão é necessária na linha {0}
UOM Name,Nome da UDM
UOM coversion factor required for UOM {0} in Item {1},Fator coversion UOM necessário para UOM {0} no item {1}
Under AMC,Sob CAM
Under Graduate,Em 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º, par)."
Units/Hour,Unidades/hora
Units/Shifts,Unidades/Turnos
Unmatched Amount,Quantidade incomparável
Unpaid,Não remunerado
Unscheduled,Sem agendamento
Unsecured Loans,Empréstimos não garantidos
Unstop,desentupir
Unstop Material Request,Pedido Unstop material
Unstop Purchase Order,Unstop Ordem de Compra
Unsubscribed,Inscrição Cancelada
Update,Atualizar
Update Clearance Date,Atualizar Data Liquidação
Update Cost,Atualize o custo
Update Finished Goods,Produtos acabados Atualização
Update Landed Cost,Atualização Landed Cost
Update Series,Atualizar Séries
Update Series Number,Atualizar Números de Séries
Update Stock,Atualizar Estoque
"Update allocated amount in the above table and then click ""Allocate"" button",Atualize o montante atribuído na tabela acima e clique no botão &quot;Alocar&quot;
Update bank payment dates with journals.,Atualizar datas de pagamento bancário com livro Diário.
Update clearance date of Journal Entries marked as 'Bank Vouchers',Data de apuramento Atualização de entradas de diário marcado como ' Banco ' Vouchers
Updated,Atualizado
Updated Birthday Reminders,Atualizado Aniversário Lembretes
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 comparecimento a partir de um arquivo CSV.
Upload stock balance via csv.,Carregar saldo de estoque a partir de um arquivo CSV.
Upload your letter head and logo - you can edit them later.,Envie seu cabeça carta e logo - você pode editá-las mais tarde.
Upper Income,Renda superior
Urgent,Urgente
Use Multi-Level BOM,Utilize LDM de Vários Níveis
Use SSL,Use SSL
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 do Usuário
User Remark will be added to Auto Remark,Observação do usuário será adicionado à observação automática
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 selecionar
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 do Usuário
Users with this role are allowed to create / modify accounting entry before frozen date,Os usuários com essa função tem permissão para criar / modificar registro contábil antes da data congelado
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Os usuários com esta função são autorizados a estabelecer contas congeladas e criar / modificar lançamentos contábeis contra contas congeladas
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 até
Valid for Territories,Válido para Territórios
Validate,Validar
Valuation,Avaliação
Valuation Method,Método de Avaliação
Valuation Rate,Taxa de Avaliaçã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,Valor ou Qt
Vehicle Dispatch Date,Veículo Despacho Data
Vehicle No,No veículo
Venture Capital,venture Capital
Verified By,Verificado Por
View Ledger,Ver Ledger
View Now,Ver Agora
Visit report for maintenance call.,Relatório da visita da chamada de manutenção.
Voucher #,vale #
Voucher Detail No,Nº do Detalhe do comprovante
Voucher ID,ID do Comprovante
Voucher No,Nº do comprovante
Voucher No is not valid,No voucher não é válido
Voucher Type,Tipo de comprovante
Voucher Type and Date,Tipo Vale e Data
Walk In,Walk In
Warehouse,armazém
Warehouse Contact Info,Informações de Contato do Almoxarifado
Warehouse Detail,Detalhe do Almoxarifado
Warehouse Name,Nome do Almoxarifado
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,Armazém só pode ser alterado através da entrada / entrega Nota / Recibo de compra
Warehouse cannot be changed for Serial No.,Armazém não pode ser alterado para Serial No.
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,Armazém está faltando na Ordem de Compra
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 required in POS Setting,Armazém exigido em POS Setting
Warehouse where you are maintaining stock of rejected items,Almoxarifado 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-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,Aviso: pedido de férias contém as datas de blocos seguintes
Warning: Material Requested Qty is less than Minimum Order Qty,Aviso: material solicitado Qt é menor do que de ordem mínima Qtde
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 / Detalhes do CAM
Warranty / AMC Status,Garantia / Estado do CAM
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 de Itens do site
Website Item Groups,Grupos de Itens do site
Website Settings,Configurações do site
Website Warehouse,Almoxarifado do site
Wednesday,Quarta-feira
Weekly,Semanal
Weekly Off,Descanso semanal
Weight UOM,UDM de Peso
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Peso é mencionado, \ nPor favor mencionar "" Peso UOM "" muito"
Weightage,Peso
Weightage (%),Peso (%)
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!,"Bem-vindo ao ERPNext . Nos próximos minutos, vamos ajudá-lo a configurar sua conta ERPNext . Experimente e preencha o máximo de informações que você tem mesmo que demore um pouco mais. Ela vai lhe poupar muito tempo mais tarde. Boa Sorte!"
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?,O que ele faz ?
"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 marcadas são &quot;Enviadas&quot;, um pop-up abre automaticamente para enviar um e-mail para o &quot;Contato&quot; associado 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.,Onde as operações de fabricação são realizadas.
Widowed,Viúvo(a)
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 de encerramento do período
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
Workstation,Estação de Trabalho
Workstation Name,Nome da Estação de Trabalho
Write Off Account,Eliminar Conta
Write Off Amount,Eliminar Valor
Write Off Amount <=,Eliminar Valor &lt;=
Write Off Based On,Eliminar Baseado em
Write Off Cost Center,Eliminar Centro de Custos
Write Off Outstanding Amount,Eliminar saldo devedor
Write Off Voucher,Eliminar comprovante
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,Data de Fim de Ano
Year Name,Nome do Ano
Year Start Date,Data de início do ano
Year Start Date and Year End Date are already set in Fiscal Year {0},Ano Data de Início e Fim de Ano Data já estão definidos no ano fiscal de {0}
Year Start Date and Year End Date are not within Fiscal Year.,Ano Data de Início e Fim de Ano Data não estão dentro de Ano Fiscal.
Year Start Date should not be greater than Year End Date,Ano Data de início não deve ser maior do que o Fim de Ano Data
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,Você não está autorizado para definir o valor congelado
You are the Expense Approver for this record. Please Update the 'Status' and Save,Você é o aprovador de despesa para esse registro. Atualize o 'Estado' e salvar
You are the Leave Approver for this record. Please Update the 'Status' and Save,Você é o Leave aprovador para esse registro. Atualize o 'Estado' e salvar
You can enter any date manually,Você pode entrar 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 encomendada.
You can not assign itself as parent account,Você não pode atribuir -se como conta principal
You can not change rate if BOM mentioned agianst any item,Você não pode alterar a taxa de se BOM mencionado agianst qualquer item
You can not enter both Delivery Note No and Sales Invoice No. Please enter any one.,Você não pode entrar tanto de entrega Nota Não e Vendas fatura Não. Por favor entrar em qualquer um.
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.,Você pode enviar este Stock Reconciliação.
You can update either Quantity or Valuation Rate or both.,Você pode atualizar ou Quantidade ou Taxa de Valorização ou ambos.
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.,"Você digitou itens duplicados . Por favor, corrigir e tentar novamente."
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
You must allocate amount before reconcile,Você deve alocar o valor antes de reconciliação
Your Customer's TAX registration numbers (if applicable) or any general information,Os números de inscrição fiscal do seu Cliente (se aplicável) ou qualquer outra informação geral
Your Customers,seus Clientes
Your Login Id,Seu ID de login
Your Products or Services,Seus produtos ou serviços
Your Suppliers,seus Fornecedores
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,Seu vendedor 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 nesta data para contatar o cliente
Your setup is complete. Refreshing...,Sua configuração está concluída. Atualizando ...
Your support email id - must be a valid email - this is where your emails will come!,O seu E-mail de suporte - deve ser um e-mail válido - este é o lugar de onde seus e-mails virão!
[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.,não são permitidos.
assigned by,atribuído pela
"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","por exemplo, kg, Unidade, nº, m"
e.g. VAT,por exemplo IVA
eg. Cheque Number,"por exemplo, Número do cheque"
example: Next Day Shipping,exemplo: Next Day envio
lft,esq.
old_parent,old_parent
rgt,dir.
website page link,link da página do 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} 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 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,{0} não é uma licença válida Aprovador
{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 less than or equal to {1},{0} tem de ser inferior ou igual a {1}
{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 . Refresca
{0} {1} has been modified. Please refresh,{0} {1} foi modificado . Refresca
{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
