 (Half Day),(Meio Dia)
 against same operation,contra a mesma operação
 already marked,já marcada
 and year: ,e ano:
 at warehouse: ,em armazém:
 by Role ,por função
 cannot be 0,não pode ser 0
 cannot be deleted.,não pode ser excluído.
 does not belong to the company,não pertence à empresa
 has already been submitted.,já foi apresentado.
 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ória para este item"
 is mandatory,é obrigatória
 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."
 is present in one or many Active BOMs,está presente em uma ou várias BOMs ativos
 not active or does not exists in the system,não está ativo ou não existe no sistema
 not submitted,não apresentou
 or the BOM is cancelled or inactive,ou o BOM é cancelado ou inativo
 should be 'Yes'. As Item: ,deve ser &quot;sim&quot;. Como item:
 should be same as that in ,deve ser o mesmo que na
 was on leave on ,estava de licença em
 will be over-billed against mentioned ,será super-faturados contra mencionada
 will become ,ficará
"""Company History""",&quot;História da Companhia&quot;
"""Team Members"" or ""Management""",&quot;Membros da Equipe&quot; ou &quot;gerenciamento&quot;
%  Delivered,Entregue%
% Amount Billed,Valor% faturado
% Billed,Anunciado%
% Completed,% Concluído
% Installed,Instalado%
% Received,Recebido%
% of materials billed against this Purchase Order.,% De materiais faturado contra esta Ordem de Compra.
% of materials billed against this Sales Order,% De materiais faturado contra esta Ordem de Vendas
% of materials delivered against this Delivery Note,% Dos materiais entregues contra esta Nota de Entrega
% of materials delivered against this Sales Order,% Dos materiais entregues contra esta Ordem de Vendas
% of materials ordered against this Material Request,% De materiais ordenou contra este pedido se
% of materials received against this Purchase Order,% Do material recebido contra esta Ordem de Compra
"' 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."
' in Company: ,&#39;Na empresa:
'To Case No.' cannot be less than 'From Case No.',&quot;Para Processo n º &#39; não pode ser inferior a &#39;From Processo n&#39;
* 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,Hoje ** ** Mestre
**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 ** Ano Fiscal **.
. Outstanding cannot be less than zero. \				 	Please match exact outstanding.,. Destacável não pode ser inferior a zero. \ Por favor correspondência exata em circulação.
. Please set status of the employee as 'Left',". Por favor, definir o status do funcionário como &#39;esquerda&#39;"
. You can not mark his attendance as 'Present',. Você não pode marcar sua presença como &quot;presente&quot;
"000 is black, fff is white","000 é preto, é branco fff"
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 cliente código do item sábio e para torná-los pesquisáveis ​​com base em seu código usar esta opção
12px,12px
13px,13px
14px,14px
15px,15px
16px,16px
2 days ago,Há 2 dias
: Duplicate row from same ,: Duplicar linha do mesmo
: It is linked to other active BOM(s),: Está ligado ao BOM ativa outro (s)
: Mandatory for a Recurring Invoice.,: Obrigatório para uma factura 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"">Manage Customer Groups</a>","<a href=""#Sales Browser/Customer Group"">Gerenciar grupos de clientes</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/Item Group"">Manage Item Groups</a>","<a href=""#Sales Browser/Item Group"">Gerenciar Grupos de itens</a>"
"<a href=""#Sales Browser/Territory"">Territory</a>","<a href=""#Sales Browser/Territory"">Território</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 apresentados por cancelá-los e altera-los.
"<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&gt; Série Nomeando</span>"
A Customer exists with same name,Um cliente existe com mesmo nome
A Lead with this email id should exist,Um chumbo com esse ID de e-mail deve existir
"A Product or a Service that is bought, sold or kept in stock.","Um produto ou um serviço que é comprado, vendido ou mantidos em estoque."
A Supplier exists with same name,Um Fornecedor existe com mesmo nome
A condition for a Shipping Rule,A condição para uma regra de envio
A logical Warehouse against which stock entries are made.,Um armazém lógico contra o qual as entradas de ações são feitas.
A new popup will open that will ask you to select further conditions.,Um pop-up será aberto novo 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 de terceiros revendedor / / comissão do agente de afiliados / / revendedor que vende os produtos para empresas de 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,AMC Data de Validade
ATT,ATT
Abbr,Abbr
About,Sobre
About Us Settings,Quem Somos Configurações
About Us Team Member,Quem Somos Membro da Equipe
Above Value,Acima de Valor
Absent,Ausente
Acceptance Criteria,Critérios de Aceitação
Accepted,Aceito
Accepted Quantity,Quantidade Aceito
Accepted Warehouse,Armazém Aceito
Account,Conta
Account Balance,Saldo em Conta
Account Details,Detalhes da conta
Account Head,Chefe conta
Account Id,Id da conta
Account Name,Nome da conta
Account Type,Tipo de conta
Accounting,Contabilidade
Accounting Year.,Ano de contabilidade.
"Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.","Registro contábil congelado até a presente data, ninguém pode fazer / modificar entrada exceto papel especificado abaixo."
Accounting journal entries.,Lançamentos contábeis jornal.
Accounts,Contas
Accounts Frozen Upto,Contas congeladas Upto
Accounts Payable,Contas a Pagar
Accounts Receivable,Contas a receber
Accounts Settings,Configurações de contas
Action,Ação
Active,Ativo
Active: Will extract emails from ,Ativo: Será que extrair e-mails a partir de
Activity,Atividade
Activity Log,Registro de Atividade
Activity Type,Tipo de Atividade
Actual,Real
Actual Budget,Orçamento real
Actual Completion Date,Data de conclusão real
Actual Date,Data Real
Actual End Date,Data final real
Actual Invoice Date,Actual Data da Fatura
Actual Posting Date,Actual Data lançamento
Actual Qty,Qtde real
Actual Qty (at source/target),Qtde real (a origem / destino)
Actual Qty After Transaction,Qtde real após a transação
Actual Quantity,Quantidade real
Actual Start Date,Data de início real
Add,Adicionar
Add / Edit Taxes and Charges,Adicionar / Editar Impostos e Taxas
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 Comment,Adicionar comentário
Add Google Analytics ID: eg. UA-89XXX57-1. Please search help on Google Analytics for more information.,"Adicionar Google Analytics ID: por exemplo. UA-89XXX57-1. Por favor, procure ajuda no Google Analytics para obter mais informações."
Add Message,Adicionar mensagem
Add New Permission Rule,Adicionar regra nova permissão
Add Reply,Adicione Responder
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 Materiais. Você também pode preparar um Termos e Condições dominar e utilizar 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 Termos e Condições mestre 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 de oferta etc Você também pode preparar um Termos e Condições mestre e usar o modelo"
Add Total Row,Adicionar Linha de Total
Add a banner to the site. (small banners are usually good),Adicionar um banner para o site. (Pequenos banners são geralmente boas)
Add attachment,Adicionar anexo
Add code as &lt;script&gt;,Adicionar código como &lt;script&gt;
Add new row,Adicionar nova linha
Add or Deduct,Adicionar ou Deduzir
Add rows to set annual budgets on Accounts.,Adicionar linhas para definir orçamentos anuais nas contas.
"Add the name of <a href=""http://google.com/webfonts"" target=""_blank"">Google Web Font</a> e.g. ""Open Sans""","Adicione o nome do <a href=""http://google.com/webfonts"" target=""_blank"">Google Web Font</a> por exemplo, &quot;Sans Abertas&quot;"
Add to To Do,Adicionar ao que fazer
Add to To Do List of,Adicionar ao fazer a lista de
Add/Remove Recipients,Adicionar / Remover Destinatários
Additional Info,Informações Adicionais
Address,Endereço
Address & Contact,Address &amp; Contact
Address & Contacts,Endereço e contatos
Address Desc,Endereço Descr
Address Details,Detalhes de endereço
Address HTML,Abordar HTML
Address Line 1,Endereço Linha 1
Address Line 2,Endereço Linha 2
Address Title,Título endereço
Address Type,Tipo de endereço
Address and other legal information you may want to put in the footer.,Endereço e informações jurídicas outro que você pode querer colocar no rodapé.
Address to be displayed on the Contact Page,O endereço deve ser exibida na página de contato
Adds a custom field to a DocType,Adiciona um campo personalizado para um DocType
Adds a custom script (client or server) to a DocType,Adiciona um script personalizado (cliente ou servidor) para um DocType
Advance Amount,Quantidade antecedência
Advance amount,Valor do adiantamento
Advanced Scripting,Script Avançadas
Advanced Settings,Configurações avançadas
Advances,Avanços
Advertisement,Anúncio
After Sale Installations,Após instalações Venda
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 documento n
Against Document No,Contra documento n
Against Expense Account,Contra a conta de despesas
Against Income Account,Contra Conta Renda
Against Journal Voucher,Contra Vale Jornal
Against Purchase Invoice,Contra a Nota Fiscal de Compra
Against Sales Invoice,Contra a nota fiscal de venda
Against Voucher,Contra Vale
Against Voucher Type,Tipo contra Vale
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,Envelhecimento Data
All Addresses.,Todos os endereços.
All Contact,Todos Contato
All Contacts.,Todos os contatos.
All Customer Contact,Todos contato do cliente
All Day,Dia de Todos os
All Employee (Active),Todos Empregado (Ativo)
All Lead (Open),Todos chumbo (Aberto)
All Products or Services.,Todos os produtos ou serviços.
All Sales Partner Contact,Todos Contato parceiro de vendas
All Sales Person,Todos Vendas Pessoa
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Todas as transações de vendas pode ser marcado contra diversas Pessoas ** ** vendas de modo que você pode definir e monitorar metas.
All Supplier Contact,Todos contato fornecedor
"All account columns should be after \							standard columns and on the right.							If you entered it properly, next probable reason \							could be wrong account name.							Please rectify it in the file and try again.","Todas as colunas de contas deve ser depois \ colunas padrão e à direita. Se você digitou corretamente, próximo provável razão \ poderia ser o nome da conta errada. Por favor, retificá-la no arquivo e tente novamente."
"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 eventuais Estados de fluxo de trabalho e os papéis do fluxo de trabalho. <br> Docstatus Opções: 0 é &quot;Salvo&quot;, 1 é &quot;Enviado&quot; e 2 é &quot;Cancelado&quot;"
All posts by,Todas as mensagens de
Allocate,Distribuir
Allocate leaves for the year.,Alocar folhas para o ano.
Allocated Amount,Montante afectado
Allocated Budget,Orçamento atribuído
Allocated amount,Montante atribuído
Allow Attach,Permitir Anexar
Allow Bill of Materials,Permitir Lista de Materiais
Allow Dropbox Access,Permitir Dropbox Acesso
Allow Editing of Frozen Accounts For,Permitir Edição de contas congeladas para
Allow Google Drive Access,Permitir acesso Google Drive
Allow Import,Permitir a importação
Allow Import via Data Import Tool,Permitir a importação via ferramenta de importação de dados
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 em Enviar
Allow the following users to approve Leave Applications for block days.,Permitir que os seguintes usuários para aprovar Deixe Applications para os dias de bloco.
Allow user to login only after this hour (0-24),Permitir que o usuário fazer o login somente após esta hora (0-24)
Allow user to login only before this hour (0-24),Permitir que o usuário fazer o login antes só esta hora (0-24)
Allowance Percent,Percentual subsídio
Allowed,Permitido
Already Registered,Já registrado
Always use Login Id as sender,Sempre use Id Entrar como remetente
Amend,Emendar
Amended From,Alterado De
Amount,Quantidade
Amount (Company Currency),Amount (Moeda Company)
Amount <=,Quantidade &lt;=
Amount >=,Quantidade&gt; =
"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 com ícone. 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
Annual Cost To Company,Custo Anual To Empresa
Annual Cost To Company can not be less than 12 months of Total Earning,Custo Anual To Company não pode ser inferior a 12 meses de Earning Total de
Another Salary Structure '%s' is active for employee '%s'. 				Please make its status 'Inactive' to proceed.,"Outra estrutura Salário &#39;% s&#39; está ativo para o empregado &#39;% s&#39;. Por favor, faça seu status &#39;inativo&#39; para prosseguir."
"Any other comments, noteworthy effort that should go in the records.","Quaisquer outros comentários, esforço notável que deve ir para os registros."
Applicable Holiday List,Lista de férias aplicável
Applicable To (Designation),Para aplicável (Designação)
Applicable To (Employee),Para aplicável (Employee)
Applicable To (Role),Para aplicável (Papel)
Applicable To (User),Para aplicável (Usuário)
Applicant Name,Nome do requerente
Applicant for a Job,Candidato a um emprego
Applicant for a Job.,Candidato a um emprego.
Applications for leave.,Os pedidos de licença.
Applies to Company,Aplica-se a Empresa
Apply / Approve Leaves,Aplicar / Aprovar Folhas
Apply Shipping Rule,Aplicar Rule Envios
Apply Taxes and Charges Master,"Aplicar Impostos, taxas e Encargos mestras"
Appraisal,Avaliação
Appraisal Goal,Meta de avaliação
Appraisal Goals,Metas de avaliação
Appraisal Template,Modelo de avaliação
Appraisal Template Goal,Meta Modelo de avaliação
Appraisal Template Title,Título do modelo de avaliação
Approval Status,Status de Aprovação
Approved,Aprovado
Approver,Aprovador
Approving Role,Aprovar Papel
Approving User,Aprovar Usuário
Are you sure you want to delete the attachment?,Tem certeza de que deseja excluir o anexo?
Arial,Arial
Arrear Amount,Quantidade 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 atribuir o mesmo conjunto de regra de permissão para diferentes funções, em vez estabelecidos múltiplos papéis ao Usuário"
As existing qty for item: ,Como qty existente para o item:
As per Stock UOM,Como por Banco UOM
"As there are existing stock transactions for this \							item, you can not change the values of 'Has Serial No', \							'Is Stock Item' and 'Valuation Method'","Como existem transações com ações existentes para a este item \, você não pode alterar os valores de &#39;Has Serial No&#39;, \ &#39;É Banco de Item&#39; e &#39;Method Valuation&#39;"
Ascending,Ascendente
Assign To,Atribuir a
Assigned By,Atribuído por
Assignment,Atribuição
Assignments,Assignments
Associate a DocType to the Print Format,Associar um DOCTYPE para o formato de impressão
Atleast one warehouse is mandatory,Pelo menos um armazém é obrigatório
Attach,Anexar
Attach Document Print,Anexar cópia do documento
Attached To DocType,Anexado To DOCTYPE
Attached To Name,Anexado Para Nome
Attachment,Acessório
Attachments,Anexos
Attempted to Contact,Tentou entrar em contato
Attendance,Comparecimento
Attendance Date,Data de atendimento
Attendance Details,Detalhes atendimento
Attendance From Date,Presença de Data
Attendance To Date,Atendimento para a data
Attendance can not be marked for future dates,Atendimento não pode ser marcado para datas futuras
Attendance for the employee: ,Atendimento para o empregado:
Attendance record.,Recorde de público.
Attributions,Atribuições
Authorization Control,Controle de autorização
Authorization Rule,Regra autorização
Auto Email Id,Email Id Auto
Auto Inventory Accounting,Contabilidade Inventário de Auto
Auto Inventory Accounting Settings,Auto inventário Configurações de contabilidade
Auto Material Request,Pedido de material Auto
Auto Name,Nome Auto
Auto generated,Auto gerado
Auto-raise Material Request if quantity goes below re-order level in a warehouse,Auto-raise pedido se se a quantidade for inferior a nível re-order em um armazém
Automatically updated via Stock Entry of type Manufacture/Repack,Atualizado automaticamente através da entrada de Fabricação tipo / Repack
Autoreply when a new mail is received,Autoreply quando um novo e-mail é recebido
Available Qty at Warehouse,Qtde Disponível em Armazém
Available Stock for Packing Items,Estoque disponível para embalagem itens
"Available in BOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet","Disponível em BOM, Nota de Entrega, 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"
Avatar,Avatar
Average Discount,Desconto médio
B+,B +
B-,B-
BILL,BILL
BILLJ,BILLJ
BOM,BOM
BOM Detail No,BOM nenhum detalhe
BOM Explosion Item,BOM item explosão
BOM Item,Item BOM
BOM No,BOM Não
BOM No. for a Finished Good Item,BOM Não. para um item acabado
BOM Operation,Operação BOM
BOM Operations,Operações BOM
BOM Replace Tool,BOM Ferramenta Substituir
BOM replaced,BOM substituído
Background Color,Cor de Fundo
Background Image,Imagem de Fundo
Backup Manager,Backup Manager
Backup Right Now,Faça backup Right Now
Backups will be uploaded to,Backups serão enviados para
"Balances of Accounts of type ""Bank or Cash""",Saldos das contas do tipo &quot;bancária ou dinheiro&quot;
Bank,Banco
Bank A/C No.,Bank A / C N º
Bank Account,Conta bancária
Bank Account No.,Banco Conta N º
Bank Clearance Summary,Banco Resumo Clearance
Bank Name,Nome do banco
Bank Reconciliation,Banco Reconciliação
Bank Reconciliation Detail,Banco Detalhe Reconciliação
Bank Reconciliation Statement,Declaração de reconciliação bancária
Bank Voucher,Vale banco
Bank or Cash,Banco ou Caixa
Bank/Cash Balance,Banco / Saldo de Caixa
Banner,Bandeira
Banner HTML,HTML bandeira
Banner Image,Banner Image
Banner is above the Top Menu Bar.,Bandeira está acima da barra de menu superior.
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 (Company Currency),Taxa Básica (Moeda Company)
Batch,Fornada
Batch (lot) of an Item.,Batch (lote) de um item.
Batch Finished Date,Terminado lote Data
Batch ID,Lote ID
Batch No,No lote
Batch Started Date,Iniciado lote Data
Batch Time Logs for Billing.,Tempo lote Logs para o faturamento.
Batch Time Logs for billing.,Tempo lote Logs para o faturamento.
Batch-Wise Balance History,Por lotes História Balance
Batched for Billing,Agrupadas para Billing
Be the first one to comment,Seja o primeiro a comentar
Begin this page with a slideshow of images,Comece esta página com um slideshow de imagens
Better Prospects,Melhores perspectivas
Bill Date,Data Bill
Bill No,Projeto de Lei 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 (BOM)
Billable,Faturável
Billed,Faturado
Billed Amt,Faturado Amt
Billing,Faturamento
Billing Address,Endereço de Cobrança
Billing Address Name,Faturamento Nome Endereço
Billing Status,Estado de faturamento
Bills raised by Suppliers.,Contas levantada por Fornecedores.
Bills raised to Customers.,Contas levantou a Clientes.
Bin,Caixa
Bio,Bio
Bio will be displayed in blog section etc.,"Bio será exibido na seção do blog, etc"
Birth Date,Data de Nascimento
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 Category,Categoria Blog
Blog Intro,Blog Intro
Blog Introduction,Blog Introdução
Blog Post,Blog Mensagem
Blog Settings,Configurações Blog
Blog Subscriber,Assinante Blog
Blog Title,Blog Title
Blogger,Blogger
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.,Mestre marca.
Brands,Marcas
Breakdown,Colapso
Budget,Orçamento
Budget Allocated,Orçamento alocado
Budget Control,Controle de Orçamento
Budget Detail,Detalhe orçamento
Budget Details,Detalhes Orçamento
Budget Distribution,Distribuição orçamento
Budget Distribution Detail,Detalhe Distribuição orçamento
Budget Distribution Details,Distribuição Detalhes Orçamento
Budget Variance Report,Relatório Variance Orçamento
Build Modules,Criar módulos
Build Pages,Crie páginas
Build Server API,Construir Server API
Build Sitemap,Construir Mapa do Site
Bulk Email,E-mail em massa
Bulk Email records.,Volume de registros e-mail.
Bundle items at time of sale.,Bundle itens no momento da venda.
Button,Botão
Buyer of Goods and Services.,Comprador de Mercadorias e Serviços.
Buying,Comprar
Buying Amount,Comprar Valor
Buying Settings,Comprar Configurações
By,Por
C-FORM/,C-FORM /
C-Form,C-Form
C-Form Applicable,C-Form Aplicável
C-Form Invoice Detail,C-Form Detalhe Fatura
C-Form No,C-Forma Não
CI/2010-2011/,CI/2010-2011 /
COMM-,COMM-
CSS,CSS
CUST,CUST
CUSTMUM,CUSTMUM
Calculate Based On,Calcule Baseado em
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 &quot;Gerenciador de Relatórios&quot; papel
Cancel,Cancelar
Cancel permission also allows the user to delete a document (if it is not linked to any other document).,Cancelar permissão também permite ao usuário excluir um documento (se ele não está vinculado a qualquer outro documento).
Cancelled,Cancelado
Cannot ,Não é possível
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 bloco.
Cannot change from,Não pode mudar de
Cannot continue.,Não pode continuar.
Cannot have two prices for same Price List,Não pode ter dois preços para o mesmo Preço de
Cannot map because following condition fails: ,Não é possível mapear porque seguinte condição de falha:
Capacity,Capacidade
Capacity Units,Unidades de capacidade
Carry Forward,Transportar
Carry Forwarded Leaves,Carry Folhas encaminhadas
Case No(s) already in use. Please rectify and try again.				Recommended <b>From Case No. = %s</b>,"Processo n º (s) já está em uso. Por favor, corrigir e tentar novamente. Recomendado <b>De Processo n º =% s</b>"
Cash,Numerário
Cash Voucher,Comprovante de dinheiro
Cash/Bank Account,Caixa / Banco Conta
Categorize blog posts.,Categorizar posts.
Category,Categoria
Category Name,Nome da Categoria
Category of customer as entered in Customer master,"Categoria de cliente, entrou no Cadastro de Clientes"
Cell Number,Número de células
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 deve ser alterado, uma vez final, 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."
Change UOM for an Item.,Alterar UOM de um item.
Change the starting / current sequence number of an existing series.,Alterar o número de seqüência de partida / corrente de uma série existente.
Channel Partner,Parceiro de Canal
Charge,Carga
Chargeable,Imputável
Chart of Accounts,Plano de Contas
Chart of Cost Centers,Plano de Centros de Custo
Chat,Conversar
Check,Verificar
Check / Uncheck roles assigned to the Profile. Click on the Role to find out what permissions that Role has.,Verifique / Desmarque papéis atribuídos ao perfil. Clique sobre o Papel para descobrir o que as permissões que papel tem.
Check all the items below that you want to send in this digest.,Verifique todos os itens abaixo que você deseja enviar esta digerir.
Check how the newsletter looks in an email by sending it to your email.,Verifique como o boletim olha em um e-mail enviando-o para o seu e-mail.
"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Verifique se factura recorrente, desmarque a parar recorrente ou colocar Data final adequada"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Verifique se você precisa automáticos de facturas recorrentes. Depois de apresentar qualquer nota fiscal de venda, seção Recorrente será visível."
Check if you want to send salary slip in mail to each employee while submitting salary slip,Verifique se você quiser enviar folha de salário no correio a cada empregado ao enviar folha de salário
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Marque esta opção se você deseja forçar o usuário para selecionar uma série antes de salvar. Não haverá nenhum padrão, se você verificar isso."
Check this if you want to send emails as this id only (in case of restriction by your email provider).,Marque esta opção se você quiser enviar e-mails como este só id (no caso de restrição pelo seu provedor de e-mail).
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 esta a cabeça carta padrão em todas as impressões
Check this to pull emails from your mailbox,Marque esta a puxar e-mails de sua caixa de correio
Check to activate,Marque para ativar
Check to make Shipping Address,Verifique para ter endereço de entrega
Check to make primary address,Verifique para ter endereço principal
Checked,Verificado
Cheque,Cheque
Cheque Date,Data Cheque
Cheque Number,Número de cheques
Child Tables are shown as a Grid in other DocTypes.,Mesas para crianças são mostrados como uma grade no DOCTYPEs outros.
City,Cidade
City/Town,Cidade / Município
Claim Amount,Quantidade reivindicação
Claims for company expense.,Os pedidos de despesa da empresa.
Class / Percentage,Classe / Percentual
Classic,Clássico
Classification of Customers by region,Classificação de clientes por região
Clear Cache & Refresh,Limpar Cache &amp; Atualizar
Clear Table,Tabela clara
Clearance Date,Data de Liquidação
"Click on ""Get Latest Updates""",Clique em &quot;Get Últimas Atualizações&quot;
Click on 'Make Sales Invoice' button to create a new Sales Invoice.,Clique em &#39;Criar Fatura de vendas&#39; botão para criar uma nova factura de venda.
Click on button in the 'Condition' column and select the option 'User is the creator of the document',Clique no botão no &#39;Condição&#39; coluna e selecione a opção &quot;Usuário é o criador do documento &#39;
Click to Expand / Collapse,Clique para Expandir / Recolher
Client,Cliente
Close,Fechar
Closed,Fechado
Closing Account Head,Fechando Chefe Conta
Closing Date,Data de Encerramento
Closing Fiscal Year,Encerramento do exercício social
CoA Help,Ajuda CoA
Code,Código
Cold Calling,Cold Calling
Color,Cor
Column Break,Quebra de coluna
Comma separated list of email addresses,Lista separada por vírgulas de endereços de e-mail
Comment,Comentário
Comment By,Comentário por
Comment By Fullname,Comentário por Fullname
Comment Date,Comentário Data
Comment Docname,Comentário docName
Comment Doctype,Comentário Doctype
Comment Time,Comentário Tempo
Comments,Comentários
Commission Rate,Taxa de Comissão
Commission Rate (%),Comissão Taxa (%)
Commission partners and targets,Parceiros da Comissão e metas
Communication,Comunicação
Communication HTML,Comunicação HTML
Communication History,História da comunicação
Communication Medium,Meio de comunicação
Communication log.,Log de comunicação.
Company,Companhia
Company Details,Detalhes da empresa
Company History,História da Empresa
Company History Heading,História da Empresa título
Company Info,Informações da empresa
Company Introduction,Introdução da Empresa
Company Master.,Mestre Company.
Company Name,Nome da empresa
Company Settings,Configurações da empresa
Company branches.,Filiais da empresa.
Company departments.,Departamentos da empresa.
Company is missing or entered incorrect value,Empresa está faltando ou inseridos valor incorreto
Company mismatch for Warehouse,Incompatibilidade empresa para Armazém
Company registration numbers for your reference. Example: VAT Registration Numbers etc.,Números da empresa de registro para sua referência. Exemplo: IVA números de matrícula etc
Company registration numbers for your reference. Tax numbers etc.,"Números da empresa de registro para sua referência. Números fiscais, etc"
Complaint,Reclamação
Complete By,Ao completar
Completed,Concluído
Completed Qty,Concluído Qtde
Completion Date,Data de Conclusão
Completion Status,Status de conclusão
Confirmed orders from Customers.,Confirmado encomendas 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 recuperação de taxa. (Só que &quot;para a compra&quot;, como verificado)"
Considered as Opening Balance,Considerado como Saldo
Considered as an Opening Balance,Considerado como um saldo de abertura
Consultant,Consultor
Consumed Qty,Qtde consumida
Contact,Contato
Contact Control,Fale Controle
Contact Desc,Contato Descr
Contact Details,Contacto
Contact Email,Contato E-mail
Contact HTML,Contato HTML
Contact Info,Informações para contato
Contact Mobile No,Contato móveis não
Contact Name,Nome de Contato
Contact No.,Fale Não.
Contact Person,Pessoa de contato
Contact Type,Tipo de Contato
Contact Us Settings,Contato Configurações
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, suporte de consulta&quot; etc cada um em uma nova linha ou separados 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 aparece no lado principal de sua página
Content web page.,Página web de conteúdo.
Contra Voucher,Vale Contra
Contract End Date,Data final do contrato
Contribution (%),Contribuição (%)
Contribution to Net Total,Contribuição para o Total Líquido
Control Panel,Painel de controle
Conversion Factor,Fator de Conversão
Conversion Rate,Taxa de Conversão
Convert into Recurring Invoice,Converter em fatura Recorrente
Converted,Convertido
Copy,Copie
Copy From Item Group,Copiar do item do grupo
Copyright,Direitos autorais
Core,Núcleo
Cost Center,Centro de Custos
Cost Center Details,Custo Detalhes Centro
Cost Center Name,Custo Nome Centro
Cost Center is mandatory for item: ,Centro de Custo é obrigatória para o item:
Cost Center must be specified for PL Account: ,Centro de Custo deve ser especificado para a 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 Vale do Banco Mundial 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 salário
Create Stock Ledger Entries when you submit a Sales Invoice,Criar entradas da Razão quando você enviar uma fatura de vendas
"Create 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 de mestre Lista de Preços e introduzir taxas de ref padrão contra cada um deles. Na seleção de uma lista de preços em Cotação Ordem de Vendas, ou nota de entrega, a taxa de ref correspondente será obtido para este item."
Create and Send Newsletters,Criar e enviar Newsletters
Created Account Head: ,Chefe da conta:
Created By,Criado por
Created Customer Issue,Problema do cliente criado
Created Group ,Criado Grupo
Created Opportunity,Criado Oportunidade
Created Support Ticket,Ticket Suporte criado
Creates salary slip for above mentioned criteria.,Cria folha de salário para os critérios acima mencionados.
Credentials,Credenciais
Credit,Crédito
Credit Amt,Crédito Amt
Credit Card Voucher,Comprovante do cartão de crédito
Credit Controller,Controlador de crédito
Credit Days,Dias de crédito
Credit Limit,Limite de Crédito
Credit Note,Nota de Crédito
Credit To,Para crédito
Cross Listing of Item in multiple groups,Atravesse de Listagem do item em vários grupos
Currency,Moeda
Currency Exchange,Câmbio
Currency Format,Formato de moeda
Currency Name,Nome da Moeda
Currency Settings,Configurações Moeda
Currency and Price List,Moeda e Preço
Currency does not match Price List Currency for Price List,Moeda não corresponde Lista de Preços Moeda para Preço
Current Accommodation Type,Tipo de Alojamento atual
Current Address,Endereço Atual
Current BOM,BOM atual
Current Fiscal Year,Atual Exercício
Current Stock,Estoque atual
Current Stock UOM,UOM Estoque atual
Current Value,Valor Atual
Current status,Estado atual
Custom,Personalizado
Custom Autoreply Message,Mensagem de resposta automática personalizada
Custom CSS,CSS personalizado
Custom Field,Campo personalizado
Custom Message,Mensagem personalizada
Custom Reports,Relatórios Customizados
Custom Script,Script personalizado
Custom Startup Code,Código de inicialização personalizada
Custom?,Personalizado?
Customer,Cliente
Customer / Item Name,Cliente / Nome do item
Customer Account,Conta de Cliente
Customer Account Head,Cliente Cabeça Conta
Customer Address,Endereço do cliente
Customer Addresses And Contacts,Endereços e contatos de clientes
Customer Code,Código Cliente
Customer Codes,Códigos de clientes
Customer Details,Detalhes do cliente
Customer Discount,Discount cliente
Customer Discounts,Descontos a clientes
Customer Feedback,Comentário do cliente
Customer Group,Grupo de Clientes
Customer Group Name,Nome do grupo de clientes
Customer Intro,Cliente Intro
Customer Issue,Edição cliente
Customer Issue against Serial No.,Emissão cliente contra Serial No.
Customer Name,Nome do cliente
Customer Naming By,Cliente de nomeação
Customer Type,Tipo de Cliente
Customer classification tree.,Árvore de classificação do cliente.
Customer database.,Banco de dados do cliente.
Customer's Currency,Hoje Cliente
Customer's Item Code,Código do Cliente item
Customer's Purchase Order Date,Do Cliente Ordem de Compra Data
Customer's Purchase Order No,Ordem de Compra do Cliente Não
Customer's Vendor,Vendedor cliente
Customer's currency,Moeda 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."
Customers Not Buying Since Long Time,Os clientes não compra desde há muito tempo
Customerwise Discount,Desconto Customerwise
Customize,Personalize
Customize Form,Personalize Forma
Customize Form Field,Personalize campo de formulário
"Customize Label, Print Hide, Default etc.","Personalize Etiqueta, Esconder-impressão, etc Padrão"
Customize the Notification,Personalize a Notificação
Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,Personalize o texto introdutório que vai como uma parte do que e-mail. Cada transação tem um texto separado introdutório.
DN,DN
DN Detail,Detalhe DN
Daily,Diário
Daily Time Log Summary,Resumo Diário Log Tempo
Danger,Perigo
Data,Dados
Data missing in table,Falta de dados na tabela
Database,Banco de dados
Database Folder ID,ID Folder Database
Database of potential customers.,Banco de dados de clientes potenciais.
Date,Data
Date Format,Formato de data
Date Of Retirement,Data da aposentadoria
Date and Number Settings,Data e número Configurações
Date is repeated,Data é repetido
Date must be in format,A data deve estar no formato
Date of Birth,Data de Nascimento
Date of Issue,Data de Emissão
Date of Joining,Data da Unir
Date on which lorry started from supplier warehouse,Data em que o camião começou a partir de armazém fornecedor
Date on which lorry started from your warehouse,Data em que o camião começou a partir de seu armazém
Date on which the lead was last contacted,Data em que a liderança foi passada contactado
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,Débito Amt
Debit Note,Nota de Débito
Debit To,Para débito
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,Omissão
Default Account,Conta Padrão
Default BOM,BOM padrão
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Conta padrão Banco / Cash será atualizado automaticamente na fatura POS quando este modo for selecionado.
Default Bank Account,Conta Bancária Padrão
Default Cash Account,Conta Caixa 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,Home Page padrão
Default Home Pages,Início Páginas padrão
Default Income Account,Conta Rendimento padrão
Default Item Group,Grupo Item padrão
Default Price List,Lista de Preços padrão
Default Print Format,Formato de impressão 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 Sales Partner,Parceiro de vendas padrão
Default Settings,Predefinições
Default Source Warehouse,Armazém da fonte padrão
Default Stock UOM,Padrão da UOM
Default Supplier Type,Tipo de fornecedor padrão
Default Target Warehouse,Armazém alvo padrão
Default Territory,Território padrão
Default Unit of Measure,Unidade de medida padrão
Default Valuation Method,Método de Avaliação padrão
Default Value,Valor padrão
Default Warehouse,Armazém padrão
Default Warehouse is mandatory for Stock Item.,Armazém padrão é obrigatório para Banco de Item.
Default settings for Shopping Cart,As configurações padrão para Carrinho de Compras
"Default: ""Contact Us""",Padrão: &quot;Fale Conosco&quot;
DefaultValue,DefaultValue
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"">Mestre Empresa</a>"
Defines actions on states and the next step and allowed roles.,Define ações em estados e no próximo passo e papéis permitidos.
Defines workflow states and rules for a document.,Define os estados do workflow e regras para um documento.
Delete,Excluir
Delete Row,Apagar Linha
Delivered,Entregue
Delivered Qty,Qtde entregue
Delivery Address,Endereço de entrega
Delivery Date,Data de entrega
Delivery Details,Detalhes da entrega
Delivery Document No,Documento de Entrega Não
Delivery Document Type,Tipo de Documento de Entrega
Delivery Note,Guia de remessa
Delivery Note Item,Item Nota de Entrega
Delivery Note Items,Nota Itens de entrega
Delivery Note Message,Mensagem Nota de Entrega
Delivery Note No,Nota de Entrega Não
Delivery Note Packing Item,Entrega do item embalagem Nota
Delivery Note Required,Nota de Entrega Obrigatório
Delivery Note Trends,Nota de entrega Trends
Delivery Status,Estado entrega
Delivery Time,Prazo de entrega
Delivery To,Entrega
Department,Departamento
Depend on LWP,Dependem LWP
Depends On,Depende
Depends on LWP,Depende LWP
Descending,Descendente
Description,Descrição
Description HTML,Descrição HTML
"Description for listing page, in plain text, only a couple of lines. (max 140 characters)","Descrição da página perfil, em texto simples, apenas um par de linhas. (Máximo 140 caracteres)"
Description for page header.,Descrição cabeçalho da página.
Description of a Job Opening,Descrição de uma vaga de emprego
Designation,Designação
Desktop,Área de trabalho
Detailed Breakup of the totals,Breakup detalhada dos totais
Details,Detalhes
Deutsch,Deutsch
Did not add.,Não adicionar.
Did not cancel,Não cancelar
Did not save,Não salvar
Difference,Diferença
"Different ""States"" this document can exist in. Like ""Open"", ""Pending Approval"" etc.","Diferente &quot;Estados&quot;, este documento pode existir dentro Como &quot;Abrir&quot;, &quot;Aprovação Pendente&quot; etc"
Disable Customer Signup link in Login page,Cliente ligação Cadastro Desativar página de login
Disable Rounded Total,Desativar total arredondado
Disable Signup,Desativar Registre-se
Disabled,Inválido
Discount  %,% De desconto
Discount %,% De desconto
Discount (%),Desconto (%)
"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Campos de desconto estará disponível em Ordem de Compra, Recibo de Compra, Nota Fiscal de Compra"
Discount(%),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 principais itens
Distinct unit of an Item,Unidade distinta de um item
Distribute transport overhead across items.,Distribua por cima o transporte através itens.
Distribution,Distribuição
Distribution Id,Id distribuição
Distribution Name,Nome de distribuição
Distributor,Distribuidor
Divorced,Divorciado
Do not show any symbol like $ etc next to currencies.,Não mostrar qualquer símbolo como US $ etc ao lado de moedas.
Doc Name,Nome Doc
Doc Status,Estado Doc
Doc Type,Tipo Doc
DocField,DocField
DocPerm,DocPerm
DocType,DOCTYPE
DocType Details,Detalhes DOCTYPE
DocType is a Table / Form in the application.,DocType é uma Tabela / Form 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 documento
Document Status transition from ,Documento transição Estado de
Document Type,Tipo de Documento
Document is only editable by users of role,Documento só é editável por usuários de papel
Documentation,Documentação
Documentation Generator Console,Console Gerador de Documentação
Documentation Tool,Ferramenta de Documentação
Documents,Documentos
Domain,Domínio
Download Backup,Descarregar o Backup
Download Materials Required,Baixe Materiais Necessários
Download Template,Baixe Template
Download a report containing all raw materials with their latest inventory status,Baixe um relatório contendo todas as matérias-primas com o seu estado mais recente inventário
"Download the Template, fill appropriate data and attach the modified file.All dates and employee combination in the selected period will come in the template, with existing attendance records","Baixe o modelo, preencha os dados apropriados e anexar as datas file.All modificados e combinação de funcionários no período selecionado virá no modelo, com registros de freqüência existentes"
Draft,Rascunho
Drafts,Rascunhos
Drag to sort columns,Arraste para classificar colunas
Dropbox,Dropbox
Dropbox Access Allowed,Dropbox acesso permitido
Dropbox Access Key,Dropbox Chave de Acesso
Dropbox Access Secret,Dropbox acesso secreta
Due Date,Data de Vencimento
EMP/,EMP /
ESIC CARD No,CARTÃO ESIC Não
ESIC No.,ESIC Não.
Earning,Ganhando
Earning & Deduction,Ganhar &amp; Dedução
Earning Type,Ganhando Tipo
Earning1,Earning1
Edit,Editar
Editable,Editável
Educational Qualification,Qualificação Educacional
Educational Qualification Details,Detalhes educacionais de qualificação
Eg. smsgateway.com/api/send_sms.cgi,Por exemplo. smsgateway.com / api / send_sms.cgi
Email,E-mail
Email (By company),E-mail (por empresa)
Email Digest,E-mail Digest
Email Digest Settings,E-mail Digest Configurações
Email Host,Anfitrião e-mail
Email Id,Id e-mail
"Email Id must be unique, already exists for: ","Id e-mail deve ser único, já existe para:"
"Email Id where a job applicant will email e.g. ""jobs@example.com""",Id e-mail onde um candidato a emprego vai enviar e-mail &quot;jobs@example.com&quot; por exemplo
Email Login,Login Email
Email Password,Senha de 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,Email Usar SSL
"Email addresses, separted by commas","Endereços de email, separted por vírgulas"
Email ids separated by commas.,Ids e-mail separados por vírgulas.
"Email settings for jobs email id ""jobs@example.com""",Configurações de e-mail para e-mail empregos id &quot;jobs@example.com&quot;
"Email settings to extract Leads from sales email id e.g. ""sales@example.com""","Configurações de e-mail para extrair Leads de vendas de e-mail, por exemplo ID &quot;sales@example.com&quot;"
Email...,E-mail ...
Embed image slideshows in website pages.,Incorporar apresentações de imagem em páginas do site.
Emergency Contact Details,Detalhes de contato de emergência
Emergency Phone Number,Número de telefone de emergência
Employee,Empregado
Employee Birthday,Aniversário empregado
Employee Designation.,Designação empregado.
Employee Details,Detalhes do Funcionários
Employee Education,Educação empregado
Employee External Work History,Empregado história de trabalho externo
Employee Information,Informações do Funcionário
Employee Internal Work History,Empregado História Trabalho Interno
Employee Internal Work Historys,Historys funcionário interno de trabalho
Employee Leave Approver,Empregado Leave Approver
Employee Leave Balance,Empregado Leave Balance
Employee Name,Nome do Funcionário
Employee Number,Número empregado
Employee Records to be created by ,Empregado Records para ser criado por
Employee Setup,Configuração empregado
Employee Type,Tipo de empregado
Employee grades,Notas de funcionários
Employee record is created using selected field. ,Registro de empregado é criado usando o campo selecionado.
Employee records.,Registros de funcionários.
Employee: ,Funcionário:
Employees Email Id,Funcionários ID e-mail
Employment Details,Detalhes de emprego
Employment Type,Tipo de emprego
Enable Auto Inventory Accounting,Ativar Contabilidade Inventário Auto
Enable Shopping Cart,Ativar Carrinho de Compras
Enabled,Habilitado
Enables <b>More Info.</b> in all documents,<b>Mais informações permite.</b> Em todos os documentos
Encashment Date,Data 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 da 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 Row
Enter Verification Code,Digite o Código de Verificação
Enter campaign name if the source of lead is campaign.,Digite o nome da campanha que a fonte de chumbo é a campanha.
"Enter 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 padrão de valor (teclas) 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 &quot;combinar&quot; regras de permissão. Para ver a lista de campos, ir 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 pertence este contato
Enter designation of this Contact,Digite designação de este contato
"Enter email id separated by commas, invoice will be mailed automatically on particular date","Digite o ID de e-mail separados por vírgulas, a fatura será enviada automaticamente em determinada data"
Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Digite itens e qty planejada para o qual você quer levantar ordens de produção ou fazer o download de matérias-primas para a análise.
Enter name of campaign if source of enquiry is campaign,Digite o nome da campanha se fonte de pesquisa é a campanha
"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Digite os parâmetros URL estática aqui (por exemplo remetente = ERPNext, username = ERPNext, password = 1234, etc)"
Enter the company name under which Account Head will be created for this Supplier,Digite o nome da empresa em que Chefe da conta será criada para este fornecedor
Enter the date by which payments from customer is expected against this invoice.,Digite a data em que os pagamentos de cliente é esperado contra esta factura.
Enter url parameter for message,Digite o parâmetro url para mensagem
Enter url parameter for receiver nos,Digite o parâmetro url para nn receptor
Entries,Entradas
Entries are not allowed against this Fiscal Year if the year is closed.,Entradas não são permitidos contra este Ano Fiscal se o ano está fechada.
Error,Erro
Error for,Erro para
Error: Document has been modified after you have opened it,Erro: O documento foi modificado depois de abri-la
Estimated Material Cost,Custo de Material estimada
Event,Evento
Event Individuals,Indivíduos de eventos
Event Role,Papel evento
Event Roles,Papéis de eventos
Event Type,Tipo de evento
Event User,Usuário evento
Everyone can read,Todo mundo pode ler
Example:,Exemplo:
Exchange Rate,Taxa de Câmbio
Excise Page Number,Número de página especial sobre o consumo
Excise Voucher,Vale especiais de consumo
Exemption Limit,Limite de isenção
Exhibition,Exposição
Existing Customer,Cliente existente
Exit,Sair
Exit Interview Details,Sair Detalhes Entrevista
Expected,Esperado
Expected Delivery Date,Data de entrega prevista
Expected End Date,Data final esperado
Expected Start Date,Data de Início do esperado
Expense Account,Conta Despesa
Expense Account is mandatory,Conta de despesa é obrigatória
Expense Claim,Relatório de Despesas
Expense Claim Approved,Relatório de Despesas Aprovado
Expense Claim Approved Message,Relatório de Despesas Aprovado Mensagem
Expense Claim Detail,Detalhe de Despesas
Expense Claim Details,Reivindicação detalhes da despesa
Expense Claim Rejected,Relatório de Despesas Rejeitado
Expense Claim Rejected Message,Relatório de Despesas Rejeitado Mensagem
Expense Claim Type,Tipo de reembolso de despesas
Expense Date,Data despesa
Expense Details,Detalhes despesas
Expense Head,Chefe despesa
Expense account is mandatory for item: ,Conta de despesa é obrigatória para o item:
Expense/Adjustment Account,Despesa / Acerto de Contas
Expenses Booked,Despesas Reservado
Expenses Included In Valuation,Despesas incluídos na avaliação
Expenses booked for the digest period,Despesas reservadas para o período digest
Expiry Date,Data de validade
Export,Exportar
Exports,Exportações
External,Externo
Extract Emails,Extrair e-mails
FCFS Rate,Taxa FCFS
FIFO,FIFO
Facebook Share,Facebook Compartilhar
Failed: ,Falha:
Family Background,Antecedentes familiares
FavIcon,FavIcon
Fax,Fax
Features Setup,Configuração características
Feed,Alimentar
Feed Type,Tipo de feed
Feedback,Comentários
Female,Feminino
Fetch lead which will be converted into customer.,Fetch chumbo que vai ser convertido em cliente.
Field Description,Campo Descrição
Field Name,Nome do Campo
Field Type,Tipo de campo
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Campo disponível na nota de entrega, cotação, nota fiscal de venda, Ordem de vendas"
"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 de fluxo de trabalho da transação (se o campo não estiver presente, um campo oculto novo Custom será criado)"
Fieldname,Fieldname
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 no <br /> <b>Pesquisa por</b> lista de caixa de diálogo Pesquisar"
File,Arquivo
File Data,Dados de arquivo
File Name,Nome do arquivo
File Size,Tamanho
File URL,URL do arquivo
File size exceeded the maximum allowed size,O tamanho do arquivo excedeu o tamanho máximo permitido
Files Folder ID,Arquivos de ID de pasta
Filing in Additional Information about the Opportunity will help you analyze your data better.,Apresentação 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.,Apresentação de informações adicionais sobre o Recibo 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 Transporte 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,Filtre
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 com base no item
Final Confirmation Date,Data final de confirmação
Financial Analytics,Análise Financeira
Financial Statements,Demonstrações Financeiras
First Name,Nome
First Responded On,Primeiro respondeu em
Fiscal Year,Exercício fiscal
Fixed Asset Account,Conta de ativo fixo
Float,Flutuar
Float Precision,Flutuante de precisão
Follow via Email,Siga por e-mail
Following Journal Vouchers have been created automatically,Seguindo Vouchers Journal ter sido criado automaticamente
"Following table will show values if items are sub - contracted. These values will be fetched from the master of ""Bill of Materials"" of sub - contracted items.",Após tabela mostrará valores se os itens são sub - contratada. Estes valores serão obtidos a partir do mestre de &quot;Bill of Materials&quot; de sub - itens contratados.
Font (Heading),Font (rubrica)
Font (Text),Fonte (texto)
Font Size (Text),Tamanho da fonte (texto)
Fonts,Fontes
Footer,Rodapé
Footer Items,Itens Rodapé
For All Users,Para todos os usuários
For Company,Para a Empresa
For Employee,Para Empregado
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 Sales Invoice,Para fatura de vendas
For Server Side Print Formats,Para o lado do servidor de impressão Formatos
For Territory,Para Território
For Warehouse,Para Armazém
"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 emenda."
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 ranges,Para faixas
For reference,Para referência
For reference only.,Apenas para referência.
For row,Para a linha
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Para a comodidade dos clientes, estes códigos podem ser usados ​​em formatos de impressão, como facturas e guias de entrega"
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 fração
Freeze Stock Entries,Congelar da Entries
Friday,Sexta-feira
From,De
From Company,Da Empresa
From Currency,De Moeda
From Currency and To Currency cannot be same,De Moeda e Para Moeda não pode ser o mesmo
From Customer,Do Cliente
From Date,A partir da data
From Date must be before To Date,A partir da data deve ser anterior a Data
From Delivery Note,De Nota de Entrega
From Employee,De Empregado
From Lead,De Chumbo
From PR Date,De PR Data
From Package No.,De No. Package
From Purchase Order,Da Ordem de Compra
From Purchase Receipt,De Recibo de compra
From Sales Order,Da Ordem de Vendas
From Time,From Time
From Value,De Valor
From Value should be less than To Value,Do valor deve ser inferior a de Valor
Frozen,Congelado
Fulfilled,Cumprido
Full Name,Nome Completo
Fully Completed,Totalmente concluída
GL Entry,Entrada GL
GL Entry: Debit or Credit amount is mandatory for ,GL Entrada: Débito ou crédito montante é obrigatória para
GRN,GRN
Gantt Chart,Gantt
Gantt chart of all tasks.,Gantt de todas as tarefas.
Gender,Sexo
General,Geral
General Ledger,General Ledger
Generate Description HTML,Gerar Descrição HTML
Generate Material Requests (MRP) and Production Orders.,Gerar Pedidos de Materiais (MRP) e ordens de produção.
Generate Salary Slips,Gerar folhas de salários
Generate Schedule,Gerar Agende
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Gerar comprovantes de entrega de pacotes a serem entregues. Usado para notificar 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 imagem selecionada na descrição
Georgia,Geórgia
Get,Obter
Get Advances Paid,Obter adiantamentos pagos
Get Advances Received,Obter adiantamentos recebidos
Get Current Stock,Obter Estoque atual
Get From ,Obter do
Get Items,Obter itens
Get Last Purchase Rate,Obter Tarifa de Compra Última
Get Non Reconciled Entries,Obter entradas não Reconciliados
Get Outstanding Invoices,Obter faturas pendentes
Get Purchase Receipt,Obter Recibo de compra
Get Sales Orders,Obter Pedidos de Vendas
Get Specification Details,Obtenha detalhes Especificação
Get Stock and Rate,Obter Estoque e Taxa de
Get Template,Obter modelo
Get Terms and Conditions,Obter os Termos e Condições
Get Weekly Off Dates,Obter semanal Datas Off
"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Obter taxa de valorização e estoque disponível na origem / destino em armazém mencionado postagem data e hora. Se serializado item, prima este botão depois de entrar n º s de série."
Give additional details about the indent.,Dê mais detalhes sobre o travessão.
Global Defaults,Padrões globais
Go back to home,Volte para casa
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,Google Analytics ID
Google Drive,Google Drive
Google Drive Access Allowed,Acesso Google Drive admitidos
Google Plus One,Google Plus One
Google Web Font (Heading),Google Web Font (rubrica)
Google Web Font (Text),Google Web Font (Texto)
Grade,Grau
Graduate,Pós-graduação
Grand Total,Total geral
Grand Total (Company Currency),Grande Total (moeda da empresa)
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 + Valor vencido cobrança - Dedução Total
Gross Profit,Lucro bruto
Gross Profit (%),Lucro Bruto (%)
Gross Weight,Peso bruto
Gross Weight UOM,UOM Peso Bruto
Group,Grupo
Group or Ledger,Grupo ou Ledger
Groups,Grupos
HR,HR
HTML,HTML
HTML / Banner that will show on the top of product list.,HTML bandeira / que vai mostrar no topo da lista de produtos.
Half Day,Meio Dia
Half Yearly,Semestrais
Half-yearly,Semestral
Has Batch No,Não tem Batch
Has Child Node,Tem nó filho
Has Serial No,Não tem de série
Header,Cabeçalho
Heading,Título
Heading Text As,Como o texto do título
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Chefes (ou grupos) contra o qual as entradas de contabilidade são feitas e os saldos são mantidos.
Health Concerns,Preocupações com a Saúde
Health Details,Detalhes saúde
Held On,Realizada em
Help,Ajudar
Help HTML,Ajuda HTML
"Help: To link to another record in the system, use ""#Form/Note/[Note Name]"" as the Link URL. (don't use ""http://"")","Ajuda: Para vincular a outro registro no sistema, use &quot;# Form / Nota / [Nota Name]&quot; como a ligação URL. (Não use &quot;http://&quot;)"
Helvetica Neue,Helvetica Neue
"Hence, maximum allowed Manufacturing Quantity","Assim, a quantidade máxima permitida Manufacturing"
"Here you can maintain family details like name and occupation of parent, spouse and children","Aqui você pode manter detalhes como o nome da família e ocupação do cônjuge, pai e filhos"
"Here you can maintain height, weight, allergies, medical concerns etc","Aqui você pode manter a altura, peso, alergias, etc preocupações médica"
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! There should remain at least one System Manager,Hey! Não deve permanecer pelo menos um System Manager
Hidden,Escondido
Hide Actions,Ocultar Ações
Hide Copy,Ocultar Copiar
Hide Currency Symbol,Ocultar Símbolo de Moeda
Hide Email,Esconder-mail
Hide Heading,Ocultar título
Hide Print,Ocultar Imprimir
Hide Toolbar,Ocultar barra de ferramentas
High,Alto
Highlight,Realçar
History,História
History In Company,História In Company
Hold,Segurar
Holiday,Férias
Holiday List,Lista de feriado
Holiday List Name,Nome da lista férias
Holidays,Férias
Home,Casa
Home Page,Home Page
Home Page is Products,Home Page é produtos
Home Pages,Home Pages
Host,Anfitrião
"Host, Email and Password required if emails are to be pulled",E-mail host e senha necessária se e-mails devem ser puxado
Hour Rate,Taxa de hora
Hour Rate Consumable,Taxa de consumíveis hora
Hour Rate Electricity,Eletricidade Taxa de hora
Hour Rate Labour,A taxa de hora
Hour Rate Rent,Aluguel Taxa de hora
Hours,Horas
How frequently?,Com que freqüência?
"How should this currency be formatted? If not set, will use system defaults","Como deve ser essa moeda ser formatado? Se não for definido, vai usar padrões do sistema"
How to upload,Como fazer upload
Hrvatski,Hrvatski
Human Resources,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 está a ser definida
IDT,IDT
II,II
III,III
IN,EM
INV,INV
INV/10-11/,INV/10-11 /
ITEM,ITEM
IV,IV
Icon,Ícone
Icon will appear on the button,Ícone aparecerá no botão
Id of the profile will be the email.,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 Income or Expense,Se a renda ou Despesa
If Monthly Budget Exceeded,Se o orçamento mensal excedido
"If Sale BOM is defined, the actual BOM of the Pack is displayed as table.Available in Delivery Note and Sales Order","Se 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 de Fornecedor existe para determinado item, ele fica armazenado aqui"
If Yearly Budget Exceeded,Se orçamento anual excedido
"If a User does not have access at Level 0, then higher levels are meaningless","Se um usuário não tem acesso no nível 0, então os níveis mais altos são sem sentido"
"If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.","Se selecionado, o BOM para a sub-montagem itens serão considerados para obter matérias-primas. Caso contrário, todos os itens de sub-montagem vai ser tratado como uma matéria-prima."
"If checked, all other workflows become inactive.","Se marcada, todos os outros fluxos de trabalho tornam-se inativos."
"If checked, an email with an attached HTML format will be added to part of the EMail body as well as attachment. To only send as attachment, uncheck this.","Se marcado, um e-mail com formato HTML anexado será adicionado a uma parte do corpo do email, bem como anexo. Para enviar apenas como acessório, desmarque essa."
"If checked, the Home page will be the default Item Group for the website.","Se selecionado, a página inicial será o Grupo item padrão para o site."
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Se selecionado, o valor do imposto será considerado como já incluído na tarifa Impressão / Quantidade de impressão"
"If disable, 'Rounded Total' field will not be visible in any transaction","Se desativar, &#39;Arredondado Total &quot;campo não será visível em qualquer transação"
"If enabled, the system will post accounting entries for inventory automatically.","Se ativado, o sistema irá postar lançamentos contábeis para o inventário automaticamente."
"If image is selected, color will be ignored (attach first)","Se a imagem for selecionada, a cor será ignorado (anexar primeiro)"
If more than one package of the same type (for print),Se mais do que uma embalagem do mesmo tipo (por impressão)
If non standard port (e.g. 587),"Se a porta não 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"
"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 da &#39;território&#39; Link existe, ele vai te dar uma opção para selecioná-la"
"If the account is frozen, entries are allowed for the ""Account Manager"" only.","Se a conta for congelada, as entradas são permitidos para o &quot;Account Manager&quot; apenas."
"If this Account represents a Customer, Supplier or Employee, set it here.","Se essa conta representa um cliente, fornecedor ou funcionário, configurá-lo aqui."
If 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) podem ser marcadas e manter sua contribuição na atividade de vendas
"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Se você criou um modelo padrão no Imposto de Compra e Master Encargos, selecione um e clique no botão abaixo."
"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Se você criou um modelo padrão de Vendas Impostos e Encargos mestre, selecione um e clique no botão abaixo."
"If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page","Se você tem muito tempo imprimir formatos, esse recurso pode ser usado para dividir a página a ser impressa em várias páginas com todos os cabeçalhos e rodapés em cada página"
If you involve in manufacturing activity<br>Enables item <b>Is Manufactured</b>,Se você envolver na atividade industrial <br> Permite que o item <b>é fabricado</b>
Ignore,Ignorar
Ignored: ,Ignorados:
Image,Imagem
Image Link,Link da imagem
Image View,Ver imagem
Implementation Partner,Parceiro de implementação
Import,Importar
Import Attendance,Importação de Atendimento
Import Log,Importar Log
Important dates and commitments in your project life cycle,Datas importantes e compromissos em seu ciclo de vida do projeto
Imports,Importações
In Dialog,Em diálogo
In Filter,Em Filtro
In Hours,Em Horas
In List View,Na exibição de lista
In Process,Em Processo
In Report Filter,No Relatório Filtro
In Store,Na loja
In Words,Em Palavras
In Words (Company Currency),In Words (Moeda Company)
In Words (Export) will be visible once you save the Delivery Note.,Em Palavras (Exportação) será visível quando você salvar a Nota de Entrega.
In Words will be visible once you save the Delivery Note.,Em Palavras será visível quando você salvar a Nota de Entrega.
In Words will be visible once you save the Purchase Invoice.,Em Palavras será visível quando você salvar a factura de compra.
In Words will be visible once you save the Purchase Order.,Em Palavras será visível quando você salvar a Ordem de Compra.
In Words will be visible once you save the Purchase Receipt.,Em Palavras será visível quando você salvar o recibo de compra.
In Words will be visible once you save the Quotation.,Em Palavras será visível quando você salvar a cotação.
In Words will be visible once you save the Sales Invoice.,Em Palavras será visível quando você salvar a nota fiscal de venda.
In Words will be visible once you save the Sales Order.,Em Palavras será visível quando você salvar a Ordem de Vendas.
In response to,Em resposta aos
"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 no &#39;Condição&#39; coluna para a função que deseja restringir."
Incentives,Incentivos
Incharge Name,Nome incharge
Income / Expense,Receitas / Despesas
Income Account,Conta Renda
Income Booked,Renda Reservado
Income Year to Date,Ano renda para Data
Income booked for the digest period,Renda reservado para o período digest
Incoming,Entrada
Incoming / Support Mail Setting,Entrada / Suporte Setting Correio
Incoming Rate,Taxa de entrada
Incoming Time,Tempo de entrada
Incoming quality inspection.,Inspeção de qualidade de entrada.
Index,Índice
Indicates that the package is a part of this delivery,Indica que o pacote é uma parte deste fornecimento
Individual,Individual
Individuals,Indivíduos
Industry,Indústria
Industry Type,Tipo indústria
Info,Informações
Insert After,Depois de inserir
Insert Code,Insira Código
Insert Row,Inserir Linha
Insert Style,Insira Estilo
Inspected By,Inspecionado por
Inspection Criteria,Critérios de inspeção
Inspection Required,Inspeção Obrigatório
Inspection Type,Tipo de Inspeção
Installation Date,Data de instalação
Installation Note,Nota de Instalação
Installation Note Item,Item Nota de Instalação
Installation Status,Status 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
Instructions,Instruções
Int,Int.
Integrations,Integrações
Interested,Interessado
Internal,Interno
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 Delivery Note. Delivery Note should exist and should be in 				draft state. Please rectify and try again.,"Nota de Entrega inválido. Nota de Entrega deve existir e deve estar em estado de rascunho. Por favor, corrigir e tentar novamente."
Invalid Email,E-mail inválido
Invalid Email Address,Endereço de email inválido
Invalid Leave Approver,Inválido Deixe Approver
Inventory,Inventário
Inverse,Inverso
Invoice Date,Data da fatura
Invoice Details,Detalhes da fatura
Invoice No,A factura n º
Invoice Period From Date,Período fatura do Data
Invoice Period To Date,Período fatura para Data
Is Active,É Ativo
Is Advance,É o avanço
Is Asset Item,É item de ativo
Is Cancelled,É cancelado
Is Carry Forward,É Carry Forward
Is Child Table,É tabela filho
Is Default,É Default
Is Encash,É cobrar
Is LWP,É LWP
Is Mandatory Field,É campo obrigatório
Is Opening,Está abrindo
Is Opening Entry,Está abrindo Entry
Is PL Account,É Conta PL
Is POS,É POS
Is Primary Contact,É Contato Principal
Is Purchase Item,É item de compra
Is Sales Item,É item de vendas
Is Service Item,É item de serviço
Is Single,É único
Is Standard,É Padrão
Is Stock Item,É item de estoque
Is Sub Contracted Item,É item Contratado Sub
Is Subcontracted,É subcontratada
Is Submittable,É Submittable
Is it a Custom DocType created by you?,É um DocType personalizado criado por você?
Is this Tax included in Basic Rate?,É este imposto incluído na Taxa Básica?
Issue,Questão
Issue Date,Data de Emissão
Issue Details,Detalhes incidente
Issued Items Against Production Order,Itens emitida contra Ordem de Produção
It is needed to fetch Item Details.,É preciso buscar item Detalhes.
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 + ordenado + recuado - reservado) quantidade atinge o nível re-ordem, quando o seguinte registro foi criado"
Item,Item
Item Advanced,Item Avançado
Item Barcode,Código de barras do item
Item Batch Nos,Lote n item
Item Classification,Classificação item
Item Code,Código do artigo
Item Code (item_code) is mandatory because Item naming is not sequential.,"Código do item (item_code) é obrigatório, pois nomeação artigo não é seqüencial."
Item Customer Detail,Detalhe Cliente item
Item Description,Item Descrição
Item Desription,Desription item
Item Details,Item Detalhes
Item Group,Grupo Item
Item Group Name,Nome do Grupo item
Item Groups in Details,Grupos de itens em Detalhes
Item Image (if not slideshow),Imagem item (se não slideshow)
Item Name,Nome do item
Item Naming By,Item de nomeação
Item Price,Item Preço
Item Prices,Preços de itens
Item Quality Inspection Parameter,Item Parâmetro de Inspeção de Qualidade
Item Reorder,Item Reordenar
Item Serial No,No item de série
Item Serial Nos,Item n º s de série
Item Supplier,Fornecedor item
Item Supplier Details,Fornecedor Item Detalhes
Item Tax,Imposto item
Item Tax Amount,Valor do imposto item
Item Tax Rate,Taxa de Imposto item
Item Tax1,Item Tax1
Item To Manufacture,Item Para Fabricação
Item UOM,Item UOM
Item Website Specification,Especificação Site item
Item Website Specifications,Site Item Especificações
Item Wise Tax Detail ,Detalhe Imposto Sábio item
Item classification.,Item de classificação.
Item to be manufactured or repacked,Item a ser fabricados ou reembalados
Item will be saved by this name in the data base.,O artigo será salva por este nome na base de dados.
"Item, Warranty, AMC (Annual Maintenance Contract) details will be automatically fetched when Serial Number is selected.","Item, Garantia, AMC (Contrato Anual de Manutenção) detalhes serão automaticamente carregada quando o número de série é selecionado."
Item-Wise Price List,Item-Wise Lista de Preços
Item-wise Last Purchase Rate,Item-wise Última Tarifa de Compra
Item-wise Purchase History,Item-wise Histórico de compras
Item-wise Purchase Register,Item-wise Compra Register
Item-wise Sales History,Item-wise Histórico de Vendas
Item-wise Sales Register,Vendas de item sábios Registrar
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 armazéns com base no qty projetada e qty mínimo"
Items which do not exist in Item master can also be entered on customer's request,Itens que não existem no cadastro de itens também podem ser inseridos no pedido do cliente
Itemwise Discount,Desconto Itemwise
Itemwise Recommended Reorder Level,Itemwise Recomendado nível de reposição
JSON,JSON
JV,JV
Javascript,Javascript
Javascript to append to the head section of the page.,Javascript para acrescentar à seção principal da página.
Job Applicant,Candidato a emprego
Job Opening,Abertura de emprego
Job Profile,Perfil trabalho
Job Title,Cargo
"Job profile, qualifications required etc.","Profissão de perfil, qualificações exigidas, etc"
Jobs Email Settings,E-mail Configurações de empregos
Journal Entries,Jornal entradas
Journal Entry,Journal Entry
Journal Entry for inventory that is received but not yet invoiced,"Journal Entry para o inventário que é recebido, mas ainda não facturados"
Journal Voucher,Vale Jornal
Journal Voucher Detail,Jornal Detalhe Vale
Journal Voucher Detail No,Jornal Detalhe folha no
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 de campanhas de vendas. Mantenha o controle de ligações, cotações, ordem de venda, etc das campanhas para medir retorno sobre o investimento."
Keep a track of all communications,Manter um controle de todas as comunicações
Keep a track of communication related to this enquiry which will help for future reference.,Mantenha uma faixa de comunicação relacionada a este inquérito que irá ajudar para referência futura.
Key,Chave
Key Performance Area,Área Key Performance
Key Responsibility Area,Área de Responsabilidade chave
LEAD,LEAD
LEAD/10-11/,LEAD/10-11 /
LEAD/MUMBAI/,LEAD / MUMBAI /
LR Date,Data LR
LR No,Não LR
Label,Etiqueta
Label Help,Ajuda rótulo
Lacs,Lacs
Landed Cost Item,Item de custo Landed
Landed Cost Items,Desembarcaram itens de custo
Landed Cost Purchase Receipt,Recibo de compra Landed Cost
Landed Cost Purchase Receipts,Recibos de compra desembarcaram Custo
Landed Cost Wizard,Assistente de Custo Landed
Landing Page,Landing Page
Language,Linguagem
Language preference for user interface (only if available).,Preferência de idioma para interface de usuário (se disponível).
Last Contact Date,Data do último contato
Last IP,Última IP
Last Login,Último Login
Last Name,Sobrenome
Last Purchase Rate,Compra de última
Lato,Lato
Lead,Conduzir
Lead Details,Chumbo Detalhes
Lead Lost,Levar Perdido
Lead Name,Nome levar
Lead Owner,Levar Proprietário
Lead Source,Chumbo Fonte
Lead Status,Chumbo Estado
Lead Time Date,Chumbo Data Hora
Lead Time Days,Levar dias Tempo
Lead Time days is number of days by which this item is expected in your warehouse. This days is fetched in Material Request when you select this item.,Levar dias Tempo é o número de dias em que este item é esperado no seu armazém. Este dia é buscada em solicitar material ao selecionar este item.
Lead Type,Chumbo Tipo
Leave Allocation,Deixe Alocação
Leave Allocation Tool,Deixe Ferramenta de Alocação
Leave Application,Deixe Aplicação
Leave Approver,Deixe Aprovador
Leave Approver can be one of,Adicione Approver pode ser um dos
Leave Approvers,Deixe aprovadores
Leave Balance Before Application,Deixe Equilíbrio Antes da aplicação
Leave Block List,Deixe Lista de Bloqueios
Leave Block List Allow,Deixe Lista de Bloqueios Permitir
Leave Block List Allowed,Deixe Lista de Bloqueios admitidos
Leave Block List Date,Deixe Data Lista de Bloqueios
Leave Block List Dates,Deixe as datas Lista de Bloqueios
Leave Block List Name,Deixe o nome Lista de Bloqueios
Leave Blocked,Deixe Bloqueados
Leave Control Panel,Deixe Painel de Controle
Leave Encashed?,Deixe cobradas?
Leave Encashment Amount,Deixe Quantidade cobrança
Leave Setup,Deixe Setup
Leave Type,Deixar Tipo
Leave Type Name,Deixe Nome Tipo
Leave Without Pay,Licença sem vencimento
Leave allocations.,Deixe alocações.
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 papel, &quot;Deixe Aprovador&quot;"
Ledger,Livro-razão
Left,Esquerda
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Pessoa Jurídica / Subsidiária com um gráfico separado de Contas pertencentes à Organização.
Letter Head,Cabeça letra
Letter Head Image,Imagem Cabeça letra
Letter Head Name,Nome Cabeça letra
Level,Nível
"Level 0 is for document level permissions, higher levels for field level permissions.","Nível 0 é para permissões de nível de documento, os níveis mais elevados de permissões de nível de campo."
Lft,Lft
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,Com ligados
List,Lista
List items that form the package.,Lista de itens que compõem o pacote.
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 em que este documento está ligado
List of users who can edit a particular Note,Lista de usuários que podem editar uma determinada Nota
List this Item in multiple groups on the website.,Lista este item em vários grupos no site.
Live Chat,Live Chat
Load Print View on opening of an existing form,Carregar Ver impressão na abertura de um formulário existente
Loading,Carregamento
Loading Report,Relatório de carregamento
Log,Entrar
"Log of Activities performed by users against Tasks that can be used for tracking time, billing.","Log das atividades realizadas pelos usuários contra as tarefas que podem ser usados ​​para controlar o tempo, de faturamento."
Log of Scheduler Errors,Registro de erros Scheduler
Login After,Após entrar
Login Before,Login antes
Login Id,Login ID
Logo,Logotipo
Logout,Sair
Long Text,Texto Longo
Lost Reason,Razão perdido
Low,Baixo
Lower Income,Baixa Renda
Lucida Grande,Lucida Grande
MIS Control,MIS Controle
MREQ-,Mreq-
MTN Details,Detalhes da MTN
Mail Footer,Rodapé correio
Mail Password,Mail Senha
Mail Port,Mail Port
Mail Server,Servidor de Correio
Main Reports,Relatórios principais
Main Section,Seção Principal
Maintain Same Rate Throughout Sales Cycle,Manter o mesmo ritmo durante todo o ciclo de vendas
Maintain same rate throughout purchase cycle,Manter mesmo ritmo durante todo o ciclo de compra
Maintenance,Manutenção
Maintenance Date,Data de manutenção
Maintenance Details,Detalhes de manutenção
Maintenance Schedule,Programação de Manutenção
Maintenance Schedule Detail,Detalhe Programa de Manutenção
Maintenance Schedule Item,Item Programa de Manutenção
Maintenance Schedules,Horários de Manutenção
Maintenance Status,Estado de manutenção
Maintenance Time,Tempo de Manutenção
Maintenance Type,Tipo de manutenção
Maintenance Visit,Visita de manutenção
Maintenance Visit Purpose,Finalidade visita de manutenção
Major/Optional Subjects,Assuntos Principais / Opcional
Make Bank Voucher,Faça Vale Banco
Make Difference Entry,Faça Entrada Diferença
Make Time Log Batch,Faça a hora Batch Log
Make a new,Faça 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 ter &quot;território&quot; de um campo Link que mapeia para um &quot;território&quot; mestre.
Male,Masculino
Manage cost of operations,Gerenciar custo das operações
Manage exchange rates for currency conversion,Gerenciar taxas de câmbio para conversão de moeda
Mandatory,Obrigatório
"Mandatory if Stock Item is ""Yes"". Also the default warehouse where reserved quantity is set from Sales Order.","Obrigatório se o estoque do item é &quot;Sim&quot;. Além disso, o armazém padrão onde quantidade reservada é definido a partir de Ordem de Vendas."
Manufacture against Sales Order,Fabricação contra a Ordem de Vendas
Manufacture/Repack,Fabricação / Repack
Manufactured Qty,Qtde fabricados
Manufactured quantity will be updated in this warehouse,Quantidade fabricada será atualizado neste armazém
Manufacturer,Fabricante
Manufacturer Part Number,Número da peça de fabricante
Manufacturing,Fabrico
Manufacturing Quantity,Quantidade de fabricação
Margin,Margem
Marital Status,Estado civil
Market Segment,Segmento de mercado
Married,Casado
Mass Mailing,Divulgação em massa
Master,Mestre
Master Name,Nome mestre
Master Type,Master Classe
Masters,Mestres
Match,Combinar
Match non-linked Invoices and Payments.,Combinar não vinculados faturas e pagamentos.
Material Issue,Emissão de material
Material Receipt,Recebimento de materiais
Material Request,Pedido de material
Material Request 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 isto Stock Entry
Material Transfer,Transferência de Material
Materials,Materiais
Materials Required (Exploded),Materiais necessários (explodida)
Materials Requirement Planning (MRP),Materiais Requirement Planning (MRP)
Max 500 rows only.,Max 500 apenas as linhas.
Max Attachments,Anexos Max.
Max Days Leave Allowed,Dias Max Deixe admitidos
Max Discount (%),Max Desconto (%)
"Meaning of Submit, Cancel, Amend","Significado do Submit, Cancelar, Alterar"
Medium,Médio
"Menu items in the Top Bar. For setting the color of the Top Bar, go to <a href=""#Form/Style Settings"">Style Settings</a>","Os itens de menu na barra superior. Para definir a cor da barra superior, vá até <a href=""#Form/Style Settings"">Settings</a>"
Merge,Fundir
Merge Into,Fundem-se
Merge Warehouses,Mesclar Armazéns
Merging is only possible between Group-to-Group or 					Ledger-to-Ledger,A fusão só é possível entre o grupo-a-grupo ou Ledger-to-Ledger
"Merging is only possible if following \					properties are same in both records.					Group or Ledger, Debit or Credit, Is PL Account","A fusão só é possível se seguindo \ propriedades são as mesmas em ambos os registros. Grupo ou Ledger, de débito ou de crédito, é Conta PL"
Message,Mensagem
Message Parameter,Parâmetro mensagem
Message greater than 160 character will be splitted into multiple mesage,Mensagem maior do que 160 caracteres vai ser dividido em mesage múltipla
Messages,Mensagens
Method,Método
Middle Income,Rendimento Médio
Middle Name (Optional),Nome do Meio (Opcional)
Milestone,Marco miliário
Milestone Date,Data Milestone
Milestones,Milestones
Milestones will be added as Events in the Calendar,Marcos será adicionado como eventos no calendário
Millions,Milhões
Min Order Qty,Min Qty Ordem
Minimum Order Qty,Qtde mínima
Misc,Variados
Misc Details,Detalhes Diversos
Miscellaneous,Diverso
Miscelleneous,Miscelleneous
Mobile No,No móvel
Mobile No.,Mobile No.
Mode of Payment,Modo de Pagamento
Modern,Moderno
Modified Amount,Quantidade modificado
Modified by,Modificado por
Module,Módulo
Module Def,Módulo Def
Module Name,Nome do Módulo
Modules,Módulos
Monday,Segunda-feira
Month,Mês
Monthly,Mensal
Monthly Attendance Sheet,Folha de Presença Mensal
Monthly Salary Register,Salário mensal Registrar
Monthly salary statement.,Declaração salário mensal.
Monthly salary template.,Modelo de salário mensal.
More,Mais
More Details,Mais detalhes
More Info,Mais informações
More content for the bottom of the page.,Mais conteúdo para o fundo da página.
Moving Average,Média móvel
Moving Average Rate,Movendo Taxa Média
Mr,Sr.
Ms,Ms
Multiple Item Prices,Vários preços de itens
Mupltiple Item prices.,Item preços Mupltiple.
Must have report permission to access this report.,Deve ter permissão de relatório para acessar este relatório.
Must specify a Query to run,Deve especificar uma consulta para executar
My Settings,Minhas Configurações
NL-,NL-
Name,Nome
Name Case,Caso Nome
Name and Description,Nome e descrição
Name and Employee ID,Nome e identificação do funcionário
Name as entered in Sales Partner master,Nome como entrou em Vendas mestre Parceiro
Name is required,Nome é obrigatório
Name of organization from where lead has come,Nome da organização de onde veio chumbo
Name of person or organization that this address belongs to.,Nome da pessoa ou organização que este endereço pertence.
Name of the Budget Distribution,Nome da Distribuição de Orçamento
Name of the entity who has requested for the Material Request,Nome da entidade que solicitou para a solicitação de material
Naming,Nomeando
Naming Series,Nomeando Series
Naming Series mandatory,Nomeando obrigatório Series
Negative balance is not allowed for account ,Saldo negativo não é permitido por conta
Net Pay,Pagamento Net
Net Pay (in words) will be visible once you save the Salary Slip.,Pagamento líquido (em palavras) será visível quando você salvar a folha de salário.
Net Total,Líquida Total
Net Total (Company Currency),Total Líquido (Moeda Company)
Net Weight,Peso Líquido
Net Weight UOM,UOM Peso Líquido
Net Weight of each Item,Peso líquido de cada item
Net pay can not be greater than 1/12th of Annual Cost To Company,Remuneração líquida não pode ser maior do que 1/12th de custo anual para Empresa
Net pay can not be negative,Remuneração líquida não pode ser negativo
Never,Nunca
New,Novo
New BOM,Novo BOM
New Communications,New Communications
New Delivery Notes,Novas notas de entrega
New Enquiries,Consultas novo
New Leads,Nova leva
New Leave Application,Aplicação deixar Nova
New Leaves Allocated,Nova Folhas alocado
New Leaves Allocated (In Days),Folhas novas atribuído (em dias)
New Material Requests,Novos Pedidos Materiais
New 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 Vendas
New Stock Entries,Novas entradas em existências
New Stock UOM,Nova da UOM
New Supplier Quotations,Novas citações Fornecedor
New Support Tickets,Novos pedidos de ajuda
New Workplace,Novo local de trabalho
New value to be set,Novo valor a ser definido
Newsletter,Boletim informativo
Newsletter Content,Conteúdo boletim
Newsletter Status,Estado boletim
"Newsletters to contacts, leads.","Newsletters para contatos, leva."
Next Communcation On,No próximo Communcation
Next Contact By,Contato Próxima Por
Next Contact Date,Data Contato próximo
Next Date,Data próxima
Next State,Estado próximo
Next actions,Próximas ações
Next email will be sent on:,Próximo e-mail será enviado em:
No,Não
"No Account found in csv file, 							May be company abbreviation is not correct","Não Conta encontrado no arquivo CSV, podem ser abreviatura empresa não está correto"
No Action,Nenhuma ação
No Communication tagged with this ,Nenhuma comunicação com etiquetas com esta
No Copy,Nenhuma cópia
No Customer Accounts found. Customer Accounts are identified based on \			'Master Type' value in account record.,Nenhum cliente encontrado. Contas dos clientes são identificados com base no valor \ &#39;Type Master&#39; em registro de conta.
No Item found with Barcode,Nenhum artigo encontrado com código de barras
No Items to Pack,Nenhum item para embalar
No Leave Approvers. Please assign 'Leave Approver' Role to atleast one user.,"Não Deixe aprovadores. Por favor, atribuir &#39;Deixe aprovador&#39; Role a pelo menos um usuário."
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.,No Report Loaded. Utilize query-report / [Report Name] para executar um relatório.
No Supplier Accounts found. Supplier Accounts are identified based on \			'Master Type' value in account record.,Nenhum fornecedor responde encontrado. Contas de fornecedores são identificados com base no valor \ &#39;Type Master&#39; em registro de conta.
No User Properties found.,Não Propriedades do usuário encontrado.
No default BOM exists for item: ,Não existe BOM padrão para o item:
No further records,Não há mais registros
No of Requested SMS,No pedido de SMS
No of Sent SMS,N º de SMS enviados
No of Visits,N º de Visitas
No one,Ninguém
No permission to write / remove.,Sem permissão para escrever / remover.
No record found,Nenhum registro encontrado
No records tagged.,Não há registros marcados.
No salary slip found for month: ,Sem folha de salário encontrado para o mês:
"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,Nenhum
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.,Não 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,Nota
Note User,Nota usuários
Note is a free page where users can share documents / notes,"Nota é uma página livre, onde os usuários podem compartilhar documentos / notas"
"Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.","Nota: Backups e arquivos não são excluídos do Dropbox, você terá que apagá-los manualmente."
"Note: Backups and files are not deleted from Google Drive, you will have to delete them manually.","Nota: Backups e arquivos não são excluídos do Google Drive, você terá que apagá-los manualmente."
Note: Email will not be sent to disabled users,Nota: e-mail não será enviado para utilizadores com deficiência
"Note: For best results, images must be of the same size and width must be greater than height.","Nota: Para melhores resultados, as imagens devem ser do mesmo tamanho e largura não deve ser maior do que a altura."
Note: Other permission rules may also apply,Nota: As regras de permissão Outros também se podem aplicar
Note: You Can Manage Multiple Address or Contacts via Addresses & Contacts,Nota: você pode gerenciar Endereço múltipla ou Contatos através de endereços e 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 creation of automatic Material Request,Notificar por e-mail sobre a criação de Pedido de material automático
Number Format,Formato de número
O+,O +
O-,O-
OPPT,OPPT
Office,Escritório
Old Parent,Pai Velho
On,Em
On Net Total,Em Líquida Total
On Previous Row Amount,Quantidade em linha anterior
On Previous Row Total,No total 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ó acessar documentos capazes com essa propriedade."
Only Administrator allowed to create Query / Script Reports,Somente Administrador autorizado a criar consultas / Script Reports
Only Administrator can save a standard report. Please rename and save.,"Somente Administrador pode salvar um relatório padrão. Por favor, renomear e salvar."
Only Allow Edit For,Somente permitir editar para
Only Stock Items are allowed for Stock Entry,Apenas Itens Em Stock são permitidos para Banco de Entrada
Only System Manager can create / edit reports,System Manager só pode criar / editar relatórios
Only leaf nodes are allowed in transaction,Nós folha apenas são permitidos em operação
Open,Abrir
Open Sans,Sans abertas
Open Tickets,Bilhetes abertas
Opening Date,Data de abertura
Opening Entry,Abertura Entry
Opening Time,Tempo de abertura
Opening for a Job.,A abertura para um trabalho.
Operating Cost,Custo de Operação
Operation Description,Descrição da operação
Operation No,Nenhuma operação
Operation Time (mins),Tempo de Operação (minutos)
Operations,Operações
Opportunity,Oportunidade
Opportunity Date,Data oportunidade
Opportunity From,Oportunidade De
Opportunity Item,Item oportunidade
Opportunity Items,Itens oportunidade
Opportunity Lost,Oportunidade perdida
Opportunity Type,Tipo de Oportunidade
Options,Opções
Options Help,Opções Ajuda
Order Confirmed,Confirmado fim
Order Lost,Ordem Perdido
Order Type,Tipo de Ordem
Ordered Items To Be Billed,Itens ordenados a ser cobrado
Ordered Items To Be Delivered,Itens ordenados a ser entregue
Ordered Quantity,Quantidade pedida
Orders released for production.,Ordens liberado para produção.
Organization Profile,Perfil da Organização
Original Message,Mensagem original
Other,Outro
Other Details,Outros detalhes
Out,Fora
Out of AMC,Fora da AMC
Out of Warranty,Fora de Garantia
Outgoing,Cessante
Outgoing Mail Server,Outgoing Mail Server
Outgoing Mails,E-mails de saída
Outstanding Amount,Saldo em aberto
Outstanding for Voucher ,Excelente para Vale
Over Heads,Mais Cabeças
Overhead,Despesas gerais
Overlapping Conditions found between,Condições sobreposição encontrada entre
Owned,Possuído
PAN Number,Número PAN
PF No.,PF Não.
PF Number,Número PF
PI/2011/,PI/2011 /
PIN,PIN
PO,PO
POP3 Mail Server,Servidor de correio POP3
POP3 Mail Server (e.g. pop.gmail.com),"POP3 Mail Server (por exemplo, pop.gmail.com)"
POP3 Mail Settings,Configurações de mensagens pop3
POP3 mail server (e.g. pop.gmail.com),POP3 servidor de correio (por exemplo pop.gmail.com)
POP3 server e.g. (pop.gmail.com),"Servidor POP3, por exemplo (pop.gmail.com)"
POS Setting,Definição POS
PR Detail,Detalhe PR
PRO,PRO
PS,PS
Package Item Details,Item Detalhes do pacote
Package Items,Itens do pacote
Package Weight Details,Peso Detalhes do pacote
Packing Details,Detalhes da embalagem
Packing Detials,Detials embalagem
Packing List,Lista de embalagem
Packing Slip,Embalagem deslizamento
Packing Slip Item,Embalagem item deslizamento
Packing Slip Items,Embalagem Itens deslizamento
Packing Slip(s) Cancelled,Deslizamento de embalagem (s) Cancelado
Page,Página
Page Background,Fundo da Página
Page Border,Border página
Page Break,Quebra de página
Page HTML,Página HTML
Page Headings,Títulos de página
Page Links,Pagina Links
Page Name,Nome da Página
Page Role,Papel página
Page Text,Página de texto
Page content,O conteúdo da página
Page not found,Página não encontrada
Page text and background is same color. Please change.,"Texto da página e no fundo é a mesma cor. Por favor, altere."
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 Cost Center,Centro de Custo pai
Parent Customer Group,Grupo de Clientes pai
Parent Detail docname,Docname Detalhe pai
Parent Item,Item Pai
Parent Item Group,Grupo item pai
Parent Label,Etiqueta pai
Parent Sales Person,Vendas Pessoa pai
Parent Territory,Território pai
Parent is required.,É necessário Parent.
Parenttype,ParentType
Partially Completed,Parcialmente concluída
Participants,Participantes
Partly Billed,Parcialmente faturado
Partly Delivered,Entregue em parte
Partner,Parceiro
Partner Target Detail,Detalhe Alvo parceiro
Partner Type,Tipo de parceiro
Partner's Website,Site do parceiro
Passport Number,Número do Passaporte
Password,Senha
Password Expires in (days),Senha expira em (dias)
Patch,Remendo
Patch Log,Log remendo
Pay To / Recd From,Para pagar / RECD De
Payables,Contas a pagar
Payables Group,Grupo de contas a pagar
Payment Collection With Ageing,Cobrança Com o Envelhecimento
Payment Entries,Entradas 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 Made With Ageing,O pagamento feito com o Envelhecimento
Payment Reconciliation,Reconciliação de pagamento
Payment Terms,Condições de Pagamento
Payment days,Dia de pagamento
Payment to Invoice Matching Tool,Pagamento a ferramenta correspondente fatura
Payment to Invoice Matching Tool Detail,Pagamento a Detalhe Ferramenta fatura correspondente
Payments,Pagamentos
Payments Made,Pagamentos efetuados
Payments Received,Pagamentos Recebidos
Payments made during the digest period,Pagamentos efetuados durante o período de digestão
Payments received during the digest period,Pagamentos recebidos durante o período de digestão
Payroll Setup,Configuração da folha de pagamento
Pending,Pendente
Pending Review,Revisão pendente
Pending SO Items For Purchase Request,"Itens Pendentes Assim, por solicitação de compra"
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. For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to receive 110 units.,"Percentagem que estão autorizados a receber ou entregar mais contra a quantidade encomendada. Por exemplo: Se você encomendou 100 unidades. e seu subsídio é de 10%, então você está autorizada a receber 110 unidades."
Performance appraisal.,Avaliação de desempenho.
Period Closing Voucher,Comprovante de Encerramento período
Periodicity,Periodicidade
Perm Level,Perm Nível
Permanent Accommodation Type,Tipo de Alojamento Permanente
Permanent Address,Endereço permanente
Permission,Permissão
Permission Level,Nível de Permissão
Permission Levels,Níveis de Permissão
Permission Manager,Gerente 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 ler, editar, fazer novos, enviar, cancelar, alterar e denunciar direitos."
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 &quot;nível de campo&quot;. Todos os campos têm um conjunto &#39;Nível de Permissão &quot;contra eles e as regras definidas em que as permissões se aplicam ao campo. Isto é útil no caso de você querer esconder ou fazer determinado campo 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 &#39;Nível de Documento &quot;, ou seja, são primário para o acesso ao documento."
Permissions translate to Users based on what Role they are assigned,Permissões traduzir aos usuários com base em papel que são atribuídos
Person,Pessoa
Person To Be Contacted,Pessoa a ser contatada
Personal,Pessoal
Personal Details,Detalhes pessoais
Personal Email,E-mail pessoal
Phone,Telefone
Phone No,N º de telefone
Phone No.,Não. telefone
Pick Columns,Escolha Colunas
Pincode,PINCODE
Place of Issue,Local de Emissão
Plan for maintenance visits.,Plano de visitas de manutenção.
Planned Qty,Qtde planejada
Planned Quantity,Quantidade planejada
Plant,Planta
Please Enter Abbreviation or Short Name properly as it will be added as Suffix to all Account Heads.,Por favor insira Abreviação ou Nome Curto corretamente como ele será adicionado como sufixo a todos os chefes de Conta.
Please Update Stock UOM with the help of Stock UOM Replace Utility.,"Atualize Banco UOM, com a ajuda do Banco UOM Utility Replace."
Please attach a file first.,"Por favor, anexar um arquivo pela primeira vez."
Please attach a file or set a URL,"Por favor, anexar um arquivo ou definir uma URL"
Please check,"Por favor, verifique"
Please enter Default Unit of Measure,Por favor insira unidade de medida padrão
Please enter Delivery Note No or Sales Invoice No to proceed,Por favor insira Entrega Nota Não ou fatura de vendas Não para continuar
Please enter Expense Account,Por favor insira Conta Despesa
Please enter Expense/Adjustment Account,Por favor insira Despesa / Acerto de Contas
Please enter Purchase Receipt No to proceed,Por favor insira Compra recibo Não para continuar
Please enter valid,Por favor insira válido
Please enter valid ,Por favor insira válido
Please install dropbox python module,"Por favor, instale o Dropbox módulo python"
Please make sure that there are no empty columns in the file.,"Por favor, certifique-se de que não existem colunas vazias no arquivo."
Please mention default value for ',"Por favor, mencione o valor padrão para &#39;"
Please refresh to get the latest document.,Por favor de atualização para obter as últimas documento.
Please save the Newsletter before sending.,"Por favor, salve o boletim antes de enviar."
Please select Bank Account,Por favor seleccione Conta Bancária
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,Por favor seleccione Carry Forward se você também quer incluir equilíbrio ano fiscal anterior deixa para este ano fiscal
Please select Date on which you want to run the report,Selecione Data na qual você deseja executar o relatório
Please select Time Logs.,Por favor seleccione Time Logs.
Please select a,Por favor seleccione um
Please select a csv file,"Por favor, selecione um arquivo csv"
Please select a file or url,"Por favor, selecione um arquivo ou url"
Please select a service item or change the order type to Sales.,"Por favor, selecione um item de serviço ou mudar o tipo de ordem de vendas."
Please select a sub-contracted item or do not sub-contract the transaction.,"Por favor, selecione um item do sub-contratado ou não subcontratar a transação."
Please select a valid csv file with data.,"Por favor, selecione um arquivo csv com dados válidos."
Please select month and year,Selecione mês e ano
Please select the document type first,"Por favor, selecione o tipo de documento primeiro"
Please select: ,Por favor seleccione:
Please set Dropbox access keys in,Defina teclas de acesso Dropbox em
Please set Google Drive access keys in,Defina teclas de acesso do Google Drive em
Please specify,"Por favor, especifique"
Please specify Company,"Por favor, especifique Empresa"
Please specify Company to proceed,"Por favor, especifique Empresa proceder"
Please specify Default Currency in Company Master \			and Global Defaults,"Por favor, especificar a moeda padrão na empresa MASTER \ e Padrões Globais"
Please specify a,"Por favor, especifique um"
Please specify a Price List which is valid for Territory,"Por favor, especifique uma lista de preços que é válido para o território"
Please specify a valid,"Por favor, especifique um válido"
Please specify a valid 'From Case No.',"Por favor, especifique um válido &#39;De Caso No.&#39;"
Please specify currency in Company,"Por favor, especificar a moeda em Empresa"
Point of Sale,Ponto de Venda
Point-of-Sale Setting,Ponto-de-Venda Setting
Post Graduate,Pós-Graduação
Post Topic,Postar Tópico
Postal,Postal
Posting Date,Data da Publicação
Posting Date Time cannot be before,Postando Data Hora não pode ser antes
Posting Time,Postagem Tempo
Posts,Posts
Potential Sales Deal,Negócio de Vendas
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, etc percentuais) apenas para exibição. Flutua ainda será calculado até 6 casas decimais."
Preferred Billing Address,Preferred Endereço de Cobrança
Preferred Shipping Address,Endereço para envio preferido
Prefix,Prefixo
Present,Apresentar
Prevdoc DocType,Prevdoc DocType
Prevdoc Doctype,Prevdoc Doctype
Preview,Visualização
Previous Work Experience,Experiência anterior de trabalho
Price,Preço
Price List,Lista de Preços
Price List Currency,Hoje Lista de Preços
Price List Currency Conversion Rate,O preço de lista taxa de conversão
Price List Exchange Rate,Preço Lista de Taxa de Câmbio
Price List Master,Mestre Lista de Preços
Price List Name,Nome da lista de preços
Price List Rate,Taxa de Lista de Preços
Price List Rate (Company Currency),Preço Taxa List (moeda da empresa)
Price Lists and Rates,Listas de Preços e Tarifas
Primary,Primário
Print Format,Imprimir Formato
Print Format Style,Formato de impressão Estilo
Print Format Type,Tipo de impressão Formato
Print Heading,Imprimir título
Print Hide,Imprimir Ocultar
Print Width,Largura de impressão
Print Without Amount,Imprimir Sem Quantia
Print...,Imprimir ...
Priority,Prioridade
Private,Privado
Proceed to Setup,Proceder à instalação
Process,Processo
Process Payroll,Payroll processo
Produced Quantity,Quantidade produzida
Product Enquiry,Produto Inquérito
Production Order,Ordem de Produção
Production Plan Item,Item do plano de produção
Production Plan Items,Plano de itens de produção
Production Plan Sales Order,Produção Plano de Ordem de Vendas
Production Plan Sales Orders,Vendas de produção do Plano de Ordens
Production Planning (MRP),Planejamento de Produção (MRP)
Production Planning Tool,Ferramenta de Planejamento da Produção
"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Os produtos serão classificados por peso-idade em buscas padrão. Mais o peso-idade, maior o produto irá aparecer na lista."
Profile,Perfil
Profile Defaults,Padrões de Perfil
Profile Represents a User in the system.,Perfil Representa um usuário no sistema.
Profile of a Blogger,Perfil de um Blogger
Profile of a blog writer.,Perfil de um escritor do blog.
Project,Projeto
Project Costing,Project Costing
Project Details,Detalhes do projeto
Project Milestone,Projeto Milestone
Project Milestones,Etapas do Projeto
Project Name,Nome do projeto
Project Start Date,Data de início do projeto
Project Type,Tipo de projeto
Project Value,Valor do projeto
Project activity / task.,Atividade de projeto / tarefa.
Project master.,Projeto mestre.
Project will get saved and will be searchable with project name given,Projeto será salvo e poderão ser pesquisados ​​com o nome de determinado projeto
Project wise Stock Tracking,Projeto sábios Stock Rastreamento
Projected Qty,Qtde Projetada
Projects,Projetos
Prompt for Email on Submission of,Solicitar-mail mediante a apresentação 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 ID e-mail registrado na empresa
Public,Público
Published,Publicado
Published On,Publicado no
Pull Emails from the Inbox and attach them as Communication records (for known contacts).,Puxe-mails da caixa de entrada e anexá-los como registros de comunicação (por contatos conhecidos).
Pull Payment Entries,Puxe as entradas de pagamento
Pull items from Sales Order mentioned in the above table.,Puxe itens da Ordem de Vendas mencionado na tabela acima.
Pull sales orders (pending to deliver) based on the above criteria,Puxe pedidos de vendas pendentes (de entregar) com base nos critérios acima
Purchase,Comprar
Purchase Analytics,Analytics compra
Purchase Common,Compre comum
Purchase Date,Data da compra
Purchase Details,Detalhes de compra
Purchase Discounts,Descontos de compra
Purchase Document No,Compra documento n
Purchase Document Type,Compra Tipo de Documento
Purchase In Transit,Compre Em Trânsito
Purchase Invoice,Compre Fatura
Purchase Invoice Advance,Compra Antecipada Fatura
Purchase Invoice Advances,Avanços comprar Fatura
Purchase Invoice Item,Comprar item Fatura
Purchase Invoice Trends,Compra Tendências fatura
Purchase Order,Ordem de Compra
Purchase Order Date,Data da compra Ordem
Purchase Order Item,Comprar item Ordem
Purchase Order Item No,Comprar item Portaria n
Purchase Order Item Supplied,Item da ordem de compra em actualização
Purchase Order Items,Comprar Itens Encomendar
Purchase Order Items Supplied,Itens ordem de compra em actualização
Purchase Order Items To Be Billed,Ordem de Compra itens a serem faturados
Purchase Order Items To Be Received,Comprar itens para ser recebido
Purchase Order Message,Mensagem comprar Ordem
Purchase Order Required,Ordem de Compra Obrigatório
Purchase Order Trends,Ordem de Compra Trends
Purchase Order sent by customer,Ordem de Compra enviada pelo cliente
Purchase Orders given to Suppliers.,As ordens de compra dadas a fornecedores.
Purchase Receipt,Compra recibo
Purchase Receipt Item,Comprar item recepção
Purchase Receipt Item Supplied,Recibo de compra do item em actualização
Purchase Receipt Item Supplieds,Compre Supplieds item recepção
Purchase Receipt Items,Comprar Itens Recibo
Purchase Receipt Message,Mensagem comprar Recebimento
Purchase Receipt No,Compra recibo Não
Purchase Receipt Required,Recibo de compra Obrigatório
Purchase Receipt Trends,Compra Trends Recibo
Purchase Register,Compra Registre
Purchase Return,Voltar comprar
Purchase Returned,Compre Devolvido
Purchase Taxes and Charges,Impostos e Encargos de compra
Purchase Taxes and Charges Master,Impostos de compra e Master Encargos
Purpose,Propósito
Purpose must be one of ,Objetivo deve ser um dos
Python Module Name,Python Nome do Módulo
QA Inspection,Inspeção QA
QAI/11-12/,QAI/11-12 /
QTN,QTN
Qty,Qty
Qty Consumed Per Unit,Qtde consumida por unidade
Qty To Manufacture,Qtde Para Fabricação
Qty as per Stock UOM,Qtde como por Ação UOM
Qualification,Qualificação
Quality,Qualidade
Quality Inspection,Inspeção de Qualidade
Quality Inspection Parameters,Inspeção parâmetros de qualidade
Quality Inspection Reading,Leitura de Inspeção de Qualidade
Quality Inspection Readings,Leituras de inspeção de qualidade
Quantity,Quantidade
Quantity Requested for Purchase,Quantidade Solicitada para Compra
Quantity already manufactured,Quantidade já fabricados
Quantity and Rate,Quantidade e Taxa
Quantity and Warehouse,Quantidade e Armazém
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Quantidade do item obtido após a fabricação / reembalagem de determinadas quantidades de matérias-primas
Quantity should be equal to Manufacturing Quantity. ,Quantidade deve ser igual a quantidade Manufacturing.
Quarter,Trimestre
Quarterly,Trimestral
Query,Pergunta
Query Options,Opções de Consulta
Query Report,Query Report
Query must be a SELECT,Consulta deve ser um SELECT
Quick Help for Setting Permissions,Ajuda rápida para definir permissões
Quick Help for User Properties,Ajuda rápida para Propriedades do usuário
Quotation,Citação
Quotation Date,Data citação
Quotation Item,Item citação
Quotation Items,Itens cotação
Quotation Lost Reason,Cotação Perdeu Razão
Quotation Message,Mensagem citação
Quotation Sent,Cotação enviada
Quotation Series,Série citação
Quotation To,Para citação
Quotation Trend,Cotação Tendência
Quotations received from Suppliers.,Citações recebidas de fornecedores.
Quotes to Leads or Customers.,Cotações para Leads ou Clientes.
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,Levante Ordem de Produção
Raised By,Levantadas por
Raised By (Email),Levantadas por (e-mail)
Random,Acaso
Range,Alcance
Rate,Taxa
Rate ,Taxa
Rate (Company Currency),Rate (moeda da empresa)
Rate Of Materials Based On,Taxa de materiais com base
Rate and Amount,Taxa e montante
Rate at which Customer Currency is converted to customer's base currency,Taxa em que moeda do cliente é convertido para a moeda base de cliente
Rate at which Price list currency is converted to company's base currency,Taxa em que moeda lista de preços é convertido para a moeda da empresa de base
Rate at which Price list currency is converted to customer's base currency,Taxa em que moeda lista de preços é convertido para a moeda base de cliente
Rate at which customer's currency is converted to company's base currency,Taxa na qual a moeda do cliente é convertido para a moeda da empresa de base
Rate at which supplier's currency is converted to company's base currency,Taxa na qual a moeda que fornecedor é convertido para a moeda da empresa de base
Rate at which this tax is applied,Taxa em que este imposto é aplicado
Raw Material Item Code,Item Código de matérias-primas
Raw Materials Supplied,Matérias-primas em actualização
Raw Materials Supplied Cost,Matérias-primas fornecidas Custo
Re-Order Level,Re Ordem Nível
Re-Order Qty,Re-Ordem Qtde
Re-order,Re-vista
Re-order Level,Re fim-Level
Re-order Qty,Re-vista Qtde
Read,Ler
Read Only,Somente leitura
Reading 1,Leitura 1
Reading 10,Leitura 10
Reading 2,Leitura 2
Reading 3,Leitura 3
Reading 4,Reading 4
Reading 5,Leitura 5
Reading 6,Leitura 6
Reading 7,Lendo 7
Reading 8,Leitura 8
Reading 9,Leitura 9
Reason,Razão
Reason for Leaving,Motivo da saída
Reason for Resignation,Motivo para Demissão
Recd Quantity,Quantidade RECD
Receivable / Payable account will be identified based on the field Master Type,Conta a receber / pagar serão identificados com base no campo Type Master
Receivables,Recebíveis
Receivables / Payables,Contas a receber / contas a pagar
Receivables Group,Grupo de recebíveis
Received Date,Data de recebimento
Received Qty,Qtde recebeu
Received and Accepted,Recebeu e aceitou
Receiver List,Lista de receptor
Receiver Parameter,Parâmetro receptor
Recipient,Beneficiário
Recipients,Destinatários
Reconciliation Data,Dados de reconciliação
Reconciliation HTML,Reconciliação HTML
Reconciliation JSON,Reconciliação JSON
Record item movement.,Gravar o movimento item.
Recurring Id,Id recorrente
Recurring Invoice,Fatura recorrente
Recurring Type,Tipo recorrente
Ref Code,Ref Código
Ref Date is Mandatory if Ref Number is specified,Ref data é obrigatória se Número Ref é especificada
Ref DocType,Ref DocType
Ref Name,Nome Ref
Ref Rate,Taxa de Ref
Ref SQ,Ref ²
Ref Type,Tipo Ref
Reference,Referência
Reference Date,Data de Referência
Reference Name,Nome de referência
Reference Number,Número de Referência
Reference Type,Tipo de referência
Refresh,Refrescar
Registered but disabled.,"Registrado, mas desativado."
Registration Details,Detalhes registro
Registration Details Emailed.,Detalhes do registro enviado por email.
Registration Info,Registo Informações
Rejected,Rejeitado
Rejected Quantity,Quantidade rejeitado
Rejected Serial No,Rejeitado Não Serial
Rejected Warehouse,Armazém rejeitado
Relation,Relação
Relieving Date,Aliviar Data
Relieving Date of employee is ,Aliviar Data de empregado é
Remark,Observação
Remarks,Observações
Remove Bookmark,Remover Bookmark
Rename Log,Renomeie Entrar
Rename Tool,Renomear Ferramenta
Rename...,Renomear ...
Rented,Alugado
Repeat on Day of Month,Repita no Dia do Mês
Replace,Substituir
Replace Item / BOM in all BOMs,Substituir item / BOM em todas as BOMs
"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 um BOM particular em todas as BOMs outros onde ele é usado. Ele irá substituir o link BOM antigo, atualizar o custo e regenerar &quot;Explosão BOM Item&quot; tabela como por novo BOM"
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 Construtor são gerenciados diretamente pelo construtor relatório. Nada a fazer.
Report Date,Relatório Data
Report Hide,Hide
Report Name,Nome do Relatório
Report Type,Tipo de relatório
Report was not saved (there were errors),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 e papel atribuído a alterações do estado.
Reqd,Reqd
Reqd By Date,Reqd Por Data
Request Type,Tipo de Solicitação
Request for Information,Pedido de Informação
Request for purchase.,Pedido de compra.
Requested By,Solicitado por
Requested Items To Be Ordered,Itens solicitados devem ser pedidos
Requested Items To Be Transferred,Itens solicitados para ser transferido
Requests for items.,Os pedidos de itens.
Required By,Exigido por
Required Date,Data Obrigatório
Required Qty,Quantidade requerida
Required only for sample item.,Necessário apenas para o item amostra.
Required raw materials issued to the supplier for producing a sub - contracted item.,Matérias-primas necessárias emitidos para o fornecedor para a produção de um sub - item contratado.
Reseller,Revendedor
Reserved Quantity,Quantidade reservados
Reserved Warehouse,Reservado Armazém
Resignation Letter Date,Data carta de demissão
Resolution,Resolução
Resolution Date,Data resolução
Resolution Details,Detalhes de Resolução
Resolved By,Resolvido por
Restrict IP,Restringir IP
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. Também aceita parciais endereços IP como (111.111.111)
Restricting By User,Restringir por usuário
Retail,Varejo
Retailer,Varejista
Review Date,Comente Data
Rgt,Rgt
Right,Direito
Role,Papel
Role Allowed to edit frozen stock,Papel permissão para editar estoque congelado
Role Name,Nome da Função
Role that is allowed to submit transactions that exceed credit limits set.,Papel que é permitido submeter transações que excedam os limites de crédito estabelecidos.
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
Root ,Raiz
Root cannot have a parent cost center,Root não pode ter um centro de custos pai
Rounded Total,Total arredondado
Rounded Total (Company Currency),Total arredondado (Moeda Company)
Row,Linha
Row ,Linha
Row #,Linha #
Row # ,Linha #
Rules defining transition of state in the workflow.,Regras que definem a transição de estado do 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 terá permissão para mudar de estado etc"
Rules to calculate shipping amount for a sale,Regras para calcular valor de frete para uma venda
SLE Exists,LES existe
SMS,SMS
SMS Center,SMS Center
SMS Control,SMS Controle
SMS Gateway URL,SMS Gateway de URL
SMS Log,SMS Log
SMS Parameter,Parâmetro SMS
SMS Parameters,SMS Parâmetros
SMS Sender Name,Nome do remetente SMS
SMS Settings,Definições SMS
SMTP Server (e.g. smtp.gmail.com),"SMTP Server (smtp.gmail.com, por exemplo)"
SO,SO
SO Date,SO Data
SO Pending Qty,Está pendente de Qtde
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 salário
Salary Manager,Gerente de salário
Salary Mode,Modo de salário
Salary Slip,Folha de salário
Salary Slip Deduction,Dedução folha de salário
Salary Slip Earning,Folha de salário Ganhando
Salary Structure,Estrutura Salarial
Salary Structure Deduction,Dedução Estrutura Salarial
Salary Structure Earning,Estrutura salarial Ganhando
Salary Structure Earnings,Estrutura Lucros Salário
Salary components.,Componentes salariais.
Sales,De vendas
Sales Analytics,Sales Analytics
Sales BOM,BOM vendas
Sales BOM Help,Vendas Ajuda BOM
Sales BOM Item,Vendas item BOM
Sales BOM Items,Vendas Itens BOM
Sales Common,Vendas comuns
Sales Details,Detalhes de vendas
Sales Discounts,Descontos de vendas
Sales Email Settings,Vendas Configurações de Email
Sales Extras,Extras de vendas
Sales Invoice,Fatura de vendas
Sales Invoice Advance,Vendas antecipadas Fatura
Sales Invoice Item,Vendas item Fatura
Sales Invoice Items,Vendas itens da fatura
Sales Invoice Message,Vendas Mensagem Fatura
Sales Invoice No,Vendas factura n
Sales Invoice Trends,Vendas Tendências fatura
Sales Order,Ordem de Vendas
Sales Order Date,Vendas Data Ordem
Sales Order Item,Vendas item Ordem
Sales Order Items,Vendas Itens Encomendar
Sales Order Message,Vendas Mensagem Ordem
Sales Order No,Vendas decreto n º
Sales Order Required,Ordem vendas Obrigatório
Sales Order Trend,Pedido de Vendas da Trend
Sales Partner,Parceiro de vendas
Sales Partner Name,Vendas Nome do parceiro
Sales Partner Target,Vendas Alvo Parceiro
Sales Partners Commission,Vendas Partners Comissão
Sales Person,Vendas Pessoa
Sales Person Incharge,Vendas Pessoa Incharge
Sales Person Name,Vendas Nome Pessoa
Sales Person Target Variance (Item Group-Wise),Vendas Pessoa Variance Alvo (Item Group-Wise)
Sales Person Targets,Metas de vendas Pessoa
Sales Person-wise Transaction Summary,Resumo da transação Pessoa-wise vendas
Sales Rate,Taxa de vendas
Sales Register,Vendas Registrar
Sales Return,Vendas Retorno
Sales Taxes and Charges,Vendas Impostos e Taxas
Sales Taxes and Charges Master,Vendas Impostos e Encargos mestre
Sales Team,Equipe de Vendas
Sales Team Details,Vendas Team Detalhes
Sales Team1,Vendas team1
Sales and Purchase,Vendas e Compras
Sales campaigns,Campanhas de vendas
Sales persons and targets,Vendas pessoas e metas
Sales taxes template.,Impostos sobre as vendas do modelo.
Sales territories.,Os territórios de vendas.
Salutation,Saudação
Same file has already been attached to the record,Mesmo arquivo já foi anexado ao registro
Sample Size,Tamanho da amostra
Sanctioned Amount,Quantidade sancionada
Saturday,Sábado
Save,Salvar
Schedule,Programar
Schedule Details,Detalhes da Agenda
Scheduled,Programado
Scheduled Confirmation Date,Confirmação Data programada
Scheduled Date,Data prevista
Scheduler Log,Scheduler Log
School/University,Escola / Universidade
Score (0-5),Pontuação (0-5)
Score Earned,Pontuação Agregado
Scrap %,Sucata%
Script,Escrita
Script Report,Relatório de Script
Script Type,Tipo de roteiro
Script to attach to all web pages.,Script para anexar a todas as páginas da web.
Search,Pesquisar
Search Fields,Campos de Pesquisa
Seasonality for setting budgets.,Sazonalidade para definir orçamentos.
Section Break,Quebra de seção
Security Settings,Configurações de Segurança
"See ""Rate Of Materials Based On"" in Costing Section",Consulte &quot;taxa de materiais baseados em&quot; no Custeio Seção
Select,Selecionar
"Select ""Yes"" for sub - contracting items",Selecione &quot;Sim&quot; para a sub - itens contratantes
"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 recebidas de um fornecedor como amostra. Notas de entrega e recibos de compra irá 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ê fornecer matérias-primas para o seu fornecedor para fabricar este item.
Select All,Selecionar tudo
Select Attachments,Selecione Anexos
Select Budget Distribution to unevenly distribute targets across months.,Selecione distribuição do orçamento para distribuir desigualmente alvos em todo mês.
"Select Budget Distribution, if you want to track based on seasonality.","Selecione distribuição do orçamento, se você quiser acompanhar baseado em sazonalidade."
Select Customer,Selecione Cliente
Select Digest Content,Selecione o conteúdo Digest
Select DocType,Selecione DocType
Select Document Type,Selecione Tipo de Documento
Select Document Type or Role to start.,Selecione tipo de documento ou papel para começar.
Select PR,Selecionar PR
Select Print Format,Selecione Formato de Impressão
Select Print Heading,Selecione Imprimir título
Select Report Name,Selecione Nome do Relatório
Select Role,Selecione Papel
Select Sales Orders,Selecione Pedidos de Vendas
Select Sales Orders from which you want to create Production Orders.,Selecione Ordens de venda a partir do qual você deseja criar ordens de produção.
Select Terms and Conditions,Selecione Termos e Condições
Select Time Logs and Submit to create a new Sales Invoice.,Selecione Time Logs e enviar para criar uma nova factura de venda.
Select Transaction,Selecione Transação
Select Type,Selecione o Tipo
Select User or Property to start.,Selecione Usuário ou propriedade para começar.
Select a Banner Image first.,Selecione um Banner Image primeiro.
Select account head of the bank where cheque was deposited.,Selecione cabeça conta do banco onde cheque foi depositado.
Select an image of approx width 150px with a transparent background for best results.,Selecione uma imagem de aproximadamente 150px de largura com um fundo transparente para melhores resultados.
Select company name first.,Selecione o nome da empresa em primeiro lugar.
Select dates to create a new ,Selecione as datas para criar uma nova
Select name of Customer to whom project belongs,Selecione o nome do cliente a quem pertence projeto
Select or drag across time slots to create a new event.,Selecione ou arraste intervalos de tempo 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 o rótulo após o qual você deseja inserir novo campo.
Select the period when the invoice will be generated automatically,Selecione o período em que a factura será gerado 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 entrou em master &quot;Preço de lista&quot;. Isso vai puxar as taxas de referência de itens contra esta lista de preços, conforme especificado no &quot;Item&quot; mestre."
Select the relevant company name if you have multiple companies,"Selecione o nome da empresa em questão, se você tem várias empresas"
Select the relevant company name if you have multiple companies.,"Selecione o nome da empresa em questão, se você tem várias empresas."
Select who you want to send this newsletter to,Selecione para quem você deseja enviar esta newsletter para
"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Selecionando &quot;Sim&quot; vai permitir que este item deve aparecer na Ordem de Compra, Recibo de Compra."
"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","Selecionando &quot;Sim&quot; vai permitir que este item para figurar na Ordem de Vendas, Nota de Entrega"
"Selecting ""Yes"" will allow you to create Bill of Material showing raw material and operational costs incurred to manufacture this item.",Selecionando &quot;Sim&quot; permitirá a você criar Bill of Material mostrando matérias-primas e os custos operacionais incorridos para fabricar este item.
"Selecting ""Yes"" will allow you to make a Production Order for this item.",Selecionando &quot;Sim&quot; vai permitir que você faça uma ordem de produção para este item.
"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.",Selecionando &quot;Sim&quot; vai dar uma identidade única para cada entidade deste item que pode ser visto no mestre Número de ordem.
Selling,Vendendo
Selling Settings,Vendendo Configurações
Send,Enviar
Send Autoreply,Enviar Autoreply
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 Notifications To,Enviar notificações para
Send Print in Body and Attachment,Enviar Imprimir em Corpo e Anexo
Send SMS,Envie SMS
Send To,Enviar para
Send To Type,Enviar para Digite
Send automatic emails to Contacts on Submitting transactions.,Enviar e-mails automáticos para Contatos no Submetendo transações.
Send mass SMS to your contacts,Enviar SMS em massa para seus contatos
Send regular summary reports via Email.,Enviar relatórios resumidos regulares 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.,Ordem de produção separado será criado para cada item acabado.
Serial No,N º de Série
Serial No Details,Serial Detalhes Nenhum
Serial No Service Contract Expiry,N º de Série Vencimento Contrato de Serviço
Serial No Status,No Estado de série
Serial No Warranty Expiry,Caducidade Não Serial Garantia
Serialized Item: ',Item serializado: &#39;
Series,Série
Series List for this Transaction,Lista de séries para esta transação
Server,Servidor
Service Address,Serviço Endereço
Services,Serviços
Session Expired. Logging you out,Sessão expirada. Deslogar você
Session Expires in (time),Expira em sessão (tempo)
Session Expiry,Caducidade sessão
Session Expiry in Hours e.g. 06:00,"Caducidade sessão em Horas, por exemplo 06:00"
Set Banner from Image,Jogo da bandeira da Imagem
Set From Image,Definir Da imagem
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,"Definir item Group-wise orçamentos sobre este território. Você também pode incluir sazonalidade, definindo a distribuição."
Set Login and Password if authentication is required.,Set Login e Senha se é necessária autenticação.
Set New Password,Definir nova senha
Set Value,Definir valor
"Set a new password and ""Save""",Definir uma nova senha e &quot;Save&quot;
Set prefix for numbering series on your transactions,Definir prefixo para numeração de série em suas transações
Set targets Item Group-wise for this Sales Person.,Estabelecer metas item Group-wise para este Vendas Pessoa.
"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 SMTP de envio de correio aqui. Todo o sistema gerou notificações, e-mails vai 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 ID e-mail) ou entre em contato com seu provedor de e-mail."
Setting Account Type helps in selecting this Account in transactions.,Tipo de conta Definir ajuda na seleção desta conta em transações.
Settings,Configurações
Settings for About Us Page.,Sobre as definições para nós página.
Settings for Accounts,Definições para contas
Settings for Buying Module,Configurações para comprar Module
Settings for Contact Us Page,Configurações para Contacte-nos Página
Settings for Contact Us Page.,Configurações para página Fale conosco.
Settings for Selling Module,Configurações para vender Module
Settings for the About Us Page,Definições para a 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 &quot;jobs@example.com&quot; caixa de correio, por exemplo"
Setup,Instalação
Setup Control,Controle de configuração
Setup Series,Série de configuração
Setup of Shopping Cart.,Configuração do Carrinho de Compras.
Setup of fonts and background.,Instalação de fontes e de fundo.
"Setup of top navigation bar, footer and logo.","Configuração de topo barra de navegação do rodapé, e logotipo."
Setup to pull emails from support email account,Configuração para puxar e-mails da conta de e-mail de apoio
Share,Ação
Share With,Compartilhar
Shipments to customers.,Os embarques para os clientes.
Shipping,Expedição
Shipping Account,Conta de Envio
Shipping Address,Endereço para envio
Shipping Address Name,Nome Endereço para envio
Shipping Amount,Valor do transporte
Shipping Rule,Regra de envio
Shipping Rule Condition,Regra Condições de envio
Shipping Rule Conditions,Regra Condições de envio
Shipping Rule Label,Regra envio Rótulo
Shipping Rules,Regras de transporte
Shop,Loja
Shopping Cart,Carrinho de Compras
Shopping Cart Price List,Carrinho de Compras Lista de Preços
Shopping Cart Price Lists,Carrinho listas de preços
Shopping Cart Settings,Carrinho Configurações
Shopping Cart Shipping Rule,Carrinho de Compras Rule envio
Shopping Cart Shipping Rules,Carrinho Regras frete
Shopping Cart Taxes and Charges Master,Carrinho impostos e taxas Mestre
Shopping Cart Taxes and Charges Masters,Carrinho Impostos e Taxas de mestrado
Short Bio,Curta Bio
Short Name,Nome Curto
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.","Show &quot;Em Stock&quot; ou &quot;não em estoque&quot;, baseado em stock disponível neste armazém."
Show Details,Ver detalhes
Show In Website,Mostrar No Site
Show Print First,Mostrar Primeira Impressão
Show a slideshow at the top of the page,Ver uma apresentação de slides no topo da página
Show in Website,Show em site
Show rows with zero values,Mostrar as linhas com valores zero
Show this slideshow at the top of the page,Mostrar esta slideshow no topo da página
Showing only for,Mostrando apenas para
Signature,Assinatura
Signature to be appended at the end of every email,Assinatura para ser anexado no final de cada e-mail
Single,Único
Single Post (article).,Resposta Única (artigo).
Single unit of an Item.,Única unidade de um item.
Sitemap Domain,Mapa do Site Domínio
Slideshow,Slideshow
Slideshow Items,Itens slideshow
Slideshow Name,Nome slideshow
Slideshow like display for the website,Slideshow como display para o site
Small Text,Texto Pequeno
Solid background color (default light gray),Cor sólida (cinza claro padrão)
Sorry we were unable to find what you were looking for.,"Desculpe, não foram capazes de encontrar 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 que até 100 linhas para Reconciliação Stock.
Sorry. Companies cannot be merged,Desculpe. As empresas não podem ser fundidas
Sorry. Serial Nos. cannot be merged,Desculpe. N º s de série não podem ser mescladas
Sort By,Classificar por
Source,Fonte
Source Warehouse,Armazém fonte
Source and Target Warehouse cannot be same,Fonte e armazém de destino não pode ser igual
Source of th,Fonte do th
"Source of the lead. If via a campaign, select ""Campaign""","Fonte do chumbo. Se através de uma campanha, selecione &quot;Campanha&quot;"
Spartan,Espartano
Special Page Settings,Especiais Configurações da página
Specification Details,Detalhes especificação
Specify Exchange Rate to convert one currency into another,Especifique Taxa de câmbio para converter uma moeda em outra
"Specify a list of Territories, for which, this Price List is valid","Especificar uma lista de territórios, para a qual, esta lista de preços é válida"
"Specify a list of Territories, for which, this Shipping Rule is valid","Especificar uma lista de territórios, para a qual, essa regra de envio é válida"
"Specify a list of Territories, for which, this Taxes Master is valid","Especificar uma lista de territórios, para a qual, este Impostos Master é válido"
Specify conditions to calculate shipping amount,Especificar as condições para calcular valor de frete
Split Delivery Note into packages.,Nota de Entrega dividir 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,Para começar Relatório
Start date of current invoice's period,A data de início do período de fatura atual
Starts on,Inicia em
Startup,Startup
State,Estado
States,Estados
Static Parameters,Parâmetros estáticos
Status,Estado
Status must be one of ,Estado deve ser um dos
Status should be Submitted,Estado deverá ser apresentado
Statutory info and other general information about your Supplier,Informações legais e outras informações gerais sobre o seu Fornecedor
Stock,Estoque
Stock Adjustment Account,Banco de Acerto de Contas
Stock Adjustment Cost Center,Ajuste de estoque Centro de Custo
Stock Ageing,Envelhecimento estoque
Stock Analytics,Analytics ações
Stock Balance,Balanço de estoque
Stock Entry,Entrada estoque
Stock Entry Detail,Detalhe Entrada estoque
Stock Frozen Upto,Fotografia congelada Upto
Stock In Hand Account,Estoque em conta Mão
Stock Ledger,Estoque Ledger
Stock Ledger Entry,Entrada da Razão
Stock Level,Nível de estoque
Stock Qty,Qtd
Stock Queue (FIFO),Da fila (FIFO)
Stock Received But Not Billed,"Banco recebido, mas não faturados"
Stock Reconciliation,Da Reconciliação
Stock Reconciliation file not uploaded,Da Reconciliação arquivo não carregou
Stock Settings,Configurações da
Stock UOM,Estoque UOM
Stock UOM Replace Utility,Utilitário da Substituir UOM
Stock Uom,Estoque Uom
Stock Value,Valor da
Stock Value Difference,Banco de Valor Diferença
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 centros de custo para orçamentação.
Structure of books of accounts.,Estrutura de livros de contas.
Style,Estilo
Style Settings,Settings
"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, Inverse - Preto, Primário - Dark Info, azul - azul claro, Aviso - Orange"
"Sub-currency. For e.g. ""Cent""",Sub-moeda. Para &quot;Cent&quot; por exemplo
Sub-domain provided by erpnext.com,Sub-domínio fornecido pelo erpnext.com
Subcontract,Subcontratar
Subdomain,Subdomínio
Subject,Assunto
Submit,Submeter
Submit Salary Slip,Enviar folha de salário
Submit all salary slips for the above selected criteria,Submeter todas as folhas de salários para os critérios acima selecionados
Submitted,Enviado
Submitted Record cannot be deleted,Registro apresentado não pode ser excluído
Subsidiary,Subsidiário
Success,Sucesso
Successful: ,Bem-sucedido:
Suggestion,Sugestão
Suggestions,Sugestões
Sunday,Domingo
Supplier,Fornecedor
Supplier (vendor) name as entered in supplier master,"Nome do fornecedor (fornecedor), inscritos no cadastro de fornecedores"
Supplier Account Head,Fornecedor Cabeça Conta
Supplier Address,Endereço do Fornecedor
Supplier Details,Detalhes fornecedor
Supplier Intro,Intro fornecedor
Supplier Invoice Date,Fornecedor Data Fatura
Supplier Invoice No,Fornecedor factura n
Supplier Name,Nome do Fornecedor
Supplier Naming By,Fornecedor de nomeação
Supplier Part Number,Número da peça de fornecedor
Supplier Quotation,Cotação fornecedor
Supplier Quotation Item,Cotação do item fornecedor
Supplier Reference,Referência fornecedor
Supplier Shipment Date,Fornecedor Expedição Data
Supplier Shipment No,Fornecedor Expedição Não
Supplier Type,Tipo de fornecedor
Supplier Warehouse,Armazém fornecedor
Supplier Warehouse mandatory subcontracted purchase receipt,Armazém Fornecedor obrigatório recibo de compra subcontratada
Supplier classification.,Classificação fornecedor.
Supplier database.,Banco de dados de fornecedores.
Supplier of Goods or Services.,Fornecedor de bens ou serviços.
Supplier warehouse where you have issued raw materials for sub - contracting,Armazém do fornecedor onde você emitiu matérias-primas para a sub - contratação
Supplier's currency,Moeda fornecedor
Support,Apoiar
Support Analytics,Analytics apoio
Support Email,Suporte E-mail
Support Email Id,Suporte E-mail Id
Support Password,Senha de
Support Ticket,Ticket de Suporte
Support queries from customers.,Suporte a consultas de clientes.
Symbol,Símbolo
Sync Inbox,Sincronização Caixa de Entrada
Sync Support Mails,Sincronizar e-mails de apoio
Sync with Dropbox,Sincronizar com o Dropbox
Sync with Google Drive,Sincronia com o Google Drive
System,Sistema
System Defaults,Padrões do sistema
System Settings,Configurações do sistema
System User,Usuário do Sistema
"System User (login) ID. If set, it will become default for all HR forms.","Sistema de identificação do usuário (login). Se for definido, ele vai se tornar padrão para todas as formas de RH."
System for managing Backups,Sistema para gerenciamento de Backups
System generated mails will be sent from this email id.,Mails gerados pelo sistema serão enviados a partir deste ID de e-mail.
TL-,TL-
TLB-,TLB-
Table,Tabela
Table for Item that will be shown in Web Site,Tabela para Item que será mostrado no site
Tag,Etiqueta
Tag Name,Nome tag
Tags,Etiquetas
Tahoma,Tahoma
Target,Alvo
Target  Amount,Valor Alvo
Target Detail,Detalhe alvo
Target Details,Detalhes alvo
Target Details1,Alvo Details1
Target Distribution,Distribuição alvo
Target Qty,Qtde alvo
Target Warehouse,Armazém alvo
Task,Tarefa
Task Details,Detalhes da tarefa
Tax,Imposto
Tax Calculation,Cálculo do imposto
Tax Category can not be 'Valuation' or 'Valuation and Total' 					as all items are non-stock items,"Categoria fiscal não pode ser &quot;Valuation&quot; ou &quot;Avaliação e total&quot;, como todos os itens não são itens de estoque"
Tax Master,Imposto de Mestre
Tax Rate,Taxa de Imposto
Tax Template for Purchase,Modelo de impostos para compra
Tax Template for Sales,Modelo de imposto para vendas
Tax and other salary deductions.,Fiscais e deduções salariais outros.
Tax detail table fetched from item master as a string and stored in this field.Used for Taxes and Charges,Tabela de detalhes 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 Adicionado
Taxes and Charges Added (Company Currency),Impostos e taxas Adicionado (Moeda Company)
Taxes and Charges Calculation,Impostos e Encargos de Cálculo
Taxes and Charges Deducted,Impostos e Encargos Deduzidos
Taxes and Charges Deducted (Company Currency),Impostos e taxas Deduzido (Moeda Company)
Taxes and Charges Total,Impostos e encargos totais
Taxes and Charges Total (Company Currency),Impostos e Encargos Total (moeda da empresa)
Taxes and Charges1,Impostos e Charges1
Team Members,Membros da Equipe
Team Members Heading,Membros da Equipe título
Template for employee performance appraisals.,Modelo para avaliação de desempenho dos funcionários.
Template of terms or contract.,Modelo de termos ou contratos.
Term Details,Detalhes prazo
Terms and Conditions,Termos e Condições
Terms and Conditions Content,Termos e Condições conteúdo
Terms and Conditions Details,Termos e Condições Detalhes
Terms and Conditions Template,Termos e Condições de modelo
Terms and Conditions1,Termos e Conditions1
Territory,Território
Territory Manager,Territory Manager
Territory Name,Nome território
Territory Target Variance (Item Group-Wise),Território Variance Alvo (Item Group-Wise)
Territory Targets,Metas território
Test,Teste
Test Email Id,Email Id teste
Test Runner,Test Runner
Test the Newsletter,Teste a Newsletter
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,O BOM que será substituído
"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""",O item que representa o pacote. Este item deve ter &quot;é o item da&quot; como &quot;Não&quot; e &quot;é o item de vendas&quot; como &quot;Sim&quot;
The account to which you will pay (have paid) the money to.,A conta para a qual você vai pagar (paguei) o dinheiro.
The date at which current entry is made in system.,A data em que a entrada actual é feita no sistema.
The date at which current entry will get or has actually executed.,A data em que a entrada de corrente vai ter ou tem 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á parar
"The day of the month on which auto invoice will be generated e.g. 05, 28 etc ","O dia do mês em que factura automática será gerada, por exemplo 05, 28 etc"
The first Leave Approver in the list will be set as the default Leave Approver,O primeiro Deixe Approver na lista vai ser definido como o Leave Approver padrão
The 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 como 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 de peso líquido dos itens)
The new BOM after replacement,O BOM novo após substituição
The rate at which Bill Currency is converted into company's base currency,A taxa na qual a moeda que Bill é convertida em moeda empresa de base
"The system provides pre-defined roles, but you can <a href='#List/Role'>add new roles</a> to set finer permissions","O sistema fornece papéis pré-definidos, mas você pode <a href='#List/Role'>adicionar novas funções</a> para definir as permissões mais finos"
The unique id for tracking all recurring invoices. It is generated on submit.,A ID exclusiva para acompanhar todas as facturas recorrentes. Ele é gerado em enviar.
Then By (optional),"Em seguida, por (opcional)"
These properties are Link Type fields from all Documents.,Estas propriedades são campos tipo de 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 particular, cuja propriedade coincide com a propriedade do usuário para um usuário. Estes podem ser definidos usando o <a href='#permission-manager'>Gerente de Permissão</a>"
These properties will appear as values in forms that contain them.,Estas propriedades aparecerá como valores em formas que os 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á útil para restringir as permissões para este usuário em operações que contenham esses valores.
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 Time Log Batch has been billed.,Este lote Log O tempo tem sido anunciado.
This Time Log Batch has been cancelled.,Este lote Log Tempo foi cancelada.
This Time Log conflicts with,Este tempo de registro de conflitos com
This account will be used to maintain value of available stock,Essa conta será usada para manter o valor do estoque disponível
This currency will get fetched in Purchase transactions of this supplier,Essa moeda vai ser buscado em transações de compra deste fornecedor
This currency will get fetched in Sales transactions of this customer,Essa moeda vai ser buscado 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 Into"" warehouse. After merging you can delete this warehouse, as stock level for this warehouse will be zero.","Este recurso é para a fusão armazéns duplicados. Ele irá substituir todos os links deste armazém por &quot;Merge Into&quot; armazém. Após a fusão, você pode excluir este armazém, como nível de estoque para este depósito será zero."
This feature is only applicable to self hosted instances,Este recurso só é aplicável aos casos de auto-hospedado
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 você não pode desfazer. Continuar?
This is an auto generated Material Request.,Este é um auto gerado Solicitação de Materiais.
This is permanent action and you cannot undo. Continue?,Esta é uma ação permanente e você não pode desfazer. Continuar?
This is the number of the last created transaction with this prefix,Este é o número da última transacção criados com este prefixo
This message goes away after you create your first customer.,Esta mensagem vai embora depois de criar o seu primeiro cliente.
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 ea valorização do estoque no sistema. Ele é geralmente usado para sincronizar os valores do sistema eo que realmente existe em seus armazéns.
This will be used for setting rule in HR module,Isso será usado para fixação de regras no módulo HR
Thread HTML,Tópico HTML
Thursday,Quinta-feira
Time,Tempo
Time Log,Tempo Log
Time Log Batch,Tempo Batch Log
Time Log Batch Detail,Tempo Log Detail Batch
Time Log Batch Details,Tempo de registro de detalhes de lote
Time Log Batch status must be 'Submitted',Status do lote Log tempo deve ser &#39;Enviado&#39;
Time Log Status must be Submitted.,Tempo de registro de Estado deve ser apresentado.
Time Log for tasks.,Tempo de registro para as tarefas.
Time Log is not billable,Tempo de registro não é cobrável
Time Log must have status 'Submitted',Tempo de registro deve ter status &#39;Enviado&#39;
Time Zone,Fuso horário
Time Zones,Time Zones
Time and Budget,Tempo e Orçamento
Time at which items were delivered from warehouse,Hora em que itens foram entregues a partir de armazém
Time at which materials were received,Momento em que os materiais foram recebidos
Title,Título
Title / headline of your page,Título / manchete de sua página
Title Case,Caso título
Title Prefix,Prefixo título
To,Para
To Currency,A Moeda
To Date,Conhecer
To Discuss,Para Discutir
To Do,Que fazer
To Do List,Para fazer a lista
To PR Date,Data de PR
To Package No.,Para empacotar Não.
To Reply,Para Responder
To Time,Para Tempo
To Value,Ao Valor
To Warehouse,Para Armazém
"To add a tag, open the document and click on ""Add Tag"" on the sidebar","Para adicionar uma marca, abra o documento e clique em &quot;Adicionar marca&quot; no sidebar"
"To assign this issue, use the ""Assign"" button in the sidebar.","Para atribuir esse problema, use o botão &quot;Atribuir&quot; na barra lateral."
"To 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 pedidos de ajuda de seu correio de entrada, definir as configurações de POP3 aqui. Você deve, idealmente, criar um ID de e-mail separado para o sistema ERP para que todos os e-mails serão sincronizados para o sistema de que e-mail id. Se você não tiver certeza, entre em contato com seu provedor de e-mail."
"To create an Account Head under a different company, select the company and save customer.","Para criar uma conta, sob Cabeça uma empresa diferente, selecione a empresa e salvar cliente."
To enable <b>Point of Sale</b> features,Para habilitar o <b>Ponto de Venda</b> características
"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 permissões com base em determinados valores em um documento, use a &#39;condição&#39; definições."
To get Item Group in details table,Para obter Grupo item na tabela de detalhes
To manage multiple series please go to Setup > Manage Series,"Para gerenciar várias séries por favor, vá para Configuração&gt; Gerenciar Series"
To restrict a User of a particular Role to documents that are explicitly assigned to them,Para restringir um usuário de um papel especial a documentos que são explicitamente atribuídos a eles
To restrict a User of a particular Role to documents that are only self-created.,Para restringir um usuário de um papel especial a documentos que são apenas auto-criado.
"To set reorder level, item must be Purchase Item","Para definir o nível de reposição, o artigo deve ser de compra do item"
"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 de usuário, basta ir a <a href='#List/Profile'>Configuração&gt; Usuários</a> e clique sobre o usuário para atribuir funções."
To track any installation or commissioning related work after sales,Para rastrear qualquer instalação ou comissionamento trabalho relacionado após vendas
"To track brand name in the following documents<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 ordem. Este é também pode ser usada para rastrear detalhes sobre a garantia do produto.
To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,Para controlar os itens de vendas e documentos de compra com lotes n º s <br> <b>Indústria preferido: etc Chemicals</b>
To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.,Para rastrear itens usando código de barras. Você será capaz de inserir itens na nota de entrega e nota fiscal de venda pela digitalização de código de barras do item.
"To update your HTML from attachment, click here","Para atualizar seu código HTML anexo, clique aqui"
ToDo,ToDo
Tools,Ferramentas
Top,Topo
Top Bar,Top Bar
Top Bar Background,Fundo da barra superior
Top Bar Item,Item da barra de topo
Top Bar Items,Top Bar Itens
Top Bar Text,Top Bar Texto
Top Bar text and background is same color. Please change.,"Top Bar texto eo fundo é a mesma cor. Por favor, altere."
Total,Total
Total (sum of) points distribution for all goals should be 100.,Total (soma de) distribuição de pontos para todos os objetivos deve ser 100.
Total Advance,Antecipação total
Total Amount,Valor Total
Total Amount To Pay,Valor total a pagar
Total Amount in Words,Valor Total em Palavras
Total Billing This Year: ,Faturamento total deste ano:
Total Claimed Amount,Montante reclamado total
Total Commission,Total Comissão
Total Cost,Custo Total
Total Credit,Crédito Total
Total Debit,Débito total
Total Deduction,Dedução Total
Total Earning,Ganhar total
Total Experience,Experiência total
Total Hours,Total de Horas
Total Hours (Expected),Total de Horas (esperado)
Total Invoiced Amount,Valor total faturado
Total Leave Days,Total de dias de férias
Total Leaves Allocated,Folhas total atribuído
Total Operating Cost,Custo Operacional Total
Total Points,Total de pontos
Total Raw Material Cost,Custo total das matérias-primas
Total SMS Sent,SMS total enviado
Total Sanctioned Amount,Valor total Sancionada
Total Score (Out of 5),Pontuação total (em 5)
Total Tax (Company Currency),Imposto Total (moeda da empresa)
Total Taxes and Charges,Total Impostos e Encargos
Total Taxes and Charges (Company Currency),Total de Impostos e Taxas (moeda da empresa)
Total amount of invoices received from suppliers during the digest period,O valor total das faturas recebidas de fornecedores durante o período de digestão
Total amount of invoices sent to the customer during the digest period,O valor total das faturas enviadas para o cliente durante o período de digestão
Total days in month,Total de dias no mês
Total in words,Total em palavras
Totals,Totais
Track separate Income and Expense for product verticals or divisions.,Localizar renda separado e Despesa para verticais de produtos ou divisões.
Track this Delivery Note against any Project,Acompanhar este Nota de Entrega contra qualquer projeto
Track this Sales Invoice against any Project,Acompanhar este factura de venda contra qualquer projeto
Track this Sales Order against any Project,Acompanhar este Ordem de vendas contra qualquer projeto
Transaction,Transação
Transaction Date,Data Transação
Transfer,Transferir
Transition Rules,Regras de transição
Transporter Info,Informações Transporter
Transporter Name,Nome Transporter
Transporter lorry number,Número caminhão transportador
Trash Reason,Razão lixo
Tree of item classification,Árvore de classificação de itens
Trial Balance,Balancete
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,Twitter Compartilhar
Twitter Share via,Compartilhar via Twitter
Type,Tipo
Type of document to rename.,Tipo de documento a ser renomeado.
Type of employment master.,Tipo de mestre emprego.
"Type of leaves like casual, sick etc.","Tipo de folhas como etc, casual doente"
Types of Expense Claim.,Tipos de reembolso de despesas.
Types of activities for Time Sheets,Tipos de atividades para folhas de tempo
UOM,UOM
UOM Conversion Detail,UOM Detalhe Conversão
UOM Conversion Details,Conversão Detalhes UOM
UOM Conversion Factor,UOM Fator de Conversão
UOM Details,Detalhes UOM
UOM Name,Nome UOM
UOM Replace Utility,UOM Utility Substituir
UPPER CASE,MAIÚSCULAS
UPPERCASE,Maiúsculas
URL,URL
Unable to complete request: ,Não é possível concluir pedido:
Under AMC,Sob AMC
Under Graduate,Sob graduaçã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ão, par)."
Units/Hour,Unidades / hora
Units/Shifts,Unidades / Turnos
Unmatched Amount,Quantidade incomparável
Unpaid,Não remunerado
Unread Messages,Mensagens não lidas
Unscheduled,Sem marcação
Unsubscribed,Inscrição cancelada
Update,Atualizar
Update Clearance Date,Atualize Data Liquidação
Update Field,Atualizar campo
Update PR,Atualização PR
Update Series,Atualização Series
Update Series Number,Atualização de Número de Série
Update Stock,Actualização de stock
Update Stock should be checked.,Atualização de Estoque deve ser verificado.
Update Value,Atualize Valor
"Update allocated amount in the above table and then click ""Allocate"" button",Atualize montante atribuído no quadro acima e clique em &quot;alocar&quot; botão
Update bank payment dates with journals.,Atualização de pagamento bancário com data revistas.
Update is in progress. This may take some time.,Atualização está em andamento. Isso pode levar algum tempo.
Updated,Atualizado
Upload Attachment,Envie anexos
Upload Attendance,Envie Atendimento
Upload Backups to Dropbox,Carregar Backups para Dropbox
Upload Backups to Google Drive,Carregar Backups para Google Drive
Upload HTML,Carregar HTML
Upload a .csv file with two columns: the old name and the new name. Max 500 rows.,Enviar um arquivo CSV com duas colunas:. O nome antigo eo novo nome. No máximo 500 linhas.
Upload a file,Enviar um arquivo
Upload attendance from a .csv file,Carregar atendimento de um arquivo CSV.
Upload stock balance via csv.,Carregar saldo de estoque via csv.
Uploading...,Upload ...
Upper Income,Renda superior
Urgent,Urgente
Use Multi-Level BOM,Utilize Multi-Level BOM
Use SSL,Use SSL
User,Usuário
User Cannot Create,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 Remark,Observação de usuário
User Remark will be added to Auto Remark,Observação usuário será adicionado à observação Auto
User Tags,Etiquetas de usuários
User Type,Tipo de Usuário
User must always select,O usuário deve sempre escolher
User not allowed entry in the Warehouse,Entrada do usuário não é permitido no Armazém
User not allowed to delete.,Usuário não tem permissão para excluir.
UserRole,UserRole
Username,Nome de Utilizador
Users who can approve a specific employee's leave applications,Usuários que podem aprovar aplicações deixam de um funcionário específico
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 a entrada de contabilidade antes da data congelado
Utilities,Utilitários
Utility,Utilidade
Valid For Territories,Válido para os territórios
Valid Upto,Válido Upto
Valid for Buying or Selling?,Válido para comprar ou vender?
Valid for Territories,Válido para Territórios
Validate,Validar
Valuation,Avaliação
Valuation Method,Método de Avaliação
Valuation Rate,Taxa de valorização
Valuation and Total,Avaliação e Total
Value,Valor
Value missing for,Valor em falta para
Vehicle Dispatch Date,Veículo Despacho Data
Vehicle No,No veículo
Verdana,Verdana
Verified By,Verified By
Visit,Visitar
Visit report for maintenance call.,Relatório de visita para a chamada manutenção.
Voucher Detail No,Detalhe folha no
Voucher ID,ID comprovante
Voucher Import Tool,Ferramenta de Importação de comprovante
Voucher No,Não vale
Voucher Type,Tipo comprovante
Voucher Type and Date,Tipo Vale e Data
Waiting for Customer,À espera de cliente
Walk In,Walk In
Warehouse,Armazém
Warehouse Contact Info,Armazém Informações de Contato
Warehouse Detail,Detalhe Armazém
Warehouse Name,Nome Armazém
Warehouse User,Usuário Armazém
Warehouse Users,Usuários do Warehouse
Warehouse and Reference,Warehouse and Reference
Warehouse does not belong to company.,Warehouse não pertence à empresa.
Warehouse where you are maintaining stock of rejected items,Armazém onde você está mantendo estoque de itens rejeitados
Warehouse-Wise Stock Balance,Warehouse-sábio Stock Balance
Warehouse-wise Item Reorder,Armazém-sábio item Reordenar
Warehouses,Armazéns
Warn,Avisar
Warning,Aviso
Warning: Leave application contains following block dates,Atenção: Deixe o aplicativo contém seguintes datas bloco
Warranty / AMC Details,Garantia / AMC Detalhes
Warranty / AMC Status,Garantia / AMC Estado
Warranty Expiry Date,Data de validade da garantia
Warranty Period (Days),Período de Garantia (Dias)
Warranty Period (in days),Período de Garantia (em dias)
Web Content,Conteúdo da Web
Web Page,Página Web
Website,Site
Website Description,Descrição do site
Website Item Group,Grupo Item site
Website Item Groups,Item Grupos site
Website Overall Settings,Configurações do site em geral
Website Script,Script site
Website Settings,Configurações do site
Website Slideshow,Slideshow site
Website Slideshow Item,Item Slideshow site
Website Warehouse,Armazém site
Wednesday,Quarta-feira
Weekly,Semanal
Weekly Off,Weekly Off
Weight UOM,Peso UOM
Weightage,Weightage
Weightage (%),Weightage (%)
Welcome,Boas-vindas
"When any of the checked transactions are ""Submitted"", an email pop-up automatically opened to send an email to the associated ""Contact"" in that transaction, with the transaction as an attachment. The user may or may not send the email.","Quando qualquer uma das operações verificadas estão &quot;Enviado&quot;, um e-mail pop-up aberta automaticamente para enviar um e-mail para o associado &quot;Contato&quot;, em que a transação, com a transação como um anexo. O usuário pode ou não enviar o e-mail."
"When 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.,Sempre que as operações de fabricação são realizadas.
Widowed,Viúva
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 Cliente
Will be updated after Sales Invoice is Submitted.,Será atualizado após a factura de venda é submetido.
Will be updated when batched.,Será atualizado quando agrupadas.
Will be updated when billed.,Será atualizado quando faturado.
Will be used in url (usually first name).,Será utilizado na url (geralmente o primeiro nome).
With Operations,Com Operações
Work Details,Detalhes da Obra
Work Done,Trabalho feito
Work In Progress,Trabalho em andamento
Work-in-Progress Warehouse,Armazém Work-in-Progress
Workflow,Fluxo de trabalho
Workflow Action,Ação de fluxo de trabalho
Workflow Action Master,Mestre ação de fluxo de trabalho
Workflow Action Name,Nome da ação de fluxo de trabalho
Workflow Document State,Estado Documento de fluxo de trabalho
Workflow Document States,Fluxo de trabalho Documento Estados
Workflow Name,Nome de fluxo de trabalho
Workflow State,Estado de fluxo de trabalho
Workflow State Field,Campo do Estado de fluxo de trabalho
Workflow State Name,Nome Estado fluxo de trabalho
Workflow Transition,Transição de fluxo de trabalho
Workflow Transitions,Transições de fluxo de trabalho
Workflow state represents the current state of a document.,Estado de fluxo de trabalho representa o estado atual de um documento.
Workflow will start after saving.,Fluxo de trabalho terá início após a poupança.
Working,Trabalhando
Workstation,Estação de trabalho
Workstation Name,Nome da Estação de Trabalho
Write,Escrever
Write Off Account,Escreva Off Conta
Write Off Amount,Escreva Off Quantidade
Write Off Amount <=,Escreva Off Valor &lt;=
Write Off Based On,Escreva Off Baseado em
Write Off Cost Center,Escreva Off Centro de Custos
Write Off Outstanding Amount,Escreva Off montante em dívida
Write Off Voucher,Escreva voucher
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 esta é salvo 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. Nota resultado não é paginada (todos os dados são enviados de uma só vez).
Write sitemap.xml,Escrever sitemap.xml
Write titles and introductions to your blog.,Escreva títulos e introduções para o seu blog.
Writers Introduction,Escritores Introdução
Wrong Template: Unable to find head row.,Template errado: Não é possível encontrar linha cabeça.
Year,Ano
Year Closed,Ano Encerrado
Year Name,Nome 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 salário e tipo de dedução do Setup -&gt; HR
You can enter any date manually,Você pode entrar em qualquer data manualmente
You can enter the minimum quantity of this item to be ordered.,Você pode inserir a quantidade mínima deste item a ser ordenada.
You can not enter both Delivery Note No and Sales Invoice No. \					Please enter any one.,"Você não pode entrar tanto Entrega Nota Não e Vendas Nota Fiscal n ° \ Por favor, entrar em qualquer um."
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 start by selecting backup frequency and \					granting access for sync,Você pode começar por selecionar a freqüência de backup e \ concessão de acesso para sincronização
You can 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 em campos.
You may need to update: ,Você pode precisar atualizar:
Your Customer's TAX registration numbers (if applicable) or any general information,Seu cliente FISCAIS números de inscrição (se aplicável) ou qualquer outra informação geral
"Your download is being built, this may take a few moments...","O seu download está sendo construída, isso pode demorar alguns instantes ..."
Your letter head content in HTML.,Seu conteúdo cabeça carta em HTML.
Your sales person who will contact the customer in future,Sua pessoa de vendas que entrará em contato com o cliente no futuro
Your sales person who will contact the lead in future,Sua pessoa de vendas que entrará em contato com a liderança no futuro
Your sales person will get a reminder on this date to contact the customer,Seu vendedor receberá um lembrete sobre esta data para contato com o cliente
Your sales person will get a reminder on this date to contact the lead,Seu vendedor receberá um lembrete nesta data em contato com o chumbo
Your support email id - must be a valid email - this is where your emails will come!,O seu ID e-mail de apoio - deve ser um email válido - este é o lugar onde seus e-mails virão!
[Label]:[Field Type]/[Options]:[Width],[Etiqueta]: [Tipo de campo] / [Options]: [Largura]
add your own CSS (careful!),adicionar seu próprio CSS (cuidado!)
adjust,ajustar
align-center,alinhar-centro
align-justify,alinhar-justificar
align-left,alinhar-esquerda
align-right,alinhar à direita
also be included in Item's rate,também ser incluído na tarifa do item
and,e
arrow-down,seta para baixo
arrow-left,seta para a esquerda
arrow-right,seta para a direita
arrow-up,seta para cima
assigned by,atribuído pela
asterisk,asterisco
backward,para trás
ban-circle,proibição de círculo
barcode,código de barras
bell,sino
bold,negrito
book,livro
bookmark,marcar
briefcase,pasta
bullhorn,megafone
calendar,calendário
camera,câmera
cancel,cancelar
cannot be 0,não pode ser 0
cannot be empty,não pode ser vazio
cannot be greater than 100,não pode ser maior do que 100
cannot be included in Item's rate,não podem ser incluídos em taxa de ponto
"cannot have a URL, because it has child item(s)","Não é possível ter um URL, porque tem filho item (s)"
cannot start with,não pode começar com
certificate,certidão
check,verificar
chevron-down,chevron-down
chevron-left,chevron-esquerda
chevron-right,Chevron-direito
chevron-up,chevron-up
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 de ligação tipo (perfil) e depois usar as configurações de &#39;condição&#39; para mapear o campo para a regra de permissão.
dd-mm-yyyy,dd-mm-aaaa
dd/mm/yyyy,dd / mm / aaaa
deactivate,desativar
does not belong to BOM: ,não pertence ao BOM:
does not exist,não existe
does not have role 'Leave Approver',não tem papel de &#39;Leave aprovador&#39;
does not match,não corresponde
download,baixar
download-alt,download-alt
"e.g. Bank, Cash, Credit Card","por exemplo Banco, Dinheiro, cartão de crédito"
"e.g. Kg, Unit, Nos, m","kg por exemplo, Unidade, n, m"
edit,editar
eg. Cheque Number,por exemplo. Número de cheques
eject,ejetar
english,Inglês
envelope,envelope
español,español
example: Next Day Shipping,exemplo: Next Day envio
example: http://help.erpnext.com,exemplo: http://help.erpnext.com
exclamation-sign,exclamação sinal-
eye-close,olho-
eye-open,olho-aberto
facetime-video,facetime vídeo
fast-backward,rápido para trás
fast-forward,avançar
file,arquivo
film,filme
filter,filtrar
fire,fogo
flag,bandeira
folder-close,pasta close-
folder-open,pasta-aberto
font,fonte
forward,para a frente
français,français
fullscreen,fullscreen
gift,dom
glass,vidro
globe,globo
hand-down,mão-down
hand-left,mão esquerda
hand-right,mão direita
hand-up,mão-
has been entered atleast twice,foi inserido pelo menos duas vezes
have a common territory,tem um território comum
have the same Barcode,têm o mesmo código de barras
hdd,hdd
headphones,fones de ouvido
heart,coração
home,casa
icon,ícone
in,em
inbox,caixa de entrada
indent-left,travessão esquerdo
indent-right,travessão direito
info-sign,Informações sinal-
is a cancelled Item,é um item cancelado
is linked in,está ligado na
is not a Stock Item,não é um item de estoque
is not allowed.,não é permitido.
italic,itálico
leaf,folha
lft,lft
list,lista
list-alt,lista de alt-
lock,trancar
lowercase,minúsculas
magnet,ímã
map-marker,mapa marcador
minus,menos
minus-sign,sinal de menos-
mm-dd-yyyy,mm-dd-aaaa
mm/dd/yyyy,dd / mm / aaaa
move,mover
music,música
must be one of,deve ser um dos
nederlands,nederlands
not a purchase item,não é um item de compra
not a sales item,não é um item de vendas
not a service item.,não é um item de serviço.
not a sub-contracted item.,não é um item do sub-contratado.
not in,não em
not within Fiscal Year,não dentro de Ano Fiscal
of,de
of type Link,Tipo de Link
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,quadro
plane,avião
play,jogar
play-circle,jogo-círculo
plus,mais
plus-sign,plus-assinar
português,português
português brasileiro,português brasileiro
print,imprimir
qrcode,QRCode
question-sign,pergunta sinal-
random,acaso
reached its end of life on,chegou ao fim da vida na
refresh,refrescar
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,rgt
road,estrada
screenshot,tela
search,pesquisar
share,ação
share-alt,partes alt-
shopping-cart,carrinho de compras
should be 100%,deve ser de 100%
signal,sinalizar
star,estrela
star-empty,estrelas vazio
step-backward,passo para trás-
step-forward,passo-
stop,parar
tag,etiqueta
tags,etiquetas
"target = ""_blank""",target = &quot;_blank&quot;
tasks,tarefas
text-height,texto de altura
text-width,texto de largura
th,ª
th-large,ª-grande
th-list,ª-lista
thumbs-down,polegares para baixo
thumbs-up,polegar para cima
time,tempo
tint,matiz
to,para
"to be included in Item's rate, it is required that: ","para ser incluído na taxa do item, é necessário que:"
trash,lixo
upload,carregar
user,usuário
user_image_show,user_image_show
values and dates,valores e as datas
volume-down,volume baixo
volume-off,volume de off-
volume-up,volume-
warning-sign,sinal de alerta-
website page link,link da página site
wrench,chave inglesa
yyyy-mm-dd,aaaa-mm-dd
zoom-in,zoom-in
zoom-out,zoom-out
