 (Half Day),(Meio Dia)
 against same operation,contra a mesma operação
 by Role ,por Função
 cannot be 0,não pode ser 0
 does not belong to the company: ,não pertence à empresa:
 has been freezed. \				Only Accounts Manager can do transaction against this account,foi congelado. \ Apenas Gerente de Contas pode fazer transação contra essa conta
" is less than equals to zero in the system, \						valuation rate is mandatory for this item","é menor do que é igual a zero no sistema, \ taxa de avaliação é obrigatório para esse item"
 is mandatory,é obrigatório(a)
 is mandatory for GL Entry,é obrigatória para a entrada GL
 is not a ledger,não é um livro
 is not active,não está ativo
 is not set,não está definido
 is now the default Fiscal Year. \			Please refresh your browser for the change to take effect.,"é agora o padrão de Ano Fiscal. \ Por favor, atualize seu navegador para que a alteração tenha efeito."
 or the BOM is cancelled or inactive,ou a LDM é cancelada ou inativa
 should be same as that in ,deve ser o(a) mesmo(a) que no(a)
 will become ,ficará
"""Company History""",&quot;Histórico da Empresa&quot;
"""Team Members"" or ""Management""",&quot;Membros da Equipe&quot; ou &quot;Gerenciamento&quot;
%  Delivered,Entregue %
% Amount Billed,Valor faturado %
% Billed,Faturado %
% Completed,% Concluído
% Installed,Instalado %
% Ordered,Pedido %
% Received,Recebido %
% of materials billed against this Delivery Note,% de materiais faturados contra esta Guia de Remessa
% of materials billed against this Purchase Order.,% de materiais faturado contra esta Ordem de Compra.
% of materials billed against this Purchase Receipt,% de materiais faturados contra este Recibo 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 ordered against this Purchase Requisition,% de materiais encomendados contra este Pedido de Compra
% of materials received against this Purchase Order,% de materiais recebidos contra esta Ordem de Compra
"' can not be managed using Stock Reconciliation.\					You can add/delete Serial No directly, \					to modify stock of this item.","&#39;Não pode ser gerido através da Reconciliação. \ Você pode adicionar / excluir Serial Não diretamente, \ para modificar o balanço deste item."
' does not exists in ,&#39;Não existe em
* Will be calculated in the transaction.,* Será calculado na transação.
"**Budget Distribution** helps you distribute your budget across months if you have seasonality in your business.To distribute a budget using this distribution, set this **Budget Distribution** in the **Cost Center**","Distribuição ** ** Orçamento ajuda a distribuir o seu orçamento através meses se tiver sazonalidade na sua business.To distribuir um orçamento usando essa distribuição, definir esta distribuição do orçamento ** ** ** no Centro de Custo **"
**Currency** Master,Cadastro de **Moeda**
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,**Ano Fiscal** representa um Exercício. Todos os lançamentos contábeis e outras transações importantes são monitorados contra o **Ano Fiscal**.
1 Currency = [?] FractionFor e.g. 1 USD = 100 Cent,"1 Moeda = [?] FractionFor por exemplo, 1 USD = 100 Cent"
1. To maintain the customer wise item code and to make them searchable based on their code use this option,1. Para manter o código de item do cliente e para torná-los pesquisáveis ​​com base em seu código use esta opção
12px,12px
13px,13px
14px,14px
15px,15px
16px,16px
2 days ago,Há 2 dias
: It is linked to other active BOM(s),: Está ligado a outra(s) LDM(s) ativa(s)
: Mandatory for a Recurring Invoice.,: Obrigatório para uma Fatura Recorrente.
"<a href=""#!Sales Browser/Customer Group"">To manage Customer Groups, click here</a>","<a href=""#!Sales Browser/Customer Group"">Para gerenciar Grupos de Clientes, clique aqui</a>"
"<a href=""#!Sales Browser/Item Group"">Manage Item Groups</a>","<a href=""#!Sales Browser/Item Group"">Gerenciar Grupos de Itens</a>"
"<a href=""#!Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#!Sales Browser/Territory"">Para gerenciar Território, clique aqui</a>"
"<a href=""#Sales Browser/Customer Group"">To manage Territory, click here</a>","<a href=""#Sales Browser/Customer Group"">Para gerenciar Território, clique aqui</a>"
"<a href=""#Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#Sales Browser/Territory"">Para gerenciar Território, clique aqui</a>"
"<a onclick=""msgprint('<ol>\<li><b>field:[fieldname]</b> - By Field\<li><b>naming_series:</b> - By Naming Series (field called naming_series must be present\<li><b>eval:[expression]</b> - Evaluate an expression in python (self is doc)\<li><b>Prompt</b> - Prompt user for a name\<li><b>[series]</b> - Series by prefix (separated by a dot); for example PRE.#####\</ol>')"">Naming Options</a>","<a onclick=""msgprint('<ol>\<li><b>field:[fieldname]</b> - By Field\<li><b>naming_series:</b> - By Naming Series (field called naming_series must be present\<li><b>eval:[expression]</b> - Evaluate an expression in python (self is doc)\<li><b>Prompt</b> - Prompt user for a name\<li><b>[series]</b> - Series by prefix (separated by a dot); for example PRE.#####\</ol>')"">Opções de nomeação</a>"
<b>Cancel</b> allows you change Submitted documents by cancelling them and amending them.,<b>Cancelar</b> permite alterar documentos enviados cancelando ou corrigindo-os.
"<span class=""sys_manager"">To setup, please go to Setup > Naming Series</span>","<span class=""sys_manager"">Para configurar, por favor, vá para Configuração > Séries Nomeadas</span>"
A,A
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 a Service that is bought, sold or kept in stock.","Um Produto ou um Perviço que é comprado, vendido ou mantido em estoque."
A Supplier exists with same name,Um Fornecedor existe com mesmo nome
A logical Warehouse against which stock entries are made.,Um Almoxarifado lógico contra o qual os lançamentos de estoque são feitos.
A new popup will open that will ask you to select further conditions.,Um novo pop-up será aberto que vai pedir para você selecionar outras condições.
A symbol for this currency. For e.g. $,Um símbolo para esta moeda. Por exemplo: $
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Um distribuidor terceirizado / negociante / agente comissionado / revendedor que vende os produtos da empresas por uma comissão.
A user can have multiple values for a property.,Um usuário pode ter vários valores para uma propriedade.
A+,A+
A-,A-
AB+,AB+
AB-,AB-
AMC Expiry Date,Data de Validade do CAM
ATT,ATT
Abbr,Abrev
About,Sobre
About Us Settings,Configurações do Quem Somos
About Us Team Member,Sobre Membro da Equipe
Above Value,Acima de Valor
Absent,Ausente
Acceptance Criteria,Critérios de Aceitação
Accepted,Aceito
Accepted Quantity,Quantidade Aceita
Accepted Warehouse,Almoxarifado Aceito
Account,Conta
Account Balance,Saldo em Conta
Account Details,Detalhes da Conta
Account Head,Conta
Account Id,Id da Conta
Account Info,Informações da Conta
Account Name,Nome da Conta
Account Type,Tipo de Conta
Account: ,Conta:
"Accounting entry frozen up to this date, nobody can do / modify entry except authorized person","Lançamento contábil congelado até a presente data, ninguém pode fazer / modificar um lançamento, exceto pessoas autorizadas"
Accounting journal entries.,Lançamentos no livro Diário.
Accounts,Contas
Accounts Browser,Navegador de Contas
Accounts Frozen Upto,Contas congeladas até
Accounts Home,Início de Contas
Accounts Payable,Contas a Pagar
Accounts Receivable,Contas a Receber
Action,Ação
Action Detail,Detalhe da ação
Action html,Ação html
Active,Ativo
Active: Will extract emails from ,Ativo: E-mails serão extraídos de
Activity,Atividade
Activity Log,Log de Atividade
Activity Name,Nome da Atividade
Activity Type,Tipo da Atividade
Actual,Real
Actual Amount,Valor 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 End Time,Tempos Final Real
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 Quantity,Quantidade Real
Actual Start Date,Data de Início Real
Actual Start Time,Horário de Início Real
Add,Adicionar
Add / Edit Taxes and Charges,Adicionar / Editar Impostos e Encargos
Add A New Rule,Adicionar uma Nova Regra
Add A Property,Adicione uma Propriedade
Add Attachments,Adicionar Anexos
Add Bookmark,Adicionar marcadores
Add CSS,Adicionar CSS
Add Column,Adicionar Coluna
Add Google Analytics ID: eg. UA-89XXX57-1. Please search help on Google Analytics for more information.,"Adicionar ID do Google Analytics: ex. UA-89XXX57-1. Por favor, procure ajuda no Google Analytics para obter mais informações."
Add Message,Adicionar Mensagem
Add New Permission Rule,Adicionar Nova Regra de Permissão
Add Reply,Adicione Resposta
Add Terms and Conditions for the Material Request. You can also prepare a Terms and Conditions Master and use the Template,Adicione Termos e Condições para a Solicitação de Material. Você também pode preparar um Termos e Condições mestre e usar o modelo
Add Terms and Conditions for the Purchase Receipt. You can also prepare a Terms and Conditions Master and use the Template.,Adicione Termos e Condições para o Recibo de Compra. Você também pode preparar um cadastro de Termos e Condições e usar o Modelo.
Add Terms and Conditions for the Purchase Requisition. You can also prepare a Terms and Conditions Master and use the Template,Adicione Termos e Condições para o Pedido de Compra. Você também pode preparar um cadastro de Termos e Condições e usar o Modelo
"Add Terms and Conditions for the Quotation like Payment Terms, Validity of Offer etc. You can also prepare a Terms and Conditions Master and use the Template","Adicione Termos e Condições para a Cotação como Condições de Pagamento, Validade da Oferta e etc. Você também pode preparar um cadastro de Termos e Condições e usar o Modelo"
Add code as &lt;script&gt;,Adicionar código como &lt;script&gt;
Add custom code to forms,Adicionar código personalizado aos formulários
Add fields to forms,Adicionar campos aos formulários
Add headers for standard print formats,Adicionar cabeçalhos para formatos de impressão padrão
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 To Do,Adicionar à Lista de Tarefas
Add to To Do List of,Adicionar à Lista de Tarefas de
Add/Remove Recipients,Adicionar / Remover Destinatários
"Add/remove users, set roles, passwords etc","Adicionar / remover usuários, definir funções, senhas etc"
Additional Columns,Colunas Adicionais
Additional Conditions,Condições Adicionais
Additional Info,Informações Adicionais
Additional Tables,Tabelas Adicionais
Address,Endereço
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 Line1,Endereço Linha 1
Address Line2,Endereço Linha 2
Address Title,Título do Endereço
Address Type,Tipo de Endereço
Address and other legal information you may want to put in the footer.,Endereço e outras informações legais que você possa querer colocar no rodapé.
Address to be displayed on the Contact Page,O endereço a ser exibida na Página de Contato
Adds a custom field to a DocType,Adiciona um campo personalizado em um DocType
Adds a custom script (client or server) to a DocType,Adiciona um script personalizado (cliente ou servidor) em um DocType
Advance Amount,Quantidade Antecipada
Advance amount,Valor do adiantamento
Advanced Scripting,Scripts Avançados
Advanced Settings,Configurações Avançadas
Advances,Avanços
Advertisement,Anúncio
After Sale Installations,Instalações Pós-Venda
"After cancelling the Purchase Requisition, a dialog box will ask you reason for cancellation which will be reflected in this field","Depois de cancelar o Pedido de Compra, uma caixa de diálogo irá pedir-lhe a razão para o cancelamento que será refletido neste campo"
Against,Contra
Against Account,Contra Conta
Against Docname,Contra Docname
Against Doctype,Contra Doctype
Against Document Date,Contra Data do Documento
Against Document Detail No,Contra Detalhe do Documento nº 
Against Document No,Contra Documento nº
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 Purchase Invoice,Contra a Nota Fiscal de Compra
Against Sales Invoice,Contra a Nota Fiscal de Venda
Against Voucher,Contra Comprovante
Against Voucher Type,Contra Tipo de Comprovante
Agent,Agente
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials","Grupo agregado de Itens ** ** em outro item **. ** Isso é útil se você está empacotando um certo ** ** Itens em um pacote e você manter o estoque dos itens embalados ** ** e não agregar o item **. ** O pacote ** ** item terá &quot;é o item da&quot; como &quot;Não&quot; e &quot;é o item de vendas&quot; como &quot;Sim&quot;, por exemplo:. Se você está vendendo laptops e mochilas separadamente e têm um preço especial se o cliente compra tanto , então o Laptop Backpack + será uma nova Vendas BOM Item.Note: BOM = Bill of Materials"
Aging Date,Data de Envelhecimento
All Addresses.,Todos os Endereços.
All Contact,Todo Contato
All Contacts.,Todos os contatos.
All Customer Contact,Todo Contato do Cliente
All Day,Dia de Todos os
All Employee (Active),Todos os Empregados (Ativos)
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 Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Todas as Transações de Vendas podem ser marcadas contra diversos **Vendedores** de modo que você possa definir e monitorar metas.
All Supplier Contact,Todo Contato de Fornecedor
All attendance dates inbetween selected Attendance From Date and Attendance To Date will come in the template with employees list.,Todas as datas de comparecimento selecionadas entre a Data Inicial de Comparecimento e a Data Final de Comparecimento virão no modelo com a lista de funcionários.
"All export related fields like currency, conversion rate, export total, export grand total etc are available in <br>Delivery Note, POS, Quotation, Sales Invoice, Sales Order etc.","Todos os campos de exportação relacionados como moeda, taxa de conversão, o total de exportação, etc exportação de total estão disponíveis em <br> Nota de Entrega, POS, cotação, nota fiscal de venda, Ordem de vendas etc"
"All import related fields like currency, conversion rate, import total, import grand total etc are available in <br>Purchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.","Todos os campos de importação relacionados como moeda, taxa de conversão total de importação, etc importação de total estão disponíveis em <br> Recibo de compra, cotação Fornecedor, Nota Fiscal de Compra, Ordem de Compra, etc"
All items have already been transferred \				for this Production Order.,Todos os itens já foram transferidos \ para esta Ordem de Produção.
"All possible Workflow States and roles of the workflow. <br>Docstatus Options: 0 is""Saved"", 1 is ""Submitted"" and 2 is ""Cancelled""","Todos os possíveis Estados de Fluxo de Trabalho e as funções do fluxo de trabalho. <br> Docstatus Opções: 0 é &quot;Salvo&quot;, 1 é &quot;Enviado&quot; e 2 é &quot;Cancelado&quot;"
Allocate,Alocar
Allocate leaves for the year.,Alocar licenças para o ano.
Allocated (%),Alocados (%)
Allocated Amount,Montante alocado
Allocated Budget,Orçamento alocado
Allocated amount,Montante alocado
Allow Attach,Permitir Anexar
Allow Bill of Materials,Permitir Lista de Materiais
Allow Import,Permitir a importação
Allow Import via Data Import Tool,Permitir a importação de dados através de ferramenta de importação
Allow Negative Balance,Permitir saldo negativo
Allow Negative Stock,Permitir Estoque Negativo
Allow Production Order,Permitir Ordem de Produção
Allow Rename,Permitir Renomear
Allow Samples,Permitir Amostras
Allow User,Permitir que o usuário
Allow Users,Permitir que os usuários
Allow on Submit,Permitir ao Enviar
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 the following users to make Leave Applications for block days.,Permitir que os usuários a seguir para fazer aplicações deixam para os dias de bloco.
Allow this price in purchase related forms,Permitir esse preço em formulários de compra relacionados
Allow this price in sales related forms,Permitir esse preço em formulários de venda relacionados
Allow user to login only after this hour (0-24),Permitir que o usuário faça o login somente após esta hora (0-24)
Allow user to login only before this hour (0-24),Permitir que o usuário faça o login somente antes desta hora (0-24)
Allowance Percent,Percentual de tolerância
Allowed,Permitido
Amend,Corrigir
Amended From,Corrigido De
Amendment Date,Data da Correção
Amount,Quantidade
Amount <=,Quantidade &lt;=
Amount >=,Quantidade&gt; =
Amount*,Quantidade*
"An icon file with .ico extension. Should be 16 x 16 px. Generated using a favicon generator. [<a href=""http://favicon-generator.org/"" target=""_blank"">favicon-generator.org</a>]","Um arquivo de ícone com extensão .ico. Deve ser de 16 x 16 px. Gerado usando um gerador de favicon. [ <a href=""http://favicon-generator.org/"" target=""_blank"">favicon-generator.org</a> ]"
Analytics,Analítica
Answer,Resposta
"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."
Applicable Holiday List,Lista de Férias 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)
Applicable only if valuation method is moving average,Aplicável apenas se o método de avaliação é a média móvel
Applicant Name,Nome do Requerente
Applicant for a Job,Candidato a um Emprego
Applicant for a Job (extracted from jobs email).,Candidato a um Emprego (extraído de e-mail empregos).
Applications for leave.,Pedidos de licença.
Applies to Company,Aplica-se a Empresa
Apply / Approve Leaves,Aplicar / Aprovar Licenças
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
Approval Status,Estado da Aprovação
Approved,Aprovado
Approver,Aprovador
Approving Role,Função Aprovadora
Approving User,Usuário Aprovador
Are you sure you want to delete the attachment?,Tem certeza de que deseja excluir o anexo?
Arial,Arial
Arrear Amount,Quantidade em atraso
"As a best practice, do not assign the same set of permission rule to different Roles instead set multiple Roles to the User","Como uma boa prática, não atribuia o mesmo conjunto de regras de permissão para diferentes Funções, em vez disso, estabeleça múltiplas Funções ao Usuário"
As existing qty for item: ,Como qtde. existente para o item:
As per Stock UOM,Como UDM do Estoque
Ascending,Ascendente
Assign To,Atribuir a
Assigned By,Atribuído por
Associate a DocType to the Print Format,Associar um DocType para o Formato de Impressão
Atleast one warehouse is mandatory,Pelo menos um almoxarifado é obrigatório
Attach,Anexar
Attach Document Print,Anexar Cópia do Documento
Attachments,Anexos
Attempted to Contact,Tentou entrar em Contato
Attendance,Comparecimento
Attendance Control Panel,Painel de Controle de Comparecimento
Attendance Date,Data de Comparecimento
Attendance Details,Detalhes do Comparecimento
Attendance From Date,Data Inicial de Comparecimento
Attendance To Date,Data Final de Comparecimento
Attendance record.,Registro de comparecimento.
Attributions,Atribuições
Authorization Control,Controle de autorização
Authorization Rule,Regra de autorização
Authorized Role (Frozen Entry),Função Autorizada (Lançamento Congelado)
Authourized Role (Frozen Entry),Função Autorizada (Lançamento Congelado)
Auto Email Id,Endereço dos E-mails Automáticos
Auto Name,Nome Auto
Auto generated,Gerado Automaticamente
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 updated via Stock Entry of type Manufacture/Repack,Atualizado automaticamente através do lançamento de Estoque do tipo Fabricação/Reempacotamento
Autoreply when a new mail is received,Responder automaticamente quando um novo e-mail é recebido
Available Qty at Warehouse,Qtde Disponível em Almoxarifado
"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, Nota Fiscal de Compra, Ordem de Produção, Ordem de Compra, Recibo de compra, nota fiscal de venda, pedidos de vendas, entrada de material, quadro de horários"
Average Discount,Desconto Médio
B,B
B+,B+
B-,B-
BILL,BILL
BILLJ,BILLJ
BOM,LDM
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 replaced,LDM substituída
Background Color,Cor de Fundo
Background Image,Imagem de Fundo
Background shade of the top menu bar,Sombra de fundo da barra do menu superior
Bank,Banco
Bank A/C No.,Nº Cta. Bancária
Bank Account,Conta Bancária
Bank Account No.,Nº Conta Bancária
Bank Balance,Saldo Bancario
Bank Name,Nome do Banco
Bank Reconciliation,Reconciliação Bancária
Bank Reconciliation Detail,Detalhe da Reconciliação Bancária
Bank Voucher,Comprovante Bancário
Bank or Cash,Banco ou Dinheiro
Banner,Faixa
Banner HTML,Faixa HTML
Barcode,Código de barras
Based On,Baseado em
Basic Info,Informações Básicas
Basic Information,Informações Básicas
Basic Rate,Taxa Básica
Basic Rate*,Taxa Básica*
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
Begin this page with a slideshow of images,Comece esta página com um slideshow de imagens
Better Prospects,Melhores perspectivas
Bill Date,Data de Faturamento
Bill No,Fatura Nº
Bill of Material to be considered for manufacturing,Lista de Materiais a serem considerados para a fabricação
Bill of Materials,Lista de Materiais
Bill of Materials (BOM),Lista de Materiais (LDM)
Billed,Faturado
Billed Amt,Valor Faturado
Billed Quantity,Quantidade Faturada
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
Bio will be displayed in blog section etc.,Bio será exibido em seção do blog etc
Birth Date,Data de Nascimento
Black,Preto
Blob,Gota
Block Date,Bloquear Data
Block Days,Dias bloco
Block Holidays on important days.,Bloquear feriados em dias importantes.
Block leave applications by department.,Bloquear deixar aplicações por departamento.
Blog,Blog
Blog Intro,Blog Intro
Blog Subscriber,Assinante do Blog
Blog entry.,Entrada do Blog.
Blood Group,Grupo sanguíneo
Bookmarks,Marcadores
Branch,Ramo
Brand,Marca
Brand HTML,Marca HTML
Brand Name,Marca
"Brand is what appears on the top-right of the toolbar. If it is an image, make sure ithas a transparent background and use the &lt;img /&gt; tag. Keep size as 200px x 30px","Marca é o que aparece no canto superior direito da barra de ferramentas. Se for uma imagem, ithas certeza de um fundo transparente e usar a tag /&gt; &lt;img. Manter o tamanho como 200px x 30px"
Brand master.,Cadastro de Marca.
Branding and Printing,Identificação de Marca e Impressão
Brands,Marcas
Breakdown,Colapso
Budget,Orçamento
Budget Allocated,Orçamento Alocado
Budget Control,Controle de Orçamento
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
Bulk Email,E-mail em massa
Bulk Email records.,Registros de e-mail em massa.
Bundle items at time of sale.,Empacotar itens no momento da venda.
Button,Botão
Buyer of Goods and Services.,Comprador de Mercadorias e Serviços.
Buying,Compras
Buying Cost,Custo de compra
Buying Cost will be updated from Purchase Orders and Purchase Receipts. <br>The buying cost will calculated by moving average method.,O Custo de Compra será atualizado a partir de Ordens de Compra e Recibos de Compra. <br> O custo de compra será calculado pelo método de média móvel.
Buying Home,Início de Compras
By,Por
C,C
C-FORM/,FORMULÁRIO-C /
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
CGHelp,CGHelp
CI/2010-2011/,CI/2010-2011 /
COMM-,COMM-
CSS,CSS
CTC,CTC
CUST,CUST
CUSTMUM,CUSTMUM
Calculate Charges,Calcular Encargos
Calculate Tax,Calcular Imposto
Calculate Taxes and Charges,Calcular Impostos e Encargos
Calculate Total Score,Calcular a Pontuação Total
Calendar,Calendário
Calendar Events,Calendário de Eventos
Call,Chamar
Campaign,Campanha
Campaign Name,Nome da Campanha
Can only be exported by users with role 'Report Manager',Só podem ser exportados por usuários com função de &quot;Gerente de Relatórios&quot;
Cancel,Cancelar
Cancel Reason,Motivo do Cancelar
Cancel permission also allows the user to delete a document (if it is not linked to any other document).,Permissão de cancelamento também permite ao usuário excluir um documento (se ele não está vinculado a qualquer outro documento).
Cancelled,Cancelado
Cannot ,Não pode
Cannot approve leave as you are not authorized to approve leaves on Block Dates.,Não pode aprovar deixar que você não está autorizado a aprovar folhas em datas Block.
Cannot continue.,Não pode continuar.
Capacity,Capacidade
Capacity Units,Unidades de Capacidade
Career History,Histórico da carreira
Carry Forward,Encaminhar
Carry Forwarded Leaves,Encaminhar Licenças
Cash,Numerário
Cash Voucher,Comprovante de Caixa
Cash/Bank Account,Conta do Caixa/Banco
Category,Categoria
Category of customer as entered in Customer master,Categoria de cliente como no Cadastrado de Cliente
Cell Number,Telefone Celular
Center,Centro
"Certain documents should not be changed once final, like an Invoice for example. The final state for such documents is called <b>Submitted</b>. You can restrict which roles can Submit.","Alguns documentos não devem ser alterados uma vez finalizados, como uma nota fiscal, por exemplo. O estado final de tais documentos é chamado <b>Enviado.</b> Você pode restringir as funções que podem Enviar."
Certificate,Certidão
Challan Date,Data do Recibo
Challan No,Nº do Recibo
Change UOM for an Item.,Alterar UDM de um item.
Change background fonts etc,"Alterar fontes, fundo, etc"
"Change entry properties (hide fields, make mandatory etc)","Alterar as propriedades do lançamento (ocultar campos, tornar obrigatório, etc)"
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,Carga
Chargeable,Taxável
Chart of Accounts,Plano de Contas
Chart of Cost Centers,Plano de Centros de Custo
Chat,Conversar
Cheating FieldPlease do not delete ,Engano FieldPlease não exclua
Check,Verificar
Check / Uncheck roles assigned to the Profile. Click on the Role to find out what permissions that Role has.,Marque / Desmarque funções atribuídas ao perfil. Clique sobre a Função para verificar que permissões a função tem.
Check all the items below that you want to send in this digest.,Marque todos os itens abaixo que você deseja enviar neste resumo.
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 make this the default letter head in all prints,Marque esta opção para tornar este o cabeçalho padrão em todas as impressões
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
Checked,Marcado
"Checking Operator (To Fld, Operator, From Fld)","Verificando Operador (Para Fld, Operador, De Fld)"
Cheque,Cheque
Cheque Date,Data do Cheque
Cheque Number,Número do cheque
Child Tables are shown as a Grid in other DocTypes.,Tabelas-filhas são mostradas como uma grade nos outros DocTypes.
City,Cidade
City/Town,Cidade / Município
Claim Amount,Valor Requerido
Claims for expenses made on behalf of the organization.,Os pedidos de reembolsos por despesas feitas em favor da organização.
Class / Percentage,Classe / Percentual
Classification of Customers by region,Classificação de Clientes por região
Clear Cache & Refresh,Limpar Cache &amp; Atualizar
Clear Pending,Limpar Pendentes
Clear Table,Limpar Tabela
Clearance Date,Data de Liberação
Click on button in the 'Condition' column and select the option 'User is the creator of the document',Clique no botão na coluna &#39;Condição&#39; e selecione a opção &quot;Usuário é o criador do documento&#39;
Click to Expand / Collapse,Clique para Expandir / Recolher
Client,Cliente
Client Script,Script de Cliente
Closed,Fechado
Closing Account Head,Conta de Fechamento
Closing Date,Data de Encerramento
Closing Fiscal Year,Encerramento do exercício fiscal
CoA Help,Ajuda CoA
Code,Código
Cold Calling,Cold Calling
Collections,Coleções
Color,Cor
Column Break,Quebra de coluna
Columns,Colunas
Comma separated list of email addresses,Lista separada por vírgulas de endereços de e-mail
Comment,Comentário
Comment By,Comentário por
Comment By Fullname,Comentário por Nome Completo
Comment Date,Data do Comentário
Comment Docname,Comentário docName
Comment Doctype,Comentário Doctype
Comment Time,Horário do Comentário
Comments,Comentários
Commission Rate,Taxa de Comissão
Commission Rate (%),Taxa de Comissão (%)
Commission partners and targets,Parceiros de comissão e metas
Communication,Comunicação
Communication HTML,Comunicação HTML
Communication History,Histórico da comunicação
Communication Log,Log de Comunicação
Communication Medium,Meio de comunicação
Communication by,Comunicação por
Communication log.,Log de Comunicação.
Communication type,Tipo de comunicação
Company,Empresa
Company Control,Controle da Empresa
Company Details,Detalhes da Empresa
Company History,Histórico da Empresa
Company History Heading,Título do Histórico da Empresa
Company Info,Informações da Empresa
Company Introduction,Introdução da Empresa
Company Name,Nome da Empresa
Company branches.,Filiais da Empresa.
Company departments.,Departamentos da Empresa.
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"
Complaint,Reclamação
Complete By,Completar em
Completed,Concluído
Completed Qty,Qtde concluída
Completion Date,Data de Conclusão
Completion Status,Estado de Conclusão
Confirmed orders from Customers.,Pedidos confirmados de clientes.
Consider Tax or Charge for,Considere Imposto ou Encargo para
"Consider this Price List for fetching rate. (only which have ""For Buying"" as checked)",Considere esta Lista de Preços para a obtenção do valor. (Só onde &quot;Para Comprar&quot; estiver marcado)
Consultant,Consultor
Consumed Qty,Qtde consumida
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 Us Settings,Configurações do Fale Conosco
Contact in Future,Fale no Futuro
"Contact options, like ""Sales Query, Support Query"" etc each on a new line or separated by commas.","Opções de contato, como &quot;Consulta de Vendas, Consulta de suporte&quot;, etc cada uma em uma nova linha ou separadas por vírgulas."
Contacted,Contactado
Content,Conteúdo
Content Type,Tipo de Conteúdo
Content in markdown format that appears on the main side of your page,Conteúdos em formato markdown que aparecem no lado principal de sua página
Content web page.,Página web de conteúdo.
Contra Voucher,Comprovante de Caixa
Contract End Date,Data Final do contrato
Control Panel,Painel de Controle
Conversion Factor,Fator de Conversão
Conversion Rate,Taxa de Conversão
Convert into Recurring Invoice,Converter em Nota Fiscal Recorrente
Converted,Convertido
Copyright,Direitos autorais
Core,Núcleo
Cost Center,Centro de Custos
Cost Center Details,Detalhes do Centro de Custo
Cost Center Name,Nome do Centro de Custo
Cost Center must be specified for PL Account: ,Centro de custos deve ser especificado para Conta PL:
Cost to Company,Custo para Empresa
Costing,Custeio
Country,País
Country Name,Nome do País
Create,Criar
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 Production Orders,Criar Ordens de Produção
Create Receiver List,Criar Lista de Receptor
Create Salary Slip,Criar Folha de Pagamento
"Create a price list from Price List master and enter standard ref rates against each of them. On selection of a price list in Quotation, Sales Order or Delivery Note, corresponding ref rate will be fetched for this item.","Criar uma lista de preços a partir do cadastro de Lista de Preços e introduzir valores padrão de ref. para cada um deles. Na seleção de uma lista de preços em Cotação, Ordem de Venda, ou Guia de Remessa, o valor de ref. correspondente será buscado para este item."
Create and Send Newsletters,Criar e enviar Newsletters
Created Account Head: ,Chefe Conta criada:
Created Customer Issue,Problema do Cliente Criado
Created Group ,Grupo criado
Created Opportunity,Oportunidade Criada
Created Support Ticket,Ticket de Suporte Criado
Creates salary slip for above mentioned criteria.,Cria folha de pagamento para os critérios acima mencionados.
Credit,Crédito
Credit Amt,Montante 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
Criteria Name,Nome dos Critérios
Cross List Item Group,Grupo de Itens da Lista Cruzada
Cross Listing of Item in multiple groups,Listagem Cruzada dos itens em múltiplos grupos
Currency,Moeda
Currency & Price List,Moeda e Lista de Preços
Currency Format,Formato da Moeda
Currency Name,Nome da Moeda
Current Accommodation Type,Tipo de Acomodação atual
Current Address,Endereço Atual
Current BOM,LDM atual
Current Fiscal Year,Ano Fiscal Atual
Current Stock,Estoque Atual
Current Stock UOM,UDM de Estoque Atual
Current Value,Valor Atual
Current status,Estado Atual
Cust/Supp Address,Endereço do Cliente/Fornecedor
Cust/Supp Name,Nome do Cliente/Fornecedor
Custom,Personalizado
Custom Autoreply Message,Mensagem de resposta automática personalizada
Custom CSS,CSS personalizado
Custom Field,Campo personalizado
Custom Message,Mensagem personalizada
Custom Query,Consulta personalizada
Custom Reports,Relatórios personalizados
Custom Script,Script personalizado
Custom Startup Code,Código de inicialização personalizado
Custom?,Personalizado?
Customer,Cliente
Customer / Item Name,Cliente / Nome do item
Customer Account,Conta de Cliente
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 Name,Nome do grupo de Clientes
Customer Intro,Introdução do Cliente
Customer Issue,Questão do Cliente
Customer Issue No,Nº da Questão do Cliente
Customer Issue against a Serial No (warranty).,Questão do Cliente contra um Nº de Série (garantia).
Customer Master created by ,Cadastro de Clientes criado por
Customer Name,Nome do cliente
Customer Type,Tipo de Cliente
Customer classification tree.,Árvore de classificação do cliente.
Customer database.,Banco de dados do cliente.
Customer's Currency,Moeda do Cliente
Customer's Item Code,Código do Item do Cliente
Customer's Vendor,Vendedor do cliente
Customer's currency,Moeda do Cliente
"Customer's currency - If you want to select a currency that is not the default currency, then you must also specify the Currency Conversion Rate.","Moeda do cliente - Se você deseja selecionar uma moeda que não é a moeda padrão, então você também deve especificar a taxa de conversão."
Customer/Supplier,Cliente / Fornecedor
Customerwise Discount,Desconto referente ao Cliente
Customize,Personalize
Customize Form,Personalize Formulário
Customize Form Field,Personalize campo de formulário
"Customize Label, Print Hide, Default etc.","Personalize Etiquetas, Cabeçalhos, Padrões, etc"
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,DN
DN Detail,Detalhe DN
Daily,Diário
"Daily, weekly, monthly email Digests","Resumos diários, semanais e mensais por e-mail"
Danger,Perigo
Data,Dados
Data Import,Importação de Dados
Data Import Tool,Ferramenta de Importação de Dados
Database,Banco de dados
Database of potential customers.,Banco de dados de clientes potenciais.
Date,Data
Date Format,Formato da data
Date Of Retirement,Data da aposentadoria
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 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
Date on which the lead was last contacted,Última data em que o Prospecto foi contatado
Dates,Datas
Datetime,Datetime
Days for which Holidays are blocked for this department.,Dias para que feriados são bloqueados para este departamento.
Dealer,Revendedor
Dear,Caro
Debit,Débito
Debit Amt,Montante de Débito
Debit Note,Nota de Débito
Debit To,Débito Para
Debit or Credit,Débito ou crédito
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 Commission Rate,Taxa de Comissão padrão
Default Company,Empresa padrão
Default Cost Center,Centro de Custo 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 Home Page,Página Inicial padrão
Default Home Pages,Páginas Iniciais 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 Price List Currency,Moeda padrão da Lista de Preços
Default Print Format,Formato de impressão padrão
Default Product Category,Categoria de produto 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 Reserved Warehouse,Almoxarifado Reservado padrão
Default Sales Partner,Parceiro de vendas padrão
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 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 Valuation Method,Método de Avaliação padrão
Default Value,Valor padrão
Default Warehouse Type,Tipo de Almoxarifado padrão
"Default: ""Contact Us""",Default: &quot;Fale Conosco&quot;
"Default: ""Product Search""",Padrão: &quot;Pesquisa de Produto&quot;
DefaultValue,Valor padrão
Defaults,Padrões
"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>"
Define Rule,Definir regra
Defines actions on states and the next step and allowed roles.,Define ações em estados e no próximo passo e funções permitidos.
Defines workflow states and rules for a document.,Define os estados do fluxo de trabalho e regras para um documento.
Delete,Excluir
Delivered,Entregue
Delivered Items To Be Billed,Itens entregues a serem faturados
Delivered Qty,Qtde entregue
Delivery (shipment) to customers.,Entrega (embarque) para os clientes.
Delivery Address,Endereço de entrega
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 Packing Item,Item do Pacote da Guia de Remessa
Delivery Note Required,Guia de Remessa Obrigatória
Delivery Status,Estado da entrega
Delivery Time,Prazo de entrega
Department,Departamento
Depend on LWP,Depende do LWP
Depends On,Depende
Depends on LWP,Dependem do LWP
Descending,Descendente
Description,Descrição
Description HTML,Descrição HTML
"Description for listing page, in plain text, only a couple of lines.","Descrição página de listagem, em texto simples, apenas um par de linhas."
Description of a Job Opening,Descrição de uma vaga de emprego
Desert,Deserto
Designation,Designação
Desktop,Área de trabalho
Detail Name,Nome do Detalhe
Detailed Breakup of the totals,Detalhamento dos totais
Details,Detalhes
Did not add.,Não adicionou.
Did not cancel,Não cancelou
Did not save,Não salvou
Difference,Diferença
"Different ""States"" this document can exist in. Like ""Open"", ""Pending Approval"" etc.","&quot;Estados&quot; diferentes em que esse documento pode existir. Como &quot;Aberto&quot;, &quot;Aprovação Pendente&quot;, etc"
Disable Rounded Total,Desativar total arredondado
Disabled,Desativado
Disabled Filters,Filtros desativados
Discount  %,% De desconto
Discount %,% De desconto
Discount (%),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(%),Desconto (%)
Display,Exibir
Display Settings,Configurações de exibição
Display all the individual items delivered with the main items,Exibir todos os itens individuais entregues com os itens principais
Distinct unit of an Item,Unidade distinta de um item
Distribute transport overhead across items.,Distribuir o custo de transporte através dos itens.
Distribution Id,Id da distribuição
Distribution Name,Nome da distribuição
Distributor,Distribuidor
Divorced,Divorciado
Do not show any symbol like $ etc next to currencies.,Não mostrar qualquer símbolo como US $ etc ao lado de moedas.
Doc Name,Nome do Documento
Doc Status,Estado do Documento
Doc Type,Tipo do Documento
DocField,DocField
DocPerm,DocPerm
DocType,DocType
DocType Details,Detalhes do DocType
DocType Label,Etiqueta do DocType
DocType Mapper,Mapeador do DocType
DocType is a Table / Form in the application.,DocType é uma Tabela / Formulário na aplicação.
DocType on which this Workflow is applicable.,DocType em que este fluxo de trabalho é aplicável.
DocType or Field,DocType ou Campo
Document,Documento
Document Description,Descrição do documento
Document Status transition from ,Transição do estado do Documento de
Document Type,Tipo de Documento
Document is only editable by users of role,Documento só é editável por usuários da função
Document to rename,Documento para renomear
Documentation,Documentação
Documents,Documentos
Domain List,Lista de Domínios
Download Backup,Baixar o Backup
Download Materials Required,Baixar Materiais Necessários
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
Draft,Rascunho
Drafts,Rascunhos
Drag to sort columns,Arraste para classificar colunas
Due Date,Data de Vencimento
Duration,Duração
EMP/,EMP /
ESIC CARD No,Nº CARTÃO ESIC
ESIC No.,Nº ESIC.
Earning,Ganho
Earning & Deduction,Ganho &amp; Dedução
Earning Type,Tipo de Ganho
Earning1,Earning1
Edit,Editar
Editable,Editável
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
Eligible Amount,Montante elegível
Email,E-mail
Email (By company),E-mail (por empresa)
Email Digest,Resumo por E-mail
Email Digest Settings,Configurações do Resumo por E-mail
Email Host,Host do e-mail
Email Id,Endereço de e-mail
"Email Id must be unique, already exists for: ","Endereço de e-mail deve ser único, já existe para: "
"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 Login,Login do e-mail
Email Password,Senha do e-mail
Email Sent,E-mail enviado
Email Sent?,E-mail enviado?
Email Settings,Configurações de e-mail
Email Settings for Outgoing and Incoming Emails.,Configurações de e-mail para e-mails enviados e recebidos.
Email Signature,Assinatura de e-mail
Email Use SSL,Usar SSL no e-mail
"Email addresses, separted by commas","Endereços de email, separados por vírgulas"
"Email settings for jobs email id ""jobs@example.com""",Configurações de e-mail para e-mail de empregos &quot;empregos@exemplo.com&quot;
"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;"
Embed image slideshows in website pages.,Incorporar apresentações de imagem em páginas do site.
Emergency Contact Details,Detalhes do contato de emergência
Emergency Phone Number,Número do telefone de emergência
Employee,Funcionário
Employee Designation.,Designação 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 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 Balance,Equilíbrio Leave empregado
Employee Name,Nome do Funcionário
Employee Number,Número do Funcionário
Employee Records to be created by ,Registros de Funcionário a serem criados por
Employee Setup,Configuração do Funcionário
Employee Training,Treinamento de funcionários
Employee Type,Tipo de empregado
Employee grades,Notas do funcionário
Employee record is created using selected field. ,Registro de funcionário é criado usando o campo selecionado.
Employee records.,Registros de funcionários.
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
Enables <b>More Info.</b> in all documents,Habilitar <b>Mais informações.</b> em todos os documentos
Encashment Date,Data da cobrança
End Date,Data final
End date of current invoice's period,Data final do período de fatura atual
End of Life,Fim de Vida
Ends on,Termina em
Enter Email Id to receive Error Report sent by users.E.g.: support@iwebnotes.com,Digite o Id-mail para receber Relatório de erros enviados por users.Eg: support@iwebnotes.com
Enter Form Type,Digite o Tipo de Formulário
Enter Row,Digite a Linha
Enter campaign name if the source of lead is campaign.,Digite o nome da campanha se a origem do Prospecto foi uma campanha.
"Enter default value fields (keys) and values. If you add multiple values for a field, the first one will be picked. These defaults are also used to set ""match"" permission rules. To see list of fields, go to <a href=""#Form/Customize Form/Customize Form"">Customize Form</a>.","Digite campos de valor padrão (chaves) e valores. Se você adicionar vários valores para um campo, o primeiro vai ser escolhido. Esses padrões são usados também para definir regras de permissão de &quot;combinação&quot;. Para ver a lista de campos, vá para <a href=""#Form/Customize Form/Customize Form"">Personalizar formulário</a> ."
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 domain names associated to this website, each on a new line","Digite os nomes de domínio associados a este site, cada um em uma nova linha"
"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 message,Digite a mensagem
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 the date by which payments from customer is expected against this invoice.,Digite a data em que o pagamento do cliente é esperado para esta fatura.
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
Entries,Lançamentos
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.
Error,Erro
Estimated Material Cost,Custo estimado de Material
Event,Evento
Event Individuals,Indivíduos do Evento
Event Role,Função do Evento
Event Roles,Funções do Evento
Event Type,Tipo de Evento
Event Updates,Atualizações do Eento
Event User,Usuário do Evento
Example:,Exemplo:
Exchange Rate,Taxa de Câmbio
Excise Page Number,Número de página do imposto
Excise Voucher,Comprovante do imposto
Execute,Executar
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 Delivery Date,Data de entrega prevista
Expected End Date,Data Final prevista
Expected Start Date,Data Inicial prevista
Expense Account,Conta de Despesas
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 Date,Data da despesa
Expense Details,Detalhes da despesa
Expense Head,Conta de despesas
Expenses Booked,Despesas agendadas
Expiry Date,Data de validade
Export,Exportar
Exports,Exportações
External,Externo
Extra Condition,Condição extra
Extract Emails,Extrair e-mails
Extract Job Applicant from jobs email id e.g. jobs@example.com,"Extraia Candidado a Emprego do e-mail de empregos, por exemplo empregos@exemplo.com"
Extract Leads from sales email id e.g. sales@example.com,"Extraia Prospectos do e-mail de vendas, por exemplo vendas@exemplo.com"
FCFS Rate,Taxa FCFS
FIFO,PEPS
Facebook Share,Compartilhar Facebook
Family Background,Antecedentes familiares
FavIcon,FavIcon
Fax,Fax
Featured Item,Item Destacado
Featured Item in Item Group,Item destacado no Grupo de Itens
Features Setup,Configuração de características
Feed,Alimentar
Feed Type,Tipo de alimentação
Feedback,Comentários
Female,Feminino
Fetch lead which will be converted into customer.,Extrair prospecto que vai se tornar cliente.
Field,Campo
Field Description,Descrição do Campo
Field Mapper Detail,Detalhe do Mapeador do Campo
Field Mapper Details,Detalhes do Mapeador do Campo
Field Name,Nome do Campo
Field Type,Tipo de Campo
"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"
Field from other forms,Campo de outros formulários
"Field that represents the Workflow State of the transaction (if field is not present, a new hidden Custom Field will be created)","Campo que representa o Estado da transação do fluxo de trabalho (se o campo não estiver presente, um novo campo oculto personalizado será criado)"
Fieldname,Nome do Campo
Fields,Campos
"Fields separated by comma (,) will be included in the<br /><b>Search By</b> list of Search dialog box","Campos separados por vírgula (,) serão incluídos na lista <br /> <b>Pesquisa por</b> da caixa de diálogo Pesquisar"
File Data,Dados de arquivo
File LIst,Lista de Arquivos
File List,Lista de Arquivos
File Name,Nome do arquivo
File URL,URL do arquivo
File Uploaded Sucessfully.,Arquivo enviado com sucesso.
Filing in Additional Information about the Material Request will help you analyze your data better.,Apresentação de informações adicionais sobre a solicitar material vai ajudar a analisar melhor seus dados.
Filing in Additional Information about the Opportunity will help you analyze your data better.,Preenchimento de informações adicionais sobre o Opportunity vai ajudar a analisar melhor seus dados.
Filing in Additional Information about the Purchase Receipt will help you analyze your data better.,Preenchimento de informações adicionais sobre o Recibo de compra vai ajudar a analisar melhor seus dados.
Filing in Additional Information about the Purchase Requisition will help you analyze your data better.,Preenchimento de informações adicionais sobre o pedido de compra vai ajudar a analisar melhor seus dados.
Filling in Additional Information about the Delivery Note will help you analyze your data better.,Preenchimento de informações adicionais sobre a Guia de Remessa irá ajudá-lo a analisar os seus dados melhor.
Filling in additional information about the Quotation will help you analyze your data better.,Preenchimento de informações adicionais sobre a cotação irá ajudá-lo a analisar os seus dados melhor.
Filling in additional information about the Sales Order will help you analyze your data better.,Preenchimento de informações adicionais sobre a Ordem de Venda vai ajudar a analisar melhor seus dados.
Filter By Amount,Filtrar por Quantidade
Filter By Date,Filtrar por data
Filter based on customer,Filtrar baseado em cliente
Filter based on item,Filtrar baseado no item
Filters,Filtros
Final Confirmation Date,Data final de confirmação
Financial Analytics,Análise Financeira
Financial Statements,Demonstrações Financeiras
Financial Years for books of accounts,Exercícios para os livros-caixas
First Name,Nome
First Responded On,Primeira resposta em
Fiscal Year,Exercício fiscal
Fiscal Year Details,Detalhes do Exercício Fiscal
Fixed Asset Account,Conta de ativo fixo
Float,Float
Float Precision,Precisão flutuante
Floral,Floral
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.
Font,Fonte
Font Size,Tamanho da Fonte
Footer,Rodapé
Footer Items,Itens do Rodapé
For All Users,Para todos os usuários
For Buying,Para Comprar
For Company,Para a Empresa
For Employee,Para o Funcionário
For Employee Name,Para Nome do Funcionário
For Item ,Para o Item
"For Links, enter the DocType as rangeFor Select, enter list of Options separated by comma","Para Links, digite o DocType como rangeFor Select, entrar na lista de opções separadas por vírgula"
For Production,Para Produção
For Reference Only.,Apenas para referência.
For Selling,Para Venda
For Warehouse,Para Almoxarifado
"For comparative filters, start with","Para filtros comparativos, comece com"
"For e.g. 2012, 2012-13","Para por exemplo 2012, 2012-13"
For example if you cancel and amend 'INV004' it will become a new document 'INV004-1'. This helps you to keep track of each amendment.,"Por exemplo, se você cancelar e alterar &#39;INV004&#39; ele vai se tornar um novo documento &quot;INV004-1&#39;. Isso ajuda você a manter o controle de cada alteração."
For example: You want to restrict users to transactions marked with a certain property called 'Territory',Por exemplo: Você quer restringir os usuários a transações marcadas com uma certa propriedade chamado &#39;Território&#39;
For opening balance entry account can not be a PL account,Para a abertura de conta de entrada saldo não pode ser uma conta de PL
"For opening invoice entry, this date will reflect in the period-wise aging report.","Para a abertura do lançamento da fatura, esta data vai refletir no relatório período sábio envelhecimento."
For ranges,Para faixas
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"
Form,Forma
Format: hh:mm example for one hour expiry set as 01:00. Max expiry will be 72 hours. Default is 24 hours,Formato: hh: mm para um exemplo de validade definido como hora 01:00. Max termo será de 72 horas. Padrão é de 24 horas
Forum,Fórum
Fraction,Fração
Fraction Units,Unidades fracionadas
Friday,Sexta-feira
From Company,Da Empresa
From Customer,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 DocType,De DocType
From Employee,De Empregado
From Field,De Campo
From PR Date,De PR Data
From Package No.,De No. Package
From Table,A partir da Tabela
Frozen,Congelado
Full Name,Nome Completo
Fully Billed,Totalmente faturado
Fully Completed,Totalmente concluída
GL Control,GL Controle
GL Entry,Lançamento GL
GL Entry: Debit or Credit amount is mandatory for ,GL Entrada: montante de crédito ou débito é obrigatória para
GL Mapper,Mapeamento GL
GL Mapper Detail,Detalhe do Mapeamento GL
GRN,GRN
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
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Gerar guias de remessa de pacotes a serem entregues. Usado para notificar o número do pacote, o conteúdo do pacote e seu peso."
Generates HTML to include selected image in the description,Gera HTML para incluir a imagem selecionada na descrição
Georgia,Geórgia
Get Advances Paid,Obter adiantamentos pagos
Get Advances Received,Obter adiantamentos recebidos
Get Current Stock,Obter Estoque atual
Get Items,Obter itens
Get Last Purchase Rate,Obter Valor da Última Compra
Get Non Reconciled Entries,Obter lançamentos não Reconciliados
Get Open Sales Order,Obter Ordens de Venda abertas
Get Outstanding Invoices,Obter faturas pendentes
Get Purchase Receipt,Obter Recibo de compra
Get Sales Orders,Obter Ordens de Venda
Get Specification Details,Obter detalhes da Especificação
Get Stock and Rate,Obter Estoque e Valor
Get Tax Detail,Obtenha detalhes de Imposto
Get Taxes and Charges,Obter Impostos e Encargos
Get Template,Obter Modelo
Get Terms and Conditions,Obter os Termos e Condições
Get Weekly Off Dates,Obter datas de descanso semanal
Get the template of the Attendance for which you want to import in CSV (Comma seperated values) format.Fill data in the template. Save the template in CSV format.All attendance dates inbetween 'Attendance From Date' and 'Attendance To Date' will come in the template with employees list.,Obter o modelo do atendimento para o qual você deseja importar no formato CSV (valores separados por vírgulas) format.Fill dados no modelo. Salve o modelo na CSV atendimento format.All data &#39;Presença De Data&#39; inbetween e &#39;Atendimento Conhecer&#39; virá no modelo com lista de funcionários.
"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
Go back to home,Volte para Início
Go to Setup > <a href='#user-properties'>User Properties</a> to set \			'territory' for diffent Users.,Vá para Configuração&gt; <a href='#user-properties'>Propriedades do usuário</a> para definir \ &#39;território&#39; para usuários diffent.
Goal,Meta
Goals,Metas
Goods received from Suppliers.,Mercadorias recebidas de fornecedores.
Google Analytics ID,ID do Google Analytics
Google Plus One,Google Plus One
Grade,Grau
Graduate,Pós-graduação
Grand Total,Total Geral
Grand Total (Export),Total Geral (Exportação)
Grand Total (Import),Total Geral (Importação)
Grand Total*,Total Geral*
Gratuity LIC ID,ID LIC gratuidade
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,Agrupar por
Group or Ledger,Grupo ou Razão
Groups,Grupos
HR,RH
HTML,HTML
HTML / Banner that will show on the top of product list.,HTML / Faixa que vai ser mostrada no topo da lista de produtos.
"HTML print formats for quotes, invoices etc","Formatos de impressão em HTML para cotações, notas fiscais, etc"
Half Day,Meio Dia
Half Yearly,Semestral
Half-yearly,Semestral
Has Batch No,Tem nº de Lote
Has Child Node,Tem nó filho
Has Serial No,Tem nº de Série
Header,Cabeçalho
Heading,Título
Heading Font,Título da fonte
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Contas (ou grupos) contra a qual os lançamentos de contabilidade são feitos e os saldos são mantidos.
Health Concerns,Preocupações com a Saúde
Health Details,Detalhes sobre a Saúde
Held On,Realizada em
Help,Ajudar
Help HTML,Ajuda HTML
Helper for managing return of goods (sales or purchase),Auxiliar para a gestão de devolução de mercadorias (venda ou compra)
Helvetica Neue,Helvetica Neue
"Hence, maximum allowed Manufacturing Quantity","Assim, a Quantidade de Fabricação máxima permitida"
"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"
Hey there! You need to put at least one item in \				the item table.,Hey there! Você precisa colocar pelo menos um item em \ tabela do item.
Hey! You seem to be using the wrong template. \				Click on 'Download Template' button to get the correct template.,Hey! Você parece estar usando o modelo errado. \ Clique no botão &#39;Template Download&#39; para obter o modelo correto.
Hidden,Escondido
Hide Actions,Ocultar Ações
Hide Copy,Ocultar Copia
Hide Currency Symbol,Ocultar Símbolo de Moeda
Hide Email,Ocultar E-mail
Hide Heading,Ocultar Título
Hide Print,Ocultar Impressão
Hide Toolbar,Ocultar barra de ferramentas
High,Alto
Highlight,Realçar
History In Company,Histórico na Empresa
Hold,Segurar
Holiday,Feriado
Holiday Block List,Lista de Bloqueios de férias
Holiday Block List Allow,Lista de Bloqueios de férias Permitir
Holiday Block List Allowed,Lista de feriado Bloco admitidos
Holiday Block List Date,Data feriado Lista de Bloqueios
Holiday Block List Dates,Datas de férias Lista de Bloqueios
Holiday Block List Name,Nome de férias Lista de Bloqueios
Holiday List,Lista de feriado
Holiday List Name,Nome da lista de feriados
Holidays,Feriados
Home,Início
Home Control,Início de Controle
Home Page,Página Inicial
Home Page is Products,Página Inicial é Produtos
Home Pages,Páginas Iniciais
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 Rate,Valor por hora
Hour Rate Consumable,Valor por hora de Consumíveis
Hour Rate Electricity,Valor por hora de Eletricidade
Hour Rate Labour,Valor por hora de mão-de-obra
Hour Rate Rent,Valor por hora de Aluguel
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"
How to upload,Como fazer o carregamento
Hrvatski,Hrvatski
Human Resources,Recursos Humanos
Human Resources Home,Início de Recursos Humanos
Hurray! The day(s) on which you are applying for leave \					coincide with holiday(s). You need not apply for leave.,Viva! O dia (s) em que você está aplicando para deixar \ coincidir com feriado (s). Você não precisa pedir licença.
I,Eu
ID (name) of the entity whose property is to be set,ID (nome) da entidade cuja propriedade é para ser definida
IDT,IDT
IGHelp,IGHelp
II,II
III,III
IN,EM
INV,INV
INV/10-11/,INV/10-11 /
IV,IV
Icon,Ícone
Icon will appear on the button,O ícone aparecerá no botão
Id of the profile will be the email.,O ID do perfil será o e-mail.
Identification of the package for the delivery (for print),Identificação do pacote para a Entrega (para impressão)
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 BOM venda é definido, o BOM real do pacote é exibido como table.Available na nota de entrega e 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 a User does not have access at Level 0, then higher levels are meaningless","Se um usuário não tem acesso nível 0, então os níveis mais altos são irrelevantes"
"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, all other workflows become inactive.","Se marcada, todos os outros fluxos de trabalho tornam-se inativos."
"If checked, the Home page will be the default Item Group for the website.","Se marcado, a página inicial do site será o Grupo de Itens padrão."
"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 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 image is selected, color will be ignored (attach first)","Se a imagem for selecionada, a cor será ignorada (anexar primeiro)"
If more than one package of the same type (for print),Se mais do que uma embalagem do mesmo tipo (para impressão)
If non standard port (e.g. 587),"Se não for a porta padrão (por exemplo, 587)"
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 not, create a","Se não, crie um(a)"
"If set, data entry is only allowed for specified users. Else, entry is allowed for all users with requisite permissions.","Se definido, a entrada de dados só é permitida para usuários especificados. Outra, a entrada é permitida para todos os usuários com permissões necessárias."
"If specified, send the newsletter using this email address","Se especificado, enviar a newsletter usando esse endereço de e-mail"
"If the 'territory' Link Field exists, it will give you an option to select it","Se o campo com Link &#39;território&#39; existe, ele vai te dar uma opção para selecioná-lo"
"If the account is frozen, entries are allowed for the ""Account Manager"" only.","Se a conta estiver congelada, os lançamentos são permitidos apenas para o &quot;Gerente da Conta&quot;."
"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<br>Enables item QA Required and QA No in Purchase Receipt,Se você seguir Inspeção de Qualidade <br> Permite Nenhum item obrigatório e QA QA 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<br>Enables item <b>Is Manufactured</b>,Se você envolver na atividade industrial <br> Permite que o item <b>é fabricado</b>
Ignore,Ignorar
Image,Imagem
Image View,Ver imagem
Implementation Partner,Parceiro de implementação
Import,Importar
Import Date Format ,Formato de importação de data
Import Log,Importar Log
Import Log1,Importar Log1
Import data from spreadsheet (csv) files,Importar dados de planilhas (csv)
Important dates and commitments in your project life cycle,Datas importantes e compromissos no ciclo de vida do seu projeto
Imports,Importações
In Dialog,Em diálogo
In Filter,Em Filtro
In List View,Na exibição de lista
In Process,Em Processo
In Report Filter,No Filtro do Relatório
In Store,Na loja
In Words,Por extenso
In Words (Export),Por extenso (Exportação)
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 (Import),Por extenso (Import)
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.
In Words(Import),Por extenso (Importar)
In response to,Em resposta ao(s)
"In the Permission Manager, click on the button in the 'Condition' column for the Role you want to restrict.","No Gerenciador de Permissão, clique no botão na coluna &#39;Condição&#39; para a função que deseja restringir."
Inactive,Inativo
Incentives,Incentivos
Incharge Name,Nome do Responsável
Income,Renda
Income Account,Conta de Renda
Income Year to Date,Ano de rendimento até a Data
Incoming,Entrada
Incoming Mail Setting,Configuração de entrada de emails
Incoming Rate,Taxa de entrada
Incoming Time,Tempo de entrada
Incoming quality inspection.,Inspeção de qualidade de entrada.
Indent,Recuar
Index,Índice
Indicates that the package is a part of this delivery,Indica que o pacote é uma parte desta entrega
Individual,Individual
Individuals,Indivíduos
Industry,Indústria
Industry Type,Tipo de indústria
Info,Informações
Insert After,Inserir Após
Insert Code,Inserir Código
Insert Style,Inserir Estilo
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 Status,Estado da Instalação
Installation Time,O tempo de Instalação
Installation record for a Serial No.,Registro de instalação de um nº de série
Installed Qty,Quantidade Instalada
Institute / Conducted By,Instituto / Conduzido por
Instructions,Instruções
Int,Int
Integrations,Integrações
Interested,Interessado
Internal,Interno
Intro HTML,Intro HTML
Introduce your company to the website visitor.,Apresente sua empresa para o visitante do site.
Introduction,Introdução
Introductory information for the Contact Us Page,Informação introdutória para a página Fale Conosco
Invalid Email Address,Endereço de email inválido
Inventory,Inventário
Inverse,Inverso
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 To Date,Período Final de Fatura
Is Active,É Ativo
Is Advance,É antecipado
Is Asset Item,É item de ativo
Is Cancelled,É cancelado
Is Carry Forward,É encaminhado
Is Child Table,É tabela filho
Is Default,É padrão
Is Encash,É cobrança
Is LWP,É LWP
Is Mandatory Field,É campo obrigatório
Is Opening,É abertura
Is PL Account,É Conta PL
Is POS,É PDV
Is Primary Address,É o endereço principal
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 Shipping Address,É endereço de envio
Is Single,É único
Is Standard,É Padrão
Is Stock Item,É item de estoque
Is Sub Contracted Item,É item subcontratado
Is Subcontracted,É subcontratada
Is Submittable,É enviável
Is it a Custom DocType created by you?,É um DocType personalizado criado por você?
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
It was raised because the (actual + ordered + indented - reserved) quantity reaches re-order level when the following record was created,Foi levantada porque a (real + + ordenou recuado - reservado) a quantidade chega a novo pedido de nível quando o registro a seguir foi criado
Item,Item
Item Advanced,Item antecipado
Item Barcode,Código de barras do Item
Item Batch Nos,Nº do Lote do Item
Item Classification,Classificação do Item
Item Code,Código do Item
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 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 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 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 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 relativo ao Item
Item classification.,Classificação do Item.
Item to be manufactured or repacked,Item a ser fabricado ou reembalado
Item will be saved by this name in the data base.,O Item será salvo com este nome na base de dados.
"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,Lista de Preços relativa ao Item
Item: ',Item: &#39;
Items,Itens
"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
JSON,JSON
JV,JV
Javascript,Javascript
Javascript to append to the head section of the page.,Javascript para acrescentar ao cabeçalho da página.
Job Applicant,Candidato a emprego
Job Opening,Vaga de emprego
Job Profile,Perfil da vaga
Job Title,Cargo
"Job profile, qualifications required etc.","Perfil da vaga, 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
KRA,KRA
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Mantenha o controle das campanhas de vendas. Mantenha o controle de prospectos, cotações, Ordens de Venda, etc para mensurar o Retorno do Investimento."
Keep a track of all communications,Mantenha o controle de todas as comunicações
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 a track on communications regarding this Quotation. This will help you remember earlier communications in case the Customer comes back again,Mantenha o controle sobre as comunicações relativas a este Orçamento. Isso vai ajudar você a lembrar de comunicações anteriores para o caso de o cliente voltar novamente
Key,Chave
Key Performance Area,Área Chave de Performance
Key Responsibility Area,Área Chave de Responsabilidade
Knowledge Base,Base de Conhecimento
LEAD,LEAD
LEAD/10-11/,LEAD/10-11 /
LEAD/MUMBAI/,LEAD / MUMBAI /
LR Date,Data LR
LR No,Nº LR
Label,Etiqueta
Label Help,Ajuda sobre etiquetas
Lacs,Lacs
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
Landing Page,Página de chegada
Language,Idioma
Language preference for user interface (only if available).,Idioma de preferência para interface de usuário (se disponível).
Last Contact Date,Data do último contato
Last IP,Último IP
Last Login,Último Login
Last Modified On,Última modificação em
Last Name,Sobrenome
Last Purchase Rate,Valor da última compra
Last Update,Última Atualização
Last Update By,Última Atualização por
Latest Updates,Últimas Atualizações
Lato,Lato
Lead,Prospecto
Lead Details,Detalhes do Prospecto
Lead Lost,Prospecto Perdido
Lead Name,Nome do Prospecto
Lead Owner,Proprietário do Prospecto
Lead Ref,Ref. 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
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 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 Setup,Configurar Licenças
Leave Type,Tipo de Licenças
Leave Type Name,Nome do Tipo de Licença
Leave Without Pay,Licença sem pagamento
Leave allocations.,Alocações de Licenças.
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 blank if considered for all grades,Deixe em branco se considerado para todos os graus
Leave by,Deixe por
"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;
Ledger,Razão
Left,Esquerda
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,"Pessoa Jurídica / Subsidiária, com um plano de Contas separado, pertencentes à Organização."
Letter Head,Timbrado
Letter Head Image,Imagem do timbrado
Letter Head Name,Nome do timbrado
Letter heads for print,Timbrado para impressão
Level,Nível
"Level 0 is for document level permissions, higher levels for field level permissions.","Nível 0 é para permissões em nível de documento, os níveis mais elevados são permissões em nível de campo."
Lft,Esq.
Link,Link
Link to other pages in the side bar and next section,Link para outras páginas na barra lateral e seção seguinte
Linked In Share,Linked In Compartilhar
Linked With,Ligado com
List,Lista
List items that form the package.,Lista de itens que compõem o pacote.
"List of Item Groups to be shown in ""All Products"" menu - in the sequence wanted and with number of indents (left spacing to show a tree effect).",Lista de Grupos de Itens a serem mostrado no menu &quot;Todos os Produtos&quot; - na sequência desejada e com o número de recuos (espaçamento à esquerda para mostrar um efeito de árvore).
List of companies (not customers / suppliers),Lista das empresas (não clientes / fornecedores)
List of holidays.,Lista de feriados.
List of patches executed,Lista de patches executados
List of records in which this document is linked,Lista de registros a que este documento está ligado
List this Item in multiple groups on the website.,Listar este item em vários grupos no site.
Live Chat,Chat ao vivo
Load Print View on opening of an existing form,Carregar a visualização de impressão na abertura de um formulário existente
Loading,Carregando
Loading Report,Relatório de carregamento
Location,Localização
Log of Scheduler Errors,Log de erros do agendador
Login After,Login após
Login Before,Login antes
Login Id,ID de Login
Login Page,Página de Login
Logout,Sair
Long Text,Texto Longo
Lost Reason,Razão da perda
Low,Baixo
Lower Income,Baixa Renda
Lucida Grande,Lucida Grande
MIS Control,Controle MIS
MREQ-,Mreq-
MTN Details,Detalhes da MTN
Mail Footer,Rodapé do E-mail
Mail Password,Senha do E-mail
Mail Port,Porta do E-mail
Mail Server,Servidor de E-mail
Main Reports,Relatórios principais
Main Section,Seção Principal
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 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
Major/Optional Subjects,Assuntos Principais / Opcionais
Make Bank Voucher,Fazer Comprovante Bancário
Make Credit Note,Fazer Nota de Crédito
Make Debit Note,Fazer Nota de Débito
Make Difference Entry,Fazer Lançamento da Diferença
Make Excise Invoice,Fazer fatura de imposto
Make Stock Entry,Fazer lançamento de estoque
Make a new,Fazer um novo
Make sure that the transactions you want to restrict have a Link field 'territory' that maps to a 'Territory' master.,Certifique-se de que as operações que pretende restringir tenham um campo de ligação &quot;Território&quot; que mapeia para um cadastro de &quot;Território&quot;.
Male,Masculino
Manage cost of operations,Gerenciar custo das operações
Manage numbering series,Gerenciar séries de numeração
Manage sales or purchase returns,Gerenciar devoluções de compra e venda
Mandatory,Obrigatório
"Mandatory if Stock Item is ""Yes""",Obrigatório se Item de estoque for &quot;Sim&quot;
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
Manufacturer,Fabricante
Manufacturer Part Number,Número de peça do fabricante
Manufacturing,Fabricação
Manufacturing Home,Início de Fabricação
Manufacturing Quantity,Quantidade de fabricação
Map,Mapa
Margin,Margem
Marital Status,Estado civil
Markdown Reference,Referência de Desconto
Market Segment,Segmento de mercado
Married,Casado
Mass Mailing,Divulgação em massa
Master,Cadastro
Master Name,Nome do Cadastro
Master Type,Tipo de Cadastro
Masters,Cadastros
Mat Detail No,Nº do Detalhe Mat
Match,Combinar
Match Id,ID da combinação
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 Date,Data de Solicitação 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 used to make this Stock Entry,Pedido de material usado para fazer essa entrada de material
Material Transfer,Transferência de material
Materials,Materiais
Materials Required (Exploded),Materiais necessários (explodida)
Materials Requirement Planning (MRP),Planejamento dos Recursos de Manufatura (PRM)
Max Attachments,Anexos Max.
Max Days Leave Allowed,Período máximo de Licença
Max Discount (%),Desconto Máx. (%)
Max. Limit,Max. Limitar
"Meaning of Submit, Cancel, Amend","Significado do Enviar, Cancelar, Alterar"
Medium,Médio
Merge,Unir
Merge Warehouses,Unir Almoxarifados
Merge With,Unir com
Message,Mensagem
Message Parameter,Parâmetro da mensagem
Message greater than 160 character will be splitted into multiple mesage,Mensagens maiores do que 160 caracteres vão ser divididos em múltiplas mensagens
Message when Cond. False,Mensagem quando Condição for Falsa
Messages,Mensagens
Method,Método
Middle Income,Rendimento Médio
Middle Name (Optional),Nome do Meio (Opcional)
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
Millions,Milhões
Min Order Qty,Pedido Mínimo
Minimum Order Qty,Pedido Mínimo
Misc,Diversos
Misc Details,Detalhes Diversos
Miscellaneous,Diversos
Miscelleneous,Diversos
Mobile No,Telefone Celular
Mobile No.,Telefone Celular.
Mode of Payment,Forma de Pagamento
Modified Amount,Quantidade modificada
Modified by,Modificado(a) por
Module,Módulo
Module Def,Módulo Def
Module Name,Nome do Módulo
Modules,Módulos
Modules Setup,Configuração dos Módulos
Monday,Segunda-feira
Month,Mês
Monthly,Mensal
Monthly salary statement.,Declaração salarial mensal.
Monthly salary template.,Modelo de declaração salarial mensal.
More,Mais
More Details,Mais detalhes
More Info,Mais informações
More content for the bottom of the page.,Mais conteúdo para a parte de baixo da página.
Moving Average,Média móvel
Moving Average Rate,Taxa da Média Móvel
Mr,Sr.
Ms,Sra.
Multi Ledger Report Detail,Detalhe do Relatório de múltiplos Livros-Razão
Multiple Item Prices,Preços de múltiplos itens
Mupltiple Item prices.,Preços de múltiplos itens.
Must have report permission to access this report.,Deve ter permissão para acessar relatório deste relatório.
Must specify a Query to run,Deve especificar uma consulta para executar
My Company,Minha Empresa
My Settings,Minhas Configurações
NL-,NL-
Name,Nome
Name Case,Caso Nome
Name as entered in Sales Partner master,Nome como consta no cadastro de Parceiros de Vendas
Name of organization from where lead has come,Nome da Organização de onde veio o Prospecto
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
Name of the entity who has requested for the Material Request,Nome da entidade que solicitou para a solicitação de materiais
Name of the entity who has requested for the Purchase Requisition,Nome da entidade que solicitou para o Pedido de Compra
Naming,Nomeando
Naming Series,Séries nomeadas
Naming Series Options,Opções das Séries nomeadas
Negative balance is not allowed for account ,Saldo negativo não é permitido por conta
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 (Import),Total Líquido (Importação)
Net Total*,Total Líquido*
Net Weight,Peso Líquido
Net Weight UOM,UDM do Peso Líquido
Net Weight of each Item,Peso líquido de cada item
New,Novo
New BOM,Nova LDM
New Communications,Nova Comunicação
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 Name,Novo nome
New Password,Nova senha
New Projects,Novos Projetos
New Purchase Orders,Novas Ordens de Compra
New Purchase Receipts,Novos Recibos de Compra
New Quotations,Novas Cotações
New Record,Novo Registro
New Sales Orders,Novos Pedidos de Venda
New Stock Entries,Novos lançamentos de estoque
New Stock UOM,Nova UDM de estoque
New Supplier Quotations,Novas cotações de fornecedores
New Support Tickets,Novos pedidos de suporte
New Update,Nova Atualização
New Workplace,Novo local de trabalho
New value to be set,Novo valor a ser definido
Newsletter,Boletim informativo
Newsletter Content,Conteúdo do boletim
Newsletter Status,Estado do boletim
Next Communcation On,Próximo Comunicação em
Next Contact By,Próximo Contato Por
Next Contact Date,Data do próximo Contato
Next Date,Próxima data
Next State,Próximo Estado
Next actions,Próximas ações
Next email will be sent on:,Próximo e-mail será enviado em:
No,Não
No Action,Nenhuma ação
No Communication tagged with this ,Nenhuma comunicação marcada com esta
No Copy,Nenhuma cópia
No Permission,Nenhuma permissão
No Permission to ,Sem permissão para
No Permissions set for this criteria.,Sem permissões definidas para este critério.
No Report Loaded. Please use query-report/[Report Name] to run a report.,"Não Relatório Loaded. Por favor, use-consulta do relatório / [Nome do relatório] para executar um relatório."
No User Properties found.,Propriedades do Usuário não encontradas.
No of Requested SMS,Nº de SMS pedidos
No of Sent SMS,Nº de SMS enviados
No of Visits,Nº de Visitas
No records tagged.,Não há registros marcados.
"No table is created for Single DocTypes, all values are stored in tabSingles as a tuple.","Nenhuma tabela é criada para DocTypes simples, todos os valores são armazenados em tabSingles como uma tupla."
None: End of Workflow,Nenhum: Fim do fluxo de trabalho
Not,Não
Not Active,Não Ativo
Not Applicable,Não Aplicável
Not Billed,Não Faturado
Not Delivered,Não Entregue
Not Found,Não Encontrado
Not Linked to any record.,Não relacionado a qualquer registro.
Not Permitted,Não Permitido
Not allowed for: ,Não é permitido para:
Not enough permission to see links.,Sem permissão suficiente para ver os links.
Not in Use,Não está em uso
Not interested,Não está interessado
Not linked,Não ligados
Note: Email will not be sent to disabled users,Nota: e-mails não serão enviado para usuários desabilitados
Note: Other permission rules may also apply,Nota: Outras regras de permissão também podem se aplicar
Note: You Can Manage Multiple Address or Contacts via Addresses & Contacts,Nota: você pode gerenciar Múltiplos Endereços ou Contatos através de Endereços & Contatos
Note: maximum attachment size = 1mb,Nota: tamanho máximo do anexo = 1MB
Notes,Notas
Nothing to show,Nada para mostrar
Notice - Number of Days,Aviso - número de dias
Notification Control,Controle de Notificação
Notification Email Address,Endereço de email de notificação
Notify By Email,Notificar por e-mail
Notify by Email on Re-order,Notificar por e-mail ao Reordenar
Number Format,Formato de número
O+,O+
O-,O-
OPPT,OPPT
Ocean,Oceano
Old Parent,Pai Velho
Old Style Reports,Relatórios no Estilo Antigo
On,Em
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
"Once you have set this, the users will only be able access documents with that property.","Depois de ter definido isso, os usuários só poderão acessar documentos com esta propriedade."
One or multiple Sales Order no which generated this Material Request,Um ou nenhum Ordem múltipla de vendas que gerou este pedido se
One or multiple Sales Order no which generated this Purchase Requisition,Um ou vários nº de Ordens de Venda que gerou este Pedido de Compra
Only Administrator allowed to create Query / Script Reports,Administrador só é permitido para criar Consulta / Script Relatórios
Only Administrator can save a standard report. Please rename and save.,"Somente o administrador pode salvar um relatório padrão. Por favor, renomear e salvar."
Only Allow Edit For,Somente permite edição para
Only System Manager can create / edit reports,Somente o Gerente do Sistema pode criar / editar relatórios
Only leaf nodes are allowed in transaction,Somente nós-folha são permitidos em transações
Open,Abrir
Open Sans,Open Sans
Open Tickets,Tickets abertos
Opening Date,Data de abertura
Opening Time,Horário de 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)
Operations,Operações
Operator,Operador
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 No,Nº da oportunidade
Opportunity Type,Tipo de Oportunidade
Options,Opções
Options Help,Ajuda sobre Opções
Order Confirmed,Ordem Confirmada
Order Lost,Ordem Perdida
Order Type,Tipo de Ordem
Ordered Items To Be Billed,Itens encomendados a serem faturados
Ordered Items To Be Delivered,Itens encomendados a serem entregues
Ordered Qty,Qtde. encomendada
Ordered Quantity,Quantidade encomendada
Orders released for production.,Ordens liberadas para produção.
Organization,Organização
Original Message,Mensagem original
Other,Outro
Other Details,Outros detalhes
Other Income Detail,Detalhe sobre Outras Receitas
Out going mail server and support ticket mailbox,Servidor de e-mail de saída e caixa de correio de tickets de suporte
Out of AMC,Fora do CAM
Out of Warranty,Fora de Garantia
Outgoing,De Saída
Outgoing Mail Server,Servidor de e-mails de saída
Outgoing Mails,E-mails de saída
Outstanding Amount,Quantia em aberto
Outstanding cannot be less than zero. \				 	Please match exact outstanding.,Excelente não pode ser menor que zero. \ Por favor correspondência exata excelente.
Outstanding for Voucher ,Destaque para Vale
Over Heads,Despesas gerais
Overhead,Despesas gerais
Overload Query,Consulta sobrecarregada
Overwrite,Sobrescrever
Owned,Pertencente
P.O. Date,Data PO
P.O. No,Nº PO
PAN Number,Número PAN
PF No.,Nº PF.
PF Number,Número PF
PI/2011/,PI/2011 /
PIN,PIN
PO,PO
PO Date,Data PO
PO No,Nº PO
POP3 Mail Server,Servidor de e-mail POP3
POP3 Mail Server (e.g. pop.gmail.com),"Servidor de e-mail POP3 (por exemplo, pop.gmail.com)"
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
PR Detail,Detalhe PR
PRO,PRO
PS,PS
Package Item Details,Detalhes do Item do Pacote
Package Items,Itens do pacote
Package Weight Details,Detalhes do peso do pacote
Packed Quantity,Quantidade embalada
Packing Details,Detalhes da embalagem
Packing Detials,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
Page,Página
Page Break,Quebra de página
Page HTML,Página HTML
Page Len,Página Len
Page Name,Nome da Página
Page Role,Função da página
Page content,Conteúdo da página
Page not found,Página não encontrada
Page to show on the website,Página para mostrar no site
"Page url name (auto-generated) (add "".html"")",Nome da página url (gerado automaticamente) (adicione &quot;.html&quot;)
Paid Amount,Valor pago
Parameter,Parâmetro
Parent Account,Conta pai
Parent BOM,LDM pai
Parent Cost Center,Centro de Custo pai
Parent Customer Group,Grupo de Clientes pai
Parent Detail docname,Docname do Detalhe pai
Parent Doc Type,Tipo Doc pai
Parent Item,Item Pai
Parent Item Group,Grupo de item pai
Parent Label,Etiqueta pai
Parent Sales Person,Vendedor pai
Parent Territory,Território pai
Parenttype,Parenttype
Partially Completed,Parcialmente concluída
Participants,Participantes
Particulars,Características
Partly Billed,Parcialmente faturado
Partly Delivered,Parcialmente entregue
Partner,Parceiro
Partner Target Detail,Detalhe da Meta do parceiro
Partner Type,Tipo de parceiro
Passport Number,Número do Passaporte
Password,Senha
Password Expires in (days),Senha expira em (dias)
Patch,Remendo
Patch Log,Log de Patches
Pay To / Recd From,Pagar Para/ Recebido De
Payables,Contas a pagar
Payables Group,Grupo de contas a pagar
Payment Entries,Lançamentos de pagamento
Payment Entry has been modified after you pulled it. 			Please pull it again.,"Entrada de pagamento foi modificada depois que você tirou isso. Por favor, puxe-o novamente."
Payment Reconciliation,Reconciliação de pagamento
Payment Terms,Condições de Pagamento
Payment days,Dias de pagamento
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
Payroll Setup,Configuração da folha de pagamento
Pending,Pendente
Pending Review,Revisão pendente
Percent,Por cento
Percent Complete,Porcentagem Concluída
Percentage Allocation,Alocação percentual
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. <p>For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to receive 110 units</p>,"Percentagem que estão autorizados a receber ou entregar além da quantidade encomendada. <p> Por exemplo: Se você encomendou 100 unidades e seu limite é de 10%, então você está autorizado a receber 110 unidades </p>"
Performance appraisal.,Avaliação de desempenho.
Period Closing Voucher,Comprovante de Encerramento período
Periodicity,Periodicidade
Perm Level,Nível Permanente
Permanent Accommodation Type,Tipo de Alojamento Permanente
Permanent Address,Endereço permanente
Permission Control,Controle de Permissão
Permission Engine,Mecanismo de Permissão
Permission Level,Nível de Permissão
Permission Levels,Níveis de Permissão
Permission Manager,Gerenciador de Permissão
Permission Rules,Regras de Permissão
Permissions,Permissões
Permissions Settings,Configurações de Permissões
Permissions are automatically translated to Standard Reports and Searches,As permissões são automaticamente traduzidos para Relatórios Padrão e Pesquisas
"Permissions are set on Roles and Document Types (called DocTypes) by restricting read, edit, make new, submit, cancel, amend and report rights.","As permissões são definidas em Funções e Tipos de Documentos (chamados DocTypes) restringindo direitos de leitura, edição, criação, envio, cancelamento e alteração."
Permissions at higher levels are 'Field Level' permissions. All Fields have a 'Permission Level' set against them and the rules defined at that permissions apply to the field. This is useful incase you want to hide or make certain field read-only.,Permissões em níveis mais elevados são permissões em &quot;Nível de Campo&quot;. Todos os campos têm um &#39;Nível de Permissão&quot; estabelecido contra eles e as regras definidas naquele Nível de Permissão se aplicam ao campo. Isto é útil no caso de você querer ocultar ou tornar um determinado campo em somente leitura.
"Permissions at level 0 are 'Document Level' permissions, i.e. they are primary for access to the document.","Permissões no nível 0 são permissões ao &#39;Nível de Documento&quot;, ou seja, são básicas para o acesso ao documento."
Permissions translate to Users based on what Role they are assigned,As Permissões passam aos usuários com base na função a que são atribuídos
Person,Pessoa
Person To Be Contacted,Pessoa a ser contatada
Personal Details,Detalhes pessoais
Personal Email,E-mail pessoal
Phone,Telefone
Phone No,Nº de telefone
Phone No.,Nº de telefone.
Pick Columns,Escolha as Colunas
Pin Code,Código PIN
Pincode,PINCODE
Place of Issue,Local de Emissão
Plan for scheduled maintenance contracts.,Plano para contratos de manutenção programados.
Planned Qty,Qtde. planejada
Planned Quantity,Quantidade planejada
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 check,"Por favor, verifique"
Please enter Bill Date,Por favor insira Data Bill
Please enter valid ,"Por favor, insira válido"
Please save the Newsletter before sending.,"Por favor, salve o boletim antes de enviar."
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: ,"Por favor, selecione: "
Please specify Default Currency in Company Master \			and Global Defaults,"Por favor, especificar a moeda padrão na empresa MASTER \ e Padrões Globais"
Please specify a valid,"Por favor, especifique um válido"
Point of Sale,Ponto de Venda
Point-of-Sale Setting,Configurações de Ponto-de-Venda
Points,Pontos
Post Graduate,Pós-Graduação
Post Topic,Postar Tópico
Posting Date,Data da Postagem
Posting Time,Horário da Postagem
Potential Sales Deal,Negócio de Vendas em potencial
Potential opportunities for selling.,Oportunidades potenciais para a venda.
"Precision for Float fields (quantities, discounts, percentages etc) only for display. Floats will still be calculated up to 6 decimals.","Precisão para campos Float (quantidade, descontos, percentuais, etc) é apenas para exibição. Floats ainda serão calculado até 6 casas decimais."
Prefix,Prefixo
Present,Apresentar
Prevdoc DocType,Prevdoc DocType
Prevdoc Doctype,Prevdoc Doctype
Preview,Visualização
Previous Work Experience,Experiência anterior de trabalho
Price List,Lista de Preços
Price List Currency,Moeda da Lista de Preços
Price List Currency Conversion Rate,Taxa de conversão da moeda da lista de preços
Price List Exchange Rate,Taxa de Câmbio da Lista de Preços
Price List Master,Cadastro de 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*,Taxa de Lista de Preços*
Price List and Currency,Lista de Preços e Moeda
Price Lists and Rates,Listas de Preços e Tarifas
Primary,Primário
Print Format,Formato de impressão
Print Heading,Cabeçalho de impressão
Print Hide,Ocultar impressão
Print Width,Largura de impressão
Print Without Amount,Imprimir Sem Quantia
Priority,Prioridade
Private,Privado
Process,Processo
Process Payroll,Processa folha de pagamento
Produced Quantity,Quantidade produzida
Product Categories,Categorias de Produtos
Product Category for website,Categoria de Produto para o site
Product Enquiry,Consulta de Produto
Product Group,Grupo de Produtos
"Product Groups that are listed on the website. The first product group from this list will be listed by default on the ""Products Page""",Grupos de produtos listados no site. O primeiro grupo de produtos desta lista serão listados por padrão na &quot;Página de Produtos&quot;
Product Settings,Configurações do produto
Production,Produção
Production Order,Ordem de Produção
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 (MRP),Planejamento de Produção (PRM)
Production Planning Tool,Ferramenta de Planejamento da Produção
Products Settings,Configurações de 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."
Profile,Perfil
Profile Control,Controle de Perfil
Profile Defaults,Padrões de Perfil
Profile Represents a User in the system.,Perfil representa um usuário no sistema.
Program / Seminar Title,Programa / Título do Seminário
Project,Projeto
Project Activity,Atividade do Projeto
Project Activity Update,Atualização da Atividade do Projeto
Project Control,Controle de Projeto
Project Costing,Custo do Projeto
Project Details,Detalhes do Projeto
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 Tasks,Tarefas 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
Projected Qty,Qtde. Projetada
Projects,Projetos
Projects Home,Início de Projetos
Prompt email sending to customers and suppliers,E-mail Prompt envio a clientes e fornecedores
Prompt for Email on Submission of,Solicitar e-mail no envio da
Properties,Propriedades
Property,Propriedade
Property Setter,Setter propriedade
Property Setter overrides a standard DocType or Field property,Setter propriedade substitui uma propriedade DocType ou Campo padrão
Property Type,Tipo de propriedade
Provide email id registered in company,Fornecer Endereço de E-mail registrado na empresa
Public,Público
Published,Publicado
Pull Emails from the Inbox and attach them as Communication records (for known contacts).,Puxar e-mails da caixa de entrada e anexe-os como registros de comunicação (para contatos conhecidos).
Pull Opportunity Detail,Puxar Detalhe da oportunidade
Pull Payment Entries,Puxar os lançamentos de pagamento
Pull Purchase Order Details,Puxar Detalhes da Ordem de Compra
Pull Quotation Items,Puxar Itens da cotação
Pull Sales Order Items,Puxar itens da Ordem de Venda
Pull items from Sales Order mentioned in the above table.,Puxar itens da Ordem de Venda mencionada na tabela acima.
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
Pur Order,Ordem Pur
Pur Receipt,Recibo Pur
Purchase,Compras
Purchase Analytics,Análise de compras
Purchase Common,Compras comum
Purchase Date,Data da compra
Purchase Details,Detalhes da compra
Purchase Discounts,Descontos da compra
Purchase Document No,Nº do Documento de Compra
Purchase Document Type,Tipo do Documento de Compra
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 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 Received,Comprar itens para ser recebido
Purchase Order Message,Mensagem da Ordem de Compra
Purchase Order Required,Ordem de Compra Obrigatória
Purchase Order sent by customer,Ordem de Compra enviada pelo cliente
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 Request,Pedido de Compra
Purchase Request Item,Item do Pedido de Compra
Purchase Requisition Details,Detalhes da Pedido de Compra
Purchase Return,Devolução de Compra
Purchase Returned,Compra Devolvida
Purchase Returns,Devoluções de Compra
Purchase Taxes and Charges,Impostos e Encargos sobre Compras
Purchase Taxes and Charges Master,Cadastro de Impostos e Encargos sobre Compras
Purpose,Finalidade
Purpose must be one of ,Finalidade deve ser um dos
QA Inspection,Inspeção QA
QA No,Nº QA
QAI/11-12/,QAI/11-12 /
QTN,QTN
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
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
Quantity,Quantidade
Quantity Requested for Purchase,Quantidade Solicitada para Compra
Quantity already manufactured,Quantidade já fabricada
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 should be equal to Manufacturing Quantity. ,Quantidade deve ser igual à Quantidade de Fabricação.
Quarter,Trimestre
Quarterly,Trimestral
Query,Consulta
Query Options,Opções de Consulta
Query Report,Relatório da Consulta
Query must be a SELECT,Consulta deve ser um SELECT
Question,Pergunta
Quick Help for Setting Permissions,Ajuda rápida para Configurar Permissões
Quick Help for User Properties,Ajuda rápida para Propriedades do Usuário
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 No,Nº da Cotação
Quotation No.,Nº da Cotação.
Quotation Sent,Cotação Enviada
Quotation To,Cotação para
Quotation no against which this Sales Order is made ,Nº da Cotação contra a qual esta Ordem de Venda é feita
Quotes to Leads or Customers.,Cotações para Prospectos ou Clientes.
Raise Exception,Levantar Exceção
Raise Material Request,Levante solicitar material
Raise Material Request when stock reaches re-order level,Levante solicitar material quando o estoque atinge novo pedido de nível
Raise Production Order,Levantar Ordem de Produção
Raised By,Levantadas por
Raised By (Email),Levantadas por (e-mail)
Random,Aleatório
Range,Alcance
Rate,Taxa
Rate ,Taxa
Rate Of Materials Based On,Taxa de materiais com base em
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
Rate*,Taxa*
Raw Material Details,Detalhes de Materias-Primas
Raw Material Item Code,Código de Item de Matérias-Primas
Raw Materials Supplied Cost,Custo de fornecimento de Matérias-Primas
Re-Calculate Values,Re-calcular valores
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
Read Only,Somente leitura
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
Reason,Motivo
Reason for Leaving,Motivo da saída
Reason for Resignation,Motivo para Demissão
Recalculate,Recalcular
Recd Quantity,Quantidade Recebida
Receivables,Recebíveis
Receivables Group,Grupo de recebíveis
Received Date,Data de recebimento
Received Qty,Qtde. recebida
Receiver List,Lista de recebedores
Receiver Name,Nome do recebedor
Receiver Parameter,Parâmetro do recebedor
Recent,Recente
Recipient,Destinatário
Recipients,Destinatários
Reconciliation Data,Dados de reconciliação
Reconciliation HTML,Reconciliação HTML
Reconciliation JSON,Reconciliação JSON
Recurring Id,Id recorrente
Recurring Invoice,Nota Fiscal Recorrente
Recurring Type,Tipo de recorrência
Ref Code,Código de Ref.
Ref Doc should be submitted?,Doc de Ref. deve ser enviado?
Ref DocType,DocType de Ref.
Ref Name,Nome de Ref.
Ref Rate,Taxa de Ref.
Ref Rate ,Taxa de Ref.
Ref Rate*,* Taxa de Ref.
Ref SQ,Ref SQ
Ref Type,Tipo de Ref.
Reference,Referência
Reference Date,Data de Referência
Reference DocType Key,Referência DocType chave
Reference Docname Key,Referência Docname chave
Reference Name,Nome de Referência
Reference Number,Número de Referência
Reference Type,Tipo de Referência
Refresh,Atualizar
Registration Details,Detalhes de Registro
Registration Info,Informações do Registro
Reject HTML,Rejeitar HTML
Rejected,Rejeitado
Rejected Quantity,Quantidade rejeitada
Rejected Serial No,Nº de Série Rejeitado
Rejected Warehouse,Almoxarifado Rejeitado
Related Page,Página Relacionada
Relation,Relação
Relieving Date,Data da Liberação
Remark,Observação
Remarks,Observações
Remove,Remover
Remove Bookmark,Remover Bookmark
Rename,Renomear
Rename Tool,Ferramenta de Renomear
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
"Replace a particular BOM in all other BOMs where it is used. It will replace the old BOM link, update cost and regenerate ""BOM Explosion Item"" table as per new BOM","Substituir uma LDM específica em todas as LDMs outros onde ela é usada. Isso irá substituir o link da LDM antiga, atualizar o custo e regenerar a tabela &quot;Item de Explosão da LDM&quot; com a nova LDM"
Replied,Respondeu
Report,Relatório
Report Builder,Report Builder
Report Builder reports are managed directly by the report builder. Nothing to do.,Os relatórios do Report Builder são gerenciados diretamente pelo construtor relatório. Nada a fazer.
Report Date,Data do Relatório
Report Hide,Ocultar Relatório
Report Name,Nome do Relatório
Report Script,Script do relatório
Report Server Script,Script do Servidor de Relatório
Report Type,Tipo de relatório
Report was not saved (there were errors),O Relatório não foi salvo (houve erros)
Reports,Relatórios
Reports to,Relatórios para
Represents the states allowed in one document and role assigned to change the state.,Representa os estados permitidos em um documento a função atribuída a alterações do estado.
Reqd,Requerido
Reqd By Date,Requisições Por Data
Request Material for Transfer or Purchase.,Material para solicitar transferência ou compra.
Request Type,Tipo de Solicitação
Request for Information,Pedido de Informação
Request for purchase.,Pedido de Compra.
Requested By,Solicitado por
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.
Reseller,Revendedor
Reserved Quantity,Quantidade Reservada
Reserved Warehouse,Almoxarifado Reservado
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
Restrict IP,Restringir IP
Restrict submission rights based on amount,Restringir direitos de envio com base no valor
Restrict user from this IP address only. Multiple IP addresses can be added by separating with commas. Also accepts partial IP addresses like (111.111.111),Restringir usuário a partir deste endereço IP. Vários endereços IP podem ser adicionados ao separar com vírgulas. São aceitos também endereços IP parciais como (111.111.111)
Restricting By User,Restringindo por Usuário
Retailer,Varejista
Return Date,Data de retorno
Return Type,Tipo de retorno
Returned Qty,Qtde. retornada
Review Date,Data da Revisão
Rgt,Dir.
Right,Direito
Role,Função
Role Name,Nome da Função
Roles,Funções
Roles Assigned,Funções atribuídas
Roles Assigned To User,Funções atribuídas ao Usuário
Roles HTML,Funções HTML
Rounded Total,Total arredondado
Rounded Total (Export),Total arredondado (Exportação)
Row,Linha
Row #,Linha #
Row # ,Linha #
Rule Definition,Definição da regra
Rule Name,Nome da regra
Rule Priority,Prioridade da regra
Rule Status,Estado da regra
Rules defining transition of state in the workflow.,Regras que definem a transição de estado no fluxo de trabalho.
"Rules for how states are transitions, like next state and which role is allowed to change state etc.","Regras de como os estados são transições, como o próximo estado e que função terá permissão para mudar de estado, etc"
Run,Executar
SLE Exists,SLE existe
SMS,SMS
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 Parameters,Parâmetros de SMS
SMS Receiver,Receptor do SMS
SMS Sender Name,Nome do remetente do SMS
SMS Settings,Definições de SMS
SMTP Server (e.g. smtp.gmail.com),"Servidor SMTP(por exemplo, smtp.gmail.com)"
SO,OV
SO Date,Data da OV
SO Detail ,Detalhe da OV
SO Pending Qty,Qtde. pendente na OV
SO/10-11/,SO/10-11 /
SO1112,SO1112
SQTN,SQTN
STE,STO
SUP,SUP
SUPP,SUPP
SUPP/10-11/,SUPP/10-11 /
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 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 components.,Componentes salariais.
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 de Vendas
Sales Browser Control,Controle do Navegador de Vendas
Sales Common,Vendas comuns
Sales Dashboard,Painel de Vendas
Sales Details,Detalhes de Vendas
Sales Discounts,Descontos de Vendas
Sales Email Settings,Configurações do Email de Vendas
Sales Extras,Extras 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 Message,Mensagem da Nota Fiscal de Venda
Sales Invoice No,Nº da Nota Fiscal 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 Orders Pending To Be Delivered,Ordens de Venda pendentes de entregua
Sales Orders Pending to be Delivered,Ordens de Venda pendentes de entregua
Sales Partner,Parceiro de Vendas
Sales Partner Details,Detalhes do Parceiro de Vendas
Sales Partner Name,Nome do Parceiro de Vendas
Sales Partner Target,Metas do Parceiro de Vendas
Sales Person,Vendedor
Sales Person Name,Nome do Vendedor
Sales Person Targets,Metas do Vendedor
Sales Rate,Taxa de vendas
Sales Return,Retorno de Vendas
Sales Returns,Retornos de Vendas
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 and Purchase Return Item,Item de retorno de compra e venda
Sales and Purchase Return Items,Itens de retorno de compra e venda
Sales and Purchase Return Tool,Ferramenta de retorno de compra e venda
Sales campaigns,Campanhas de Vendas
Sales persons and targets,Vendedores e Metas
Sales taxes template.,Modelo de Impostos sobre as Vendas.
Sales territories.,Territórios de Vendas.
Salutation,Saudação
Sample Size,Tamanho da amostra
Sanctioned Amount,Quantidade sancionada
Sandbox,Sandbox
Saturday,Sábado
Save,Salvar
Schedule,Agendar
Scheduled,Agendado
Scheduled Confirmation Date,Data de Confirmação agendada
Scheduled Date,Data Agendada
Scheduler Log,Log do Agendador
School/University,Escola / Universidade
Score (0-5),Pontuação (0-5)
Score Earned,Pontuação Obtida
Scrap %,Sucata %
Script,Script 
Script Report,Relatório Script
Script Type,Tipo de Script
Script to attach to all web pages.,Script para anexar a todas as páginas da web.
Search,Pesquisar
Search Criteria,Critérios da pesquisa
Search Fields,Campos de Pesquisa
Search Help,Procurar Ajuda
Seasonality for setting budgets.,Sazonalidade para definir orçamentos.
Section Break,Quebra de seção
Security Settings,Configurações de Segurança
Segment Name,Nome do Segmento
Select,Selecionar
"Select ""Yes"" for sub - contracting items",Selecione &quot;Sim&quot; para a itens sub-contratados
"Select ""Yes"" if this item is to be sent to a customer or received from a supplier as a sample. Delivery notes and Purchase Receipts will update stock levels but there will be no invoice against this item.","Selecione &quot;Sim&quot; se este item é para ser enviado para um cliente ou recebido de um fornecedor como amostra. Guias de Remessa e recibos de compra irão atualizar os níveis de estoque, mas não haverá fatura contra este item."
"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 All,Selecionar tudo
Select Attachments,Selecione os Anexos
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 Customer,Selecione o Cliente
Select Digest Content,Selecione o conteúdo para o Resumo por E-mail
Select DocType,Selecione o DocType
Select Document Type,Selecione o Tipo de Documento
Select Document Type or Role to start.,Selecione o tipo de documento ou função para começar.
Select Form,Selecione o Formulário
Select Items from Delivery Note,Selecione os itens da Guia de Remessa
Select Items from Purchase Order,Selecione os itens da Ordem de Compra
Select Items from Purchase Receipt,Selecione os itens de Recibo de Compra
Select Items from Sales Order,Selecione os itens da Ordem de Venda
Select Material Request,Selecione solicitar material
Select PR,Selecionar PR
Select Print Format,Selecione o Formato de Impressão
Select Print Heading,Selecione o Cabeçalho de Impressão
Select Report Name,Selecione o Nome do Relatório
Select Role,Selecione a Função
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 Shipping Address,Selecione o Endereço para Envio
Select Supplier Quotation,Selecione a Cotação do Fornecedor
Select Terms and Conditions,Selecione os Termos e Condições
Select Transaction,Selecione a Transação
Select Type,Selecione o Tipo
Select User or Property to start.,Selecione o Usuário ou Propriedade para começar.
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 dates to create a new ,Seleccione datas para criar um novo
Select name of Customer to whom project belongs,Selecione o nome do cliente a quem pertence o projeto
Select or drag across dates to create a new event.,Selecione ou arraste as datas para criar um novo evento.
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 currency in which price list is maintained,Selecione a moeda na qual a lista de preços é mantida
Select the label after which you want to insert new field.,Selecione a etiqueta após a qual você deseja inserir um novo campo.
Select the period when the invoice will be generated automatically,Selecione o período em que a fatura será gerada automaticamente
"Select the price list as entered in ""Price List"" master. This will pull the reference rates of items against this price list as specified in ""Item"" master.","Selecione a lista de preços como cadastrada em &quot;Lista de Preço&quot;. Isso vai puxar os valores de referência dos itens contra esta lista de preços, conforme especificado no cadastro &quot;Item&quot;."
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
Selected Attendance date will comes in the attendance template.,Data de comparecimento selecionada virá no modelo de comparecimento.
"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 Home,Início de Vendas
Send,Enviar
Send Autoreply,Enviar Resposta Automática
Send Email,Enviar E-mail
Send From,Enviar de
Send Invite Email,Enviar convite mail
Send Me A Copy,Envie-me uma cópia
"Send Newsletters to your contacts, leads.",Enviar Newsletters aos seus contatos e prospectos.
Send SMS,Envie SMS
Send To,Enviar para
Send To Type,Enviar para Digite
"Send an email to users of role ""Material Manager"" and ""Purchase Manager"" when re-order level is crossed.",Enviar um e-mail para os usuários com função &quot;Gerente de Material&quot; e &quot;Gerente de Compras&quot; quando o nível para novo pedido for atingido.
Send automatic emails to Contacts on Submitting transactions.,Enviar e-mails automáticos para os Contatos ao Submeter transações.
"Send bulk SMS to leads, customers, contacts","Enviar SMS em massa para prospectos, clientes e contatos"
Send mass SMS to your contacts,Enviar SMS em massa para seus contatos
Send regular summary reports via Email.,Enviar relatórios resumidos regularmente via e-mail.
Send to this list,Enviar para esta lista
Sender,Remetente
Sender Name,Nome do Remetente
"Sending newsletters is not allowed for Trial users, \				to prevent abuse of this feature.","Envio de newsletters não é permitido para usuários experimentais, \ para evitar o abuso deste recurso."
Sent Mail,E-mails Enviados
Sent On,Enviado em
Sent Quotation,Cotação Enviada
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 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
Serialized Item: ',Item serializado: &#39;
Series,Séries
Series Detail,Detalhe da Séries
Series List for this Transaction,Lista de séries para esta transação
Series Options,Opções de Séries
Server,Servidor
Server Script,Script do servidor
Service Address,Endereço de Serviço
Service Person,Pessoa de Serviço
Session Expired. Logging you out,A sessão expirou. Você será deslogado
Session Expires in (time),A sessão expira em (tempo)
Session Expiry,Duração da sessão
Session Expiry in Hours e.g. 06:00,"Duração da sessão em Horas, por exemplo 06:00"
Set From Image,Definir a partir da imagem
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 Login and Password if authentication is required.,Defina Login e Senha se a autenticação for necessária.
Set New Password,Definir nova senha
Set Value,Definir valor
"Set a new password and ""Save""",Definir uma nova senha e &quot;Salvar&quot;
Set default values for entry,Definir valores padrão para o lançamento
Set default values for users (also used for permissions).,Definir valores padrão para os usuários (também usados para permissões).
Set multiple numbering series for transactions,Definir multiplas séries de numeração para transações
Set permissions on transactions / masters,Definir permissões em transações / cadastros
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.
Set the POP3 email settings to pull emails directly from a mailbox and create Support Tickets,Definir as configurações de e-mail POP3 para puxar e-mails diretamente a partir de uma caixa de correio e criar tickets de suporte
Set workflow rules.,Definir regras do fluxo de trabalho.
"Set your background color, font and image (tiled)","Defina sua cor de fundo, fonte e imagem (lado a lado)"
"Set your outgoing mail SMTP settings here. All system generated notifications, emails will go from this mail server. If you are not sure, leave this blank to use ERPNext servers (emails will still be sent from your email id) or contact your email provider.","Defina suas configurações de de e-mail SMTP aqui. Todas as notificações geradas pelo sistema e e-mails são enviados a partir deste servidor de correio. Se você não tem certeza, deixe este campo em branco para usar servidores ERPNext (e-mails ainda serão enviadas a partir do seu endereço de e-mail) ou entre em contato com seu provedor de e-mail."
Setting Account Type helps in selecting this Account in transactions.,Definir o Tipo de Conta ajuda na seleção desta Conta nas transações.
Settings for About Us Page.,Configurações da Página Sobre Nós.
Settings for Contact Us Page,Configurações da Página Fale Conosco.
Settings for Contact Us Page.,Configurações da Página Fale Conosco.
Settings for Product Catalog on the website,Configurações da Página Catálogo de Produtos no site
Settings for Product Catalog on the website.,Configurações da Página Catálogo de Produtos no site.
Settings for the About Us Page,Configurações da Página Sobre Nós.
"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 Control,Controle de configuração
Setup Series,Configuração de Séries
Setup of fonts and background.,Configuração de fontes e de fundo.
"Setup of top navigation bar, footer and logo.","Configuração de barra de navegação do topo, rodapé, e logotipo."
Setup outgoing SMS via your bulk SMS provider,Configurar envio de SMS através de seu provedor de SMS em massa
Setup to pull emails from support email account,Configuração para puxar e-mails da conta do e-mail de suporte
Ship To,Enviar Para
Shipping Address,Endereço de envio
Shipping Address Name,Nome do Endereço de envio
Shipping Details,Detalhes do envio
Short Bio,Curta Bio
Short biography for website and other publications.,Breve biografia para o site e outras publicações.
Shortcut,Atalho
"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 Modules,Mostrar / Ocultar Módulos
Show Details,Ver detalhes
Show Filters,Mostrar Filtros
Show Price in Website (if set),Mostrar Preço no Website (se definido)
Show Print First,Mostrar Impressão Primeiro
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 rows with zero values,Mostrar as linhas com valores zero
Show this slideshow at the top of the page,Mostrar esta apresentação de slides no topo da página
"Show, hide modules",Mostrar / Ocultar Módulos
Showing only for,Mostrando apenas para
Signature,Assinatura
Signature to be appended at the end of every email,Assinatura para ser inserida no final de cada e-mail
Simplify entry forms by disabling features,Simplificar os formulários de entrada pela desativação de recursos
Single,Único
Single unit of an Item.,Unidade única de um item.
Sky,Céu
Slideshow,Apresentação de slides
Slideshow Items,Itens da Apresentação de slides
Slideshow Name,Nome da Apresentação de slides
Slideshow like display for the website,Exibição do tipo Apresentação de slides para o site
Small Text,Texto Pequeno
Snow,Neve
Solid background color (default light gray),Cor de fundo sólida (padrão cinza claro)
Sorry we were unable to find what you were looking for.,"Desculpe, não encontramos o que você estava procurando."
Sorry you are not permitted to view this page.,"Desculpe, você não tem permissão para visualizar esta página."
Sorry! We can only allow upto 100 rows for Stock Reconciliation.,Desculpe! Nós só podemos permitir no máximo 100 linhas para Reconciliação de Estoque.
Sort By,Classificar por
Sort Order,Ordem de Classificação
Source,Fonte
Source Warehouse,Almoxarifado de origem
Source and Target Warehouse cannot be same,O Almoxarifado de origem e destino não pode ser o mesmo
Source of th,Origem do
"Source of the lead. If via a campaign, select ""Campaign""","Origem do Prospecto. Se foi através de uma campanha, selecione &quot;Campanha&quot;"
Special Page Settings,Configurações Especiais de página
Specification Details,Detalhes da especificação
Split Delivery Note into packages.,Dividir Guia de Remessa em pacotes.
Standard,Padrão
Standard Rate,Taxa normal
"Standard Terms and Conditions that can be added to Sales and Purchases.Examples:1. Validity of the offer.1. Payment Terms (In Advance, On Credit, part advance etc).1. What is extra (or payable by the Customer).1. Safety / usage warning.1. Warranty if any.1. Returns Policy.1. Terms of shipping, if applicable.1. Ways of addressing disputes, indemnity, liability, etc.1. Address and Contact of your Company.","Termos e Condições Padrão que pode ser adicionado para Vendas e Purchases.Examples: 1. Validade do offer.1. Condições de pagamento (adiantado, no crédito etc antecedência, parte) 0,1. O que é muito (ou a pagar pelo Cliente) .1. Segurança / uso warning.1. Garantia se any.1. Retorna Policy.1. Condições de entrega, se applicable.1. Formas de disputas de endereçamento, indenização, responsabilidade, etc.1. Endereço e contato da sua empresa."
"Standard tax template that can be applied to all Purchase Transactions. This template can contain list of tax heads and also other expense heads like ""Shipping"", ""Insurance"", ""Handling"" etc.#### NoteThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.#### Description of Columns1. Calculation Type:     - This can be on **Net Total** (that is the sum of basic amount).    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.    - **Actual** (as mentioned).2. Account Head: The Account ledger under which this tax will be booked3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.4. Description: Description of the tax (that will be printed in invoices / quotes).5. Rate: Tax rate.6. Amount: Tax amount.7. Total: Cumulative total to this point.8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).9. Consider Tax or Charge for: In this section you can specify if the tax / charge is only for valuation (not a part of total) or only for total (does not add value to the item) or for both.10. Add or Deduct: Whether you want to add or deduct the tax.","Modelo imposto padrão que pode ser aplicado a todas as operações de compra. Este modelo pode conter lista de cabeças de impostos e também chefes de despesas outras como &quot;Frete&quot;, &quot;Seguro&quot;, &quot;Manipulação&quot;, etc taxa de imposto # # # # ObservaçãoO você definir aqui será a taxa normal do IVA para todos os itens ** ** . Se houver ** ** Itens que têm taxas diferentes, eles devem ser adicionados no Imposto item ** ** tabela no item ** ** mestre. # # # # Descrição do Columns1. Tipo de Cálculo: - Isto pode ser em ** Total Líquida ** (que é a soma do valor de base). - ** Na linha anterior Total / Montante ** (para impostos cumulativos ou encargos). Se você selecionar esta opção, o imposto será aplicado como um percentual da linha anterior (na tabela do imposto) ou montante total. - ** Real ** (como mencionado) .2. Chefe da conta: O livro conta em que este imposto será booked3. Custo Center: Se o imposto / carga é uma renda (como o transporte) ou despesa que precisa ser contabilizadas a um Custo Center.4. Descrição: Descrição do imposto (que será impresso nas faturas / cotações) .5. Taxa: Imposto rate.6. Quantidade: Imposto amount.7. Total: total acumulado a este point.8. Digite Row: Se com base em &quot;Total linha anterior&quot; você pode escolher o número da linha que será tomado como base para este cálculo (o padrão é a linha anterior) .9. Considere imposto ou encargo para: Nesta seção, você pode especificar se o imposto / carga é apenas para avaliação (não uma parte do total) ou apenas para total (não adiciona valor ao produto) ou para both.10. Adicionar ou Deduzir: Se você quiser adicionar ou deduzir o imposto."
"Standard tax template that can be applied to all Sales Transactions. This template can contain list of tax heads and also other expense / income heads like ""Shipping"", ""Insurance"", ""Handling"" etc.#### NoteThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.#### Description of Columns1. Calculation Type:     - This can be on **Net Total** (that is the sum of basic amount).    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.    - **Actual** (as mentioned).2. Account Head: The Account ledger under which this tax will be booked3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.4. Description: Description of the tax (that will be printed in invoices / quotes).5. Rate: Tax rate.6. Amount: Tax amount.7. Total: Cumulative total to this point.8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).9. Is this Tax included in Basic Rate?: If you check this, it means that this tax will not be shown below the item table, but will be included in the Basic Rate in your main item table. This is useful where you want give a flat price (inclusive of all taxes) price to customers.","Modelo imposto padrão que pode ser aplicado a todas as suas vendas. Este modelo pode conter lista de cabeças de impostos e também outras despesas / receitas cabeças como &quot;Frete&quot;, &quot;Seguro&quot;, &quot;Manipulação&quot;, etc taxa de imposto # # # # ObservaçãoO você definir aqui será a taxa normal do IVA para todos os itens ** . ** Se houver ** ** Itens que têm taxas diferentes, eles devem ser adicionados no Imposto item ** ** tabela no item ** ** mestre. # # # # Descrição do Columns1. Tipo de Cálculo: - Isto pode ser em ** Total Líquida ** (que é a soma do valor de base). - ** Na linha anterior Total / Montante ** (para impostos cumulativos ou encargos). Se você selecionar esta opção, o imposto será aplicado como um percentual da linha anterior (na tabela do imposto) ou montante total. - ** Real ** (como mencionado) .2. Chefe da conta: O livro conta em que este imposto será booked3. Custo Center: Se o imposto / carga é uma renda (como o transporte) ou despesa que precisa ser contabilizadas a um Custo Center.4. Descrição: Descrição do imposto (que será impresso nas faturas / cotações) .5. Taxa: Imposto rate.6. Quantidade: Imposto amount.7. Total: total acumulado a este point.8. Digite Row: Se com base em &quot;Total linha anterior&quot; você pode escolher o número da linha que será tomado como base para este cálculo (o padrão é a linha anterior) .9. É este imposto incluído na tarifa básica:? Se você verificar isso, significa que este imposto não será mostrado abaixo da tabela item, mas será incluída na taxa básica em sua mesa principal item. Isso é útil quando você quer dar um preço fixo (incluindo todos os impostos) preço aos clientes."
Start Date,Data de Início
Start Report For,Começar Relatório para
Start date of current invoice's period,Data de início do período de fatura atual
Starts on,Inicia em
Startup,Startup
State,Estado
State Name,Nome do Estado
States,Estados
Static Parameters,Parâmetros estáticos
Status,Estado
Status must be one of ,Estado deve ser um dos
Statutory info and other general information about your Supplier,Informações estatutárias e outras informações gerais sobre o seu Fornecedor
Stock,Estoque
Stock Ageing,Envelhecimento do Estoque
Stock Analytics,Análise do Estoque
Stock Balance,Balanço de Estoque
Stock Entry,Lançamento no Estoque
Stock Entry Detail,Detalhe do lançamento no Estoque
Stock Frozen Upto,Estoque congelado até
Stock Home,Início de Estoque
Stock Ledger,Livro de Inventário
Stock Ledger Entry,Lançamento do Livro de Inventário
Stock Level,Nível de Estoque
Stock Qty,Qtde. em Estoque
Stock Queue (FIFO),Fila do estoque (PEPS)
Stock Reconciliation,Reconciliação de Estoque
Stock Reconciliation file not uploaded,Arquivo da Reconciliação de Estoque não carregado
Stock UOM,UDM do Estoque
Stock UOM Replace Utility,Utilitário para Substituir UDM do Estoque
Stock Uom,UDM do Estoque
Stock Value,Valor do Estoque
"Stock level frozen up to this date, nobody can do / modify entry except authorized person","Nível de estoque congelado até a presente data, ninguém pode fazer / modificar um lançamento, exceto pessoal autorizado"
Stop,Pare
Stop users from making Leave Applications on following days.,Pare de usuários de fazer aplicações deixam nos dias seguintes.
Stopped,Parado
Structure cost centers for budgeting.,Estrutura dos centros de custo para orçamentação.
Structure of books of accounts.,Estrutura de livros de contas.
Style,Estilo
Style Settings,Configurações de Estilo
"Style represents the button color: Success - Green, Danger - Red, Inverse - Black, Primary - Dark Blue, Info - Light Blue, Warning - Orange","Estilo representa a cor do botão: Sucesso - Verde, Perigo - Vermelho, Inverso - Preto, Primário - Azul Escuro, Informação - Azul Claro, Aviso - Laranja"
"Sub-currency. For e.g. ""Cent""",Sub-moeda. Por exemplo &quot;Centavo&quot;
Sub-domain provided by erpnext.com,Sub-domínio fornecido pelo erpnext.com
Subcontract,Subcontratar
Subdomain,Subdomínio
Subject,Assunto
Submit,Enviar
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
Submitted,Enviado
Success,Sucesso
Suggestion,Sugestão
Suggestions,Sugestões
Sunday,Domingo
Sunny,Ensolarado
Supplier,Fornecedor
Supplier (vendor) name as entered in supplier master,"Nome do fornecedor (vendedor), como inscritos no cadastro de fornecedores"
Supplier Address,Endereço do Fornecedor
Supplier Details,Detalhes do Fornecedor
Supplier Intro,Introdução do Fornecedor
Supplier Master created by ,Cadastro de Fornecedor criado por
Supplier Name,Nome do Fornecedor
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 Warehouse,Almoxarifado do Fornecedor
Supplier classification.,Classificação do Fornecedor.
Supplier database.,Banco de dados do Fornecedor.
Supplier of Goods or Services.,Fornecedor de Bens ou Serviços.
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's currency,Moeda do Fornecedor
Support,Suporte
Support Analytics,Análise do Suporte
Support Email,E-mail de Suporte
Support Email Id,Endereço de E-mail de Suporte
Support Home,Início de Suporte
Support Password,Senha do Suporte
Support Ticket,Ticket de Suporte
Support Ticket Mail Settings,Configurações do E-mail de Tickets de Suporte
Support queries from customers via email or website.,Consultas ao Suporte de clientes via e-mail ou site.
Symbol,Símbolo
Sync Inbox,Sincronizar Caixa de Entrada
Sync Support Mails,Sincronizar E-mails de Suporte
System,Sistema
System Console,Console do Sistema
System Defaults,Padrões do Sistema
System User,Usuário 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."
System generated mails will be sent from this email id.,E-mails gerados pelo sistema serão enviados a partir deste endereço de e-mail.
Table,Tabela
Table Field,Campo da Tabela
Table Mapper Detail,Detalhe do mapeamento da tabela
Table Mapper Details,Detalhes do mapeamento da tabela
Table for Item that will be shown in Web Site,Tabela para Item que será mostrado no site
Tag,Etiqueta
Tag Name,Nome da etiqueta
Tags,Etiquetas
Tahoma,Tahoma
Target,Meta
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 Qty,Qtde. de metas
Target Warehouse,Almoxarifado de destino
Task,Tarefa
Task Details,Detalhes da Tarefa
Task Id,ID da Tarefa
Task Name,Nome da Tarefa
Tasks,Tarefas
Tasks belonging to this Project.,Tarefas pertencentes a este projeto.
Tax,Imposto
Tax Amount,Valor do Imposto
Tax Calculation,Cálculo do Imposto
Tax Rate,Taxa de Imposto
Tax Template for Purchase,Modelo de Impostos para compra
Tax Template for Sales,Modelo de Impostos para vendas
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,Tabela de detalhes fiscal obtido a partir do cadastro de itens como uma string e armazenada neste field.Used dos Impostos e Encargos
Taxable,Tributável
Taxes,Impostos
Taxes and Charges,Impostos e Encargos
Taxes and Charges Added,Impostos e Encargos Adicionados
Taxes and Charges Added (Import),Impostos e Encargos Adicionados (Importação)
Taxes and Charges Calculation,Cálculo de Impostos e Encargos
Taxes and Charges Deducted,Impostos e Encargos Deduzidos
Taxes and Charges Deducted (Import),Impostos e Encargos Deduzidos (Importação)
Taxes and Charges Total,Total de Impostos e Encargos
Taxes and Charges Total*,Total de Impostos e Encargos*
Taxes and Charges1,Impostos e Encargos
Team Members,Membros da Equipe
Team Members Heading,Título da página Membros da Equipe
Template for employee performance appraisals.,Modelo para avaliação do desempenho dos funcionários.
Template of terms or contract.,Modelo de termos ou contratos.
Term Details,Detalhes dos Termos
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 HTML,Termos e Condições HTML
Terms and Conditions Template,Modelo de Termos e Condições
Terms and Conditions1,Termos e Condições
Territory,Território
Territory Manager,Gerenciador de Territórios
Territory Name,Nome do Território
Territory Targets,Metas do Território
TerritoryHelp,Ajuda do Território
Test,Teste
Test Data,Dados de Teste
Test Date,Data do Teste
Test Email Id,Endereço de Email de Teste
Test Link,Testar Link
Test Runner,Test Runner
Test Select,Selecione o Teste
Test Text,Texto de Teste
Test the Newsletter,Newsletter de Teste
Text,Texto
Text Align,Alinhar Texto
Text Editor,Editor de Texto
"The ""Web Page"" that is the website home page",A &quot;Página Web&quot; que é a página inicial do site
The BOM which will be replaced,A LDM que será substituída
"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 account to which you will pay (have paid) the money to.,A conta para a qual você vai pagar (ou paguou) o dinheiro.
The date at which current entry is corrected in the system.,A data em que o lançamento atual é corrigido no sistema.
The date at which current entry is made in system.,A data em que o lançamento atual é feito no sistema.
The date at which current entry will get or has actually executed.,A data em que o lançamento atual vai ser ou foi realmente executado.
The date on which next invoice will be generated. It is generated on submit.,A data em que próxima fatura será gerada. Ele é gerado em enviar.
The date on which recurring invoice will be stop,A data em que fatura recorrente será 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 a fatura automática será gerada por exemplo, 05, 28, etc"
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 / website as you want to appear on browser title bar. All pages will have this as the prefix to the title.,O nome da sua empresa / site da forma que você quer que apareça na barra de título do navegador. Todas as páginas vão ter isso como o prefixo para o título.
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 system provides pre-defined roles, but you can <a href='#List/Role'>add new roles</a> to set finer permissions","O sistema fornece funções pré-definidas, mas você pode <a href='#List/Role'>adicionar novas funções</a> para estabelecer as permissões mais precisas"
The unique id for tracking all recurring invoices. It is generated on submit.,O ID único para acompanhar todas as faturas recorrentes. Ele é gerado ao enviar.
Theme,Tema
Then By (optional),"Em seguida, por (opcional)"
These properties are Link Type fields from all Documents.,Estas propriedades são campos do tipo ligação de todos os documentos.
"These properties can also be used to 'assign' a particular document, whose property matches with the User's property to a User. These can be set using the <a href='#permission-manager'>Permission Manager</a>","Essas propriedades também podem ser usados ​​para &quot;atribuir&quot; um documento específico, cuja propriedade coincide com a propriedade do usuário para um usuário. Estas podem ser definidas usando o <a href='#permission-manager'>Gerenciador de Permissão</a>"
These properties will appear as values in forms that contain them.,Estas propriedades aparecerão como valores em formulários que as contêm.
These values will be automatically updated in transactions and also will be useful to restrict permissions for this user on transactions containing these values.,Esses valores serão atualizados automaticamente em transações e também serão úteis para restringir as permissões para este usuário em operações que contenham esses valores.
"This Item Group represents ""products.html""",Este Grupo de Itens representa &quot;produtos.html&quot;
This Price List will be selected as default for all Customers under this Group.,Esta lista de preços será selecionado como padrão para todos os clientes sob este grupo.
This currency will get fetched in Purchase transactions of this supplier,Essa moeda vai ser buscada em transações de compra deste fornecedor
This currency will get fetched in Sales transactions of this customer,Essa moeda vai ser buscada em transações de vendas deste cliente
"This feature is for merging duplicate warehouses. It will replace all the links of this warehouse by ""Merge With"" warehouse. After merging you can delete this warehouse, as stock level for this warehouse will be zero.","Este recurso é para a fusão almoxarifados duplicados. Ele irá substituir todos os links deste almoxarifado pelos do almoxarifado &quot;Mesclar Com&quot;. Após a fusão você pode excluir este almoxarifado, pois o nível de estoque para este almoxarifado vai ser zero."
This field will appear only if the fieldname defined here has value OR the rules are true (examples): <br>myfieldeval:doc.myfield=='My Value'<br>eval:doc.age>18,Este campo só aparece se o nome do campo definido aqui tem valor ou as regras são verdadeiras (exemplos): <br> myfieldeval: doc.myfield == &#39;o meu valor&#39; <br> eval: doc.age&gt; 18
This goes above the slideshow.,Isto vai acima do slideshow.
This is PERMANENT action and you cannot undo. Continue?,Esta é uma ação PERMANENTE e não pode ser desfeita. Continuar?
This is an auto generated Material Request.,Este é um auto solicitar material gerado.
This is permanent action and you cannot undo. Continue?,Esta é uma ação PERMANENTE e não pode ser desfeita. Continuar?
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 tool helps you to update or fix the quantity and valuation of stock in the system. It is typically used to synchronise the system values and what actually exists in your warehouses.,Esta ferramenta ajuda a atualizar ou corrigir a quantidade e a valorização do estoque no sistema. Ela é geralmente usada para sincronizar os valores do sistema e o que realmente existe em seus almoxarifados.
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,Tempo
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
Timesheet,Quadro de Horários
Timesheet By,Quadro de Horários Por
Timesheet Date,Data do Quadro de Horários
Timesheet Detail,Detalhe do Quadro de Horários
Timesheet Details,Detalhes do Quadro de Horários
Timesheet for tasks.,Quadro de Horários para as tarefas.
Title,Título
Title / headline of your page,Título / chamada da sua página
Title Case,Caixa do Título
Title Prefix,Prefixo do Título
To,Para
To Date,Até a Data
To Discuss,Para Discutir
To Do,Lista de Tarefas
To Do List,Para fazer a lista
To DocType,Para DocType
To Field,Para Campo
To PR Date,Data de PR
To Package No.,Para Pacote Nº.
To Reply,Para Responder
To Table,Para Tabela
To Warehouse,Para Almoxarifado
"To add a tag, open the document and click on ""Add Tag"" on the sidebar","Para adicionar uma etiqueta, abra o documento e clique em &quot;Adicionar Etiqueta&quot; na barra lateral"
"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 automatically create Support Tickets from your incoming mail, set your POP3 settings here. You must ideally create a separate email id for the erp system so that all emails will be synced into the system from that mail id. If you are not sure, please contact your EMail Provider.","Para criar automaticamente Tickets de Suporte a partir da sua caixa de entrada, defina as configurações de POP3 aqui. Você deve, idealmente, criar um E-mail separado para o Sistema ERP para que todas as mensagens sejam sincronizadas com o sistema a partir daquele E-mail. Se você não tiver certeza, entre em contato com seu provedor de e-mail."
"To create Quotation against Opportunity, Select Opportunity No. and click on 'Pull Opportunity Details' ","Para criar uma Cotação para uma Oportunidade, selecione o Nº da Oportunidade e clique em &#39;Obter Detalhes da Oportunidade&quot;"
"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 enable <b>Point of Sale</b> features,Para habilitar as características de <b>Ponto de Venda</b> 
"To fetch items again, click on 'Get Items' button \						or update the Quantity manually.","Para buscar itens novamente, clique em &quot;Obter itens &#39;botão \ ou atualizar a quantidade manualmente."
"To format columns, give column labels in the query.","Para formatar colunas, dar rótulos de coluna na consulta."
"To further restrict permissions based on certain values in a document, use the 'Condition' settings.","Para restringir ainda mais as permissões com base em determinados valores em um documento, use as definições de &#39;Condição&#39;."
To get Item Group in details table,Para obter Grupo de Itens na tabela de detalhes
"To import attendance data, click on ""Add"" button, select the saved CSV file and click on ""Upload"".Select the date format as attendance date format in CSV file.Click on ""Import"".","Para importar dados de atendimento, clique no botão &quot;Adicionar&quot;, selecione o arquivo CSV salvo e clique em &quot;Upload&quot;. Selecione o formato de data no formato de data em atendimento CSV file.Click em &quot;Importar&quot;."
To manage multiple series please go to Setup > Manage Series,"Para gerenciar várias séries por favor, vá para Configuração &gt; Gerenciar Séries"
To restrict a User of a particular Role to documents that are explicitly assigned to them,Para restringir um usuário de uma função a documentos que são explicitamente atribuídos a ele
To restrict a User of a particular Role to documents that are only self-created.,Para restringir um usuário de uma função a apenas documentos que ele próprio criou.
"To set user roles, just go to <a href='#List/Profile'>Setup > Users</a> and click on the user to assign roles.","Para definir funções ao usuário, basta ir a <a href='#List/Profile'>Configuração&gt; Usuários</a> e clicar sobre o usuário para atribuir funções."
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<br>Delivery Note, Enuiry, Material Request, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Sales Invoice, Sales BOM, Sales Order, Serial No","Para acompanhar marca nos seguintes documentos <br> Nota de Entrega, Enuiry, solicitar material, Item, Ordem de Compra, comprovante de compra, recebimento Comprador, cotação, nota fiscal de venda, BOM Vendas, Ordem de Vendas, N º de Série"
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.
"To update your HTML from attachment, click here","Para atualizar seu código HTML a partir do anexo, clique aqui"
ToDo,Lista de Tarefas
Tools,Ferramentas
Top Bar,Barra Superior
Top Bar Background,Fundo da barra superior
Top Bar Item,Item da barra superior
Top Bar Items,Itens da barra superior
Total,Total
Total (sum of) points distribution for all goals should be 100.,Total (soma) da distribuição de pontos para todos os objetivos deve ser 100.
Total +Tax,Total + Impostos
Total Advance,Antecipação Total
Total Amount,Valor Total
Total Amount To Pay,Valor total a pagar
Total Amount in Words,Valor Total por extenso
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 Deduction,Dedução Total
Total Earning,Total de Ganhos
Total Experience,Experiência total
Total Hours (Actual),Total de Horas (Real)
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 Operating Cost,Custo de Operacional Total
Total Points,Total de pontos
Total Raw Material Cost,Custo Total das matérias-primas
Total SMS Sent,Total de SMS enviados
Total Sanctioned Amount,Valor Total Sancionado
Total Score (Out of 5),Pontuação total (sobre 5)
Total Tax,Total de Impostos
Total Tax Amount,Valor Total do Imposto
Total Tax*,Total de Impostos*
Total Taxes and Charges,Total de Impostos e Encargos
Total days in month,Total de dias no mês
Total in words,Total por extenso
Totals,Totais
Track Quotations received from Suppliers.,Acompanhar cotações recebidos dos fornecedores.
Track separate Income and Expense for product verticals or divisions.,Acompanhar Receitas e Gastos separados para produtos verticais ou divisões.
Track this Delivery Note against any Project,Acompanhar este Guia de Remessa contra qualquer projeto
Track this Sales Invoice against any Project,Acompanhar esta Nota Fiscal de Venda 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
Transfer,Transferir
Transfer stock from one warehouse to another.,Transferir o estoque de um almoxarifado para outro.
Transition Rules,Regras de transição
Transporter Info,Informações da Transportadora
Transporter Name,Nome da Transportadora
Transporter lorry number,Número do caminhão da Transportadora
Trash,Lixo
Trash Control,Controle de lixo
Trash Reason,Razão de pôr no lixo
Tree of item classification,Árvore de classificação de itens
Trend Analyzer,Analisador de tendência
Trend Analyzer Control,Controle do Analisador de tendência
Trial Balance,Balancete
Tropic,Trópico
Tuesday,Terça-feira
Tweet will be shared via your user account (if specified),Tweet serão compartilhados através da sua conta de usuário (se especificado)
Twitter Share,Compartilhar Twitter
Twitter Share via,Twitter Partilhar através do
Type,Tipo
Type of employment master.,Tipo de cadastro de emprego.
"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 warehouse,Tipos de almoxarifado
UOM,UDM
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 Details,Detalhes da UDM
UOM Name,Nome da UDM
UOM Replace Utility,Utilitário para Substituir UDM
UPPER CASE,MAIÚSCULAS
URL,URL
Unable to complete request: ,Não foi possível concluir pedido:
Under AMC,Sob CAM
Under Graduate,Em Graduação
Under Section,Segundo a Seção
Under Warranty,Sob Garantia
Unit of Measure,Unidade de Medida
"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
Unread Messages,Mensagens não lidas
Unscheduled,Sem agendamento
Unsubscribe,Cancelar Inscrição
Unsubscribed,Inscrição Cancelada
Update,Atualizar
Update Clearance Date,Atualizar Data Liquidação
Update Delivery Date,Atualizar Data de Entrega
Update Field,Atualizar Campo
Update PR,Atualizar PR
Update Sales Order,Atualizar Ordem de Venda
Update Series,Atualizar Séries
Update Series Number,Atualizar Números de Séries
Update Stock,Atualizar Estoque
Update Value,Atualizar Valor
"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.
Updates,Atualizações
Updates HTML,Atualizações HTML
Upload Attachment,Carregar anexos
Upload Attendance Data,Carregar dados de comparecimento
Upload HTML,Carregar HTML
Upload a file,Carregar um arquivo
Upload attendance,Carregar comparecimento
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.
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 Cannot Create,O Usuário não pode criar
User Cannot Search,O Usuário não pode pesquisar
User ID,ID de Usuário
User Image,Imagem do Usuário
User Name,Nome de Usuário
User Properties,Propriedades do Usuário
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 Tags,Etiquetas de Usuários
User Type,Tipo de Usuário
User must always select,O Usuário deve sempre selecionar
User not allowed entry in the Warehouse,Entrada do usuário não é permitido no Armazém
UserRole,Função do Usuário
Username,Nome do Usuário
Users,Usuários
Users Voted,Votos de usuários
Users with this role are allowed to do / modify accounting entry before frozen date,Usuários com esta função estão autorizados a fazer / modificar lançamentos de contabilidade antes da data de congelamento
Users with this role are allowed to do / modify stock entry before frozen date,Usuários com esta função estão autorizados a fazer / modificar lançamentos de material no estoque antes da data de congelamento
Utilities,Utilitários
Utility,Utilitário
Valid Upto,Válido até
Validation Logic,Lógica de Validação
Valuation,Avaliação
Valuation Control,Controle de Avaliação
Valuation Method,Método de Avaliação
Valuation Rate,Taxa de Avaliação
Valuation and Total,Avaliação e Total
Value,Valor
Verdana,Verdana
Verified By,Verificado Por
Visit,Visita
Visit report for maintenance call.,Relatório da visita da chamada de manutenção.
Voucher Detail No,Nº do Detalhe do comprovante
Voucher ID,ID do Comprovante
Voucher Import Tool,Ferramenta de Importação de comprovantes
Voucher No,Nº do comprovante
Voucher Type,Tipo de comprovante
WIP Monitor,Monitor do WIP
Waiting for Customer,À espera de Cliente
Walk In,Walk In
Warehouse,Almoxarifado
Warehouse Contact Info,Informações de Contato do Almoxarifado
Warehouse Detail,Detalhe do Almoxarifado
Warehouse Name,Nome do Almoxarifado
Warehouse Type,Tipo de Almoxarifado
Warehouse User,Usuário Armazém
Warehouse Users,Usuários do Warehouse
Warehouse where you are maintaining stock of rejected items,Almoxarifado onde você está mantendo estoque de itens rejeitados
Warehouse-wise Item Reorder,Armazém-sábio item Reordenar
Warn,Avisar
Warning,Aviso
Warning: Leave application contains following block dates,Aviso: pedido de férias contém as datas de blocos seguintes
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)
Web Content,Conteúdo da Web
Web Page,Página Web
Webforms,Formulários Web
Website,Site
Website Description,Descrição do site
Website Home,Página Inicial do Site
Website Item Group,Grupo de Itens do site
Website Item Groups,Grupos de Itens do site
Website Overall Settings,Configurações gerais do site
Website Price List,Lista de Preços do site
Website Product Categories,Categorias de Produto do site
Website Product Category,Categoria de Produto do site
Website Script,Script do site
Website Settings,Configurações do site
Website Slideshow,Slideshow do site
Website Slideshow Item,Item do Slideshow do site
Website Warehouse,Almoxarifado do site
Wednesday,Quarta-feira
Weekly,Semanal
Weekly Off,Descanso semanal
Weight UOM,UDM de Peso
Weightage,Peso
Weightage (%),Peso (%)
"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 you <b>Amend</b> a document after cancel and save it, it will get a new number that is a version of the old number.","Quando você <b>Alterar</b> um documento depois de cancelar e salvá-lo, ele vai ter um novo número que é uma versão do número antigo."
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.
White,Branco
Widowed,Viúvo(a)
Width,Largura
Will be calculated automatically when you enter the details,Será calculado automaticamente quando você digitar os detalhes
Will be fetched from Customer,Será obtido a partir do Cliente
With Operations,Com Operações
Work Done,Trabalho feito
Work In Progress,Trabalho em andamento
Workflow,Fluxo de Trabalho
Workflow Action,Ação do Fluxo de Trabalho
Workflow Action Detail,Detalhe da Ação do Fluxo de Trabalho
Workflow Action Details,Detalhes da Ação do Fluxo de Trabalho
Workflow Action Master,Cadastro da Ação do Fluxo de Trabalho
Workflow Action Name,Nome da Ação do Fluxo de Trabalho
Workflow Document State,Estado do Documento do Fluxo de Trabalho
Workflow Document States,Estados do Documento do Fluxo de Trabalho
Workflow Engine,Mecanismo do Fluxo de Trabalho
Workflow Name,Nome do Fluxo de Trabalho
Workflow Rule,Regra do Fluxo de Trabalho
Workflow Rule Detail,Detalhe da Regra do Fluxo de Trabalho
Workflow Rule Details,Detalhes da Regra do Fluxo de Trabalho
Workflow State,Estado do Fluxo de Trabalho
Workflow State Field,Campo do Estado do Fluxo de Trabalho
Workflow State Name,Nome do Estado do Fluxo de Trabalho
Workflow Transition,Transição do Fluxo de Trabalho
Workflow Transitions,Transições do Fluxo de Trabalho
Workflow state represents the current state of a document.,O estado do Fluxo de Trabalho representa o estado atual de um documento.
Workflow will start after saving.,Fluxo de trabalho será iníciado após salvar.
Workfow,Fluxo de Trabalho
Working,Trabalhando
Workstation,Estação de Trabalho
Workstation Name,Nome da Estação de Trabalho
Write,Escrever
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
Write a Python file in the same folder where this is saved and return column and result.,Gravar um arquivo Python na mesma pasta onde este é guardado e coluna de retorno e resultado.
Write a SELECT query. Note result is not paged (all data is sent in one go).,Escreva uma consulta SELECT. Resultado nota não é paginada (todos os dados são enviados de uma só vez).
Year,Ano
Year Closed,Ano Encerrado
Year Name,Nome do Ano
Year Start Date,Data de início do ano
Year of Passing,Ano de Passagem
Yearly,Anual
Yes,Sim
Yesterday,Ontem
You are not authorized to do/modify back dated entries before ,Você não está autorizado a fazer / modificar volta entradas datadas antes
You can create more earning and deduction type from Setup --> HR,Você pode criar mais tipos de Ganhos e Deduções a partir de Configuração -&gt; RH
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 make a delivery note from multiple sales orders. Select sales orders one by one and click on the button below.,"Você pode fazer uma Guia de Remessa a partir de várias Ordens de Venda. Selecione as Ordens de Venda, uma a uma e clique no botão abaixo."
You can make a purchase order from multiple Material Requests. Select Material Requests one by one and click on the button below.,Você pode fazer um pedido de compra de materiais pedidos múltiplos. Selecione pedidos se um por um e clique no botão abaixo.
You can make a purchase order from multiple Supplier Quotations. Select Supplier Quotations one by one and click on the button below.,"Você pode fazer uma Ordem de Compra a partir de várias Cotações do Fornecedor. Selecione as Cotações do Fornecedor, uma a uma e clique no botão abaixo."
You can make a purchase receipt from multiple purchase orders. Select purchase orders one by one and click on the button below.,"Você pode fazer um Recibo de Compra a partir de várias Ordens de Compra. Selecione as Ordens de Compra, uma a uma e clique no botão abaixo."
You can set various 'properties' to Users to set default values and apply permission rules based on the value of these properties in various forms.,Você pode definir vários &#39;propriedades&#39; para usuários para definir os valores padrão e aplicar regras de permissão com base no valor dessas propriedades em várias formas.
You can use <a href='#Form/Customize Form'>Customize Form</a> to set levels on fields.,Você pode usar <a href='#Form/Customize Form'>Personalizar Formulário</a> para definir os níveis nos campos.
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 download is being built, this may take a few moments...","O seu download está sendo construído, isso pode demorar alguns instantes ..."
Your letter head content in HTML.,O conteúdo do seu cabeçalho em HTML.
Your sales person who will contact the customer in future,Seu vendedor que entrará em contato com o cliente no futuro
Your sales person who will contact the lead in future,Seu vendedor que entrará em contato com o prospecto 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 sales person will get a reminder on this date to contact the lead,Seu vendedor receberá um lembrete nesta data para contatar o prospecto
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!
[Label]:[Field Type]/[Options]:[Width],[Label]: [Tipo do Campo] / [Opções]: [Largura]
add your own CSS (careful!),adicione seu próprio CSS (cuidado!)
adjust,ajustar
align-center,Centralizar
align-justify,Justificar
align-left,alinhar à esquerda
align-right,alinhar à direita
and,e
arrow-down,seta para baixo
arrow-left,seta para a esquerda
arrow-right,seta para a direita
arrow-up,seta para cima
asterisk,asterisco
backward,para trás
ban-circle,círculo de proibição
barcode,código de barras
bell,sino
bold,negrito
book,livro
bookmark,favorito
briefcase,pasta
bullhorn,megafone
calendar,calendário
camera,câmera
cancel,cancelar
certificate,certificado
check,marcar
chevron-down,divisa-abaixo
chevron-left,divisa-esquerda
chevron-right,divisa-direito
chevron-up,divisa-acima
circle-arrow-down,círculo de seta para baixo
circle-arrow-left,círculo de seta para a esquerda
circle-arrow-right,círculo de seta à direita
circle-arrow-up,círculo de seta para cima
cog,roda dentada
comment,comentário
create a Custom Field of type Link (Profile) and then use the 'Condition' settings to map that field to the Permission rule.,Criar um Campo Personalizado do tipo ligação (Perfil) e depois usar as configurações de &#39;Condição&#39; para mapear o campo para a regra de Permissão.
dashboard,painel de instrumentos
dd-mm-yyyy,dd-mm-aaaa
dd/mm/yyyy,dd/mm/aaaa
deactivate,desativar
does not belong to BOM: ,não pertence a LDM:
does not match,não corresponde
download,baixar
download-alt,download-alt
"e.g. 0.5, 2.5 etc","por exemplo, 0,5, 2,5, etc"
"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. Office, Billing, Shipping","por exemplo Escritório, Faturamento, Expedição"
edit,editar
eg. Cheque Number,"por exemplo, Número do cheque"
eject,ejetar
english,Inglês
envelope,envelope
equal,igual
español,español
exclamation-sign,sinal de exclamação
eye-close,olho fechado
eye-open,olho aberto
facetime-video,vídeo do facetime
fast-backward,retrocesso rápido
fast-forward,avanço rápido
file,arquivo
film,filme
filter,filtrar
fire,fogo
flag,bandeira
folder-close,fechar pasta
folder-open,abrir pasta
font,fonte
forward,para a frente
français,français
fullscreen,tela cheia
gift,presente
glass,vidro
globe,globo
greater than,maior que
greater than equal,maior ou igual
hand-down,mão abaixo
hand-left,mão à esquerda
hand-right,mão à direita
hand-up,mão acima
has been entered atleast twice,foi inserido pelo menos duas vezes
hdd,hd
headphones,fones de ouvido
heart,coração
home,início
inbox,caixa de entrada
indent-left,indentar à esquerda
indent-right,indentar à direita
info-sign,Sinal de Informações
is a cancelled Item,é um Item cancelado
is not a Stock Item,não é um Item de Estoque
is not allowed.,não é permitido.
italic,itálico
leaf,folha
less than,menor que
less than equal,menor ou igual
lft,esq.
list,lista
list-alt,lista de alt-
lock,trancar
magnet,ímã
map-marker,marcador do mapa
minus,menos
minus-sign,sinal de menos
mm-dd-yyyy,mm-dd-aaaa
mm/dd/yy,mm/dd/aa
mm/dd/yyyy,mm/dd/aaaa
move,mover
music,música
nederlands,nederlands
not equal,não igual
not within Fiscal Year,não está dentro do Ano Fiscal
of,de
of type Link,do tipo ligação
off,fora
ok,ok
ok-circle,ok círculo
ok-sign,ok-sinal
old_parent,old_parent
or,ou
pause,pausa
pencil,lápis
picture,imagem
plane,avião
play,jogar
play-circle,jogo-círculo
plus,mais
plus-sign,sinal de mais
português,português
print,imprimir
qrcode,QRCode
question-sign,ponto de interrogação
question-view,pergunta-view
questions,perguntas
random,aleatório
reached its end of life on,chegou ao fim de vida em
refresh,atualizar
remove,remover
remove-circle,remove-círculo
remove-sign,remover-assinar
repeat,repetir
resize-full,redimensionamento completo
resize-horizontal,redimensionamento horizontal
resize-small,redimensionamento pequeno
resize-vertical,redimensionamento vertical
retweet,retwitar
rgt,dir.
road,estrada
screenshot,captura de tela
search,pesquisar
share,ação
share-alt,partes-alt
shopping-cart,carrinho de compras
signal,sinalizar
star,estrela
star-empty,estrelas vazio
step-backward,passo para trás
step-forward,passo para frente
stop,parar
tag,etiqueta
tags,etiquetas
"target = ""_blank""",target = &quot;_blank&quot;
tasks,tarefas
text-height,altura de texto
text-width,largura de texto
th,ª
th-large,ª-grande
th-list,ª-lista
thumbs-down,polegar para baixo
thumbs-up,polegar para cima
time,tempo
tint,matiz
to,para
to be dropped,de ser abandonada
trash,lixo
upload,carregar
user,usuário
user_image_show,user_image_show
values and dates,valores e datas
volume-down,diminuir volume
volume-off,mudo
volume-up,aumentar volume
warning-sign,sinal de alerta
website page link,link da página do site
wrench,chave inglesa
yyyy-mm-dd,aaaa-mm-dd
zoom-in,aumentar zoom
zoom-out,diminuir zoom
