 (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 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ório(a)
 is mandatory for GL Entry,é obrigatória para a entrada GL
 is not a ledger,não é um livro
 is not active,não está ativo
 is not set,não está definido
 is now the default Fiscal Year. \			Please refresh your browser for the change to take effect.,"é agora o padrão de Ano Fiscal. \ Por favor, atualize seu navegador para que a alteração tenha efeito."
 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
 or the BOM is cancelled or inactive,ou a LDM é cancelada ou inativa
 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órico da Empresa&quot;
"""Team Members"" or ""Management""",&quot;Membros da Equipe&quot; ou &quot;Gerenciamento&quot;
%  Delivered,Entregue %
% Amount Billed,Valor faturado %
% Billed,Faturado %
% Completed,% Concluído
% Installed,Instalado %
% Received,Recebido %
% of materials billed against this Purchase Order.,% de materiais faturado contra esta Ordem de Compra.
% of materials billed against this Sales Order,% de materiais faturados contra esta Ordem de Venda
% of materials delivered against this Delivery Note,% de materiais entregues contra esta Guia de Remessa
% of materials delivered against this Sales Order,% de materiais entregues contra esta Ordem de Venda
% of materials ordered against this Material Request,% De materiais encomendados contra este pedido se
% of materials received against this Purchase Order,% de materiais recebidos contra esta Ordem de Compra
"' 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,Cadastro de **Moeda**
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,**Ano Fiscal** representa um Exercício. Todos os lançamentos contábeis e outras transações importantes são monitorados contra o **Ano Fiscal**.
. 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 código de item do cliente e para torná-los pesquisáveis ​​com base em seu código use esta opção
12px,12px
13px,13px
14px,14px
15px,15px
16px,16px
2 days ago,Há 2 dias
: It is linked to other active BOM(s),: Está ligado a outra(s) LDM(s) ativa(s)
: Mandatory for a Recurring Invoice.,: Obrigatório para uma Fatura Recorrente.
"<a href=""#!Sales Browser/Customer Group"">To manage Customer Groups, click here</a>","<a href=""#!Sales Browser/Customer Group"">Para gerenciar Grupos de Clientes, clique aqui</a>"
"<a href=""#!Sales Browser/Item Group"">Manage Item Groups</a>","<a href=""#!Sales Browser/Item Group"">Gerenciar Grupos de Itens</a>"
"<a href=""#!Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#!Sales Browser/Territory"">Para gerenciar Território, clique aqui</a>"
"<a href=""#Sales Browser/Customer Group"">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 enviados cancelando ou corrigindo-os.
"<span class=""sys_manager"">To setup, please go to Setup > Naming Series</span>","<span class=""sys_manager"">Para configurar, por favor, vá para Configuração > Séries Nomeadas</span>"
A Customer exists with same name,Um cliente existe com mesmo nome
A Lead with this email id should exist,Um Prospecto com esse endereço de e-mail deve existir
"A Product or a Service that is bought, sold or kept in stock.","Um Produto ou um Perviço que é comprado, vendido ou mantido em estoque."
A Supplier exists with same name,Um Fornecedor existe com mesmo nome
A condition for a Shipping Rule,A condição para uma regra de envio
A logical Warehouse against which stock entries are made.,Um Almoxarifado lógico contra o qual os lançamentos de estoque são feitos.
A new popup will open that will ask you to select further conditions.,Um novo pop-up será aberto que vai pedir para você selecionar outras condições.
A symbol for this currency. For e.g. $,Um símbolo para esta moeda. Por exemplo: $
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Um distribuidor terceirizado / negociante / agente comissionado / revendedor que vende os produtos da empresas por uma comissão.
A user can have multiple values for a property.,Um usuário pode ter vários valores para uma propriedade.
A+,A+
A-,A-
AB+,AB+
AB-,AB-
AMC Expiry Date,Data de Validade do CAM
ATT,ATT
Abbr,Abrev
About,Sobre
About Us Settings,Configurações do Quem Somos
About Us Team Member,Sobre Membro da Equipe
Above Value,Acima de Valor
Absent,Ausente
Acceptance Criteria,Critérios de Aceitação
Accepted,Aceito
Accepted Quantity,Quantidade Aceita
Accepted Warehouse,Almoxarifado Aceito
Account,Conta
Account Balance,Saldo em Conta
Account Details,Detalhes da Conta
Account Head,Conta
Account Id,Id da Conta
Account 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 no livro Diário.
Accounts,Contas
Accounts Frozen Upto,Contas congeladas até
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 Log,Log de Atividade
Activity Type,Tipo da Atividade
Actual,Real
Actual Budget,Orçamento Real
Actual Completion Date,Data de Conclusão Real
Actual Date,Data Real
Actual End Date,Data Final Real
Actual Invoice Date,Actual Data da Fatura
Actual Posting Date,Actual Data lançamento
Actual Qty,Qtde Real
Actual Qty (at source/target),Qtde Real (na origem / destino)
Actual Qty After Transaction,Qtde Real Após a Transação
Actual Quantity,Quantidade Real
Actual Start Date,Data de Início Real
Add,Adicionar
Add / Edit Taxes and Charges,Adicionar / Editar Impostos e Encargos
Add A New Rule,Adicionar uma Nova Regra
Add A Property,Adicione uma Propriedade
Add Attachments,Adicionar Anexos
Add Bookmark,Adicionar marcadores
Add CSS,Adicionar CSS
Add Column,Adicionar Coluna
Add Comment,Adicionar comentário
Add Google Analytics ID: eg. UA-89XXX57-1. Please search help on Google Analytics for more information.,"Adicionar ID do Google Analytics: ex. UA-89XXX57-1. Por favor, procure ajuda no Google Analytics para obter mais informações."
Add Message,Adicionar Mensagem
Add New Permission Rule,Adicionar Nova Regra de Permissão
Add Reply,Adicione Resposta
Add Terms and Conditions for the Material Request. You can also prepare a Terms and Conditions Master and use the Template,Adicione Termos e Condições para a Solicitação de Material. Você também pode preparar um Termos e Condições mestre e usar o modelo
Add Terms and Conditions for the Purchase Receipt. You can also prepare a Terms and Conditions Master and use the Template.,Adicione Termos e Condições para o Recibo de Compra. Você também pode preparar um cadastro de Termos e Condições e usar o Modelo.
"Add Terms and Conditions for the Quotation like Payment Terms, Validity of Offer etc. You can also prepare a Terms and Conditions Master and use the Template","Adicione Termos e Condições para a Cotação como Condições de Pagamento, Validade da Oferta e etc. Você também pode preparar um cadastro de Termos e Condições e usar o Modelo"
Add 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 custom code to forms,Adicionar código personalizado aos formulários
Add fields to forms,Adicionar campos aos formulários
Add headers for standard print formats,Adicionar cabeçalhos para formatos de impressão padrão
Add 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 à Lista de Tarefas
Add to To Do List of,Adicionar à Lista de Tarefas de
Add/Remove Recipients,Adicionar / Remover Destinatários
"Add/remove users, set roles, passwords etc","Adicionar / remover usuários, definir funções, senhas etc"
Additional Info,Informações Adicionais
Address,Endereço
Address & Contact,Address &amp; Contact
Address & Contacts,Endereço e Contatos
Address Desc,Descrição do Endereço
Address Details,Detalhes do Endereço
Address HTML,Endereço HTML
Address Line 1,Endereço Linha 1
Address Line 2,Endereço Linha 2
Address Title,Título do Endereço
Address Type,Tipo de Endereço
Address and other legal information you may want to put in the footer.,Endereço e outras informações legais que você possa querer colocar no rodapé.
Address to be displayed on the Contact Page,O endereço a ser exibida na Página de Contato
Adds a custom field to a DocType,Adiciona um campo personalizado em um DocType
Adds a custom script (client or server) to a DocType,Adiciona um script personalizado (cliente ou servidor) em um DocType
Administration,Administração
Advance Amount,Quantidade Antecipada
Advance amount,Valor do adiantamento
Advanced Scripting,Scripts Avançados
Advanced Settings,Configurações Avançadas
Advances,Avanços
Advertisement,Anúncio
After Sale Installations,Instalações Pós-Venda
Against,Contra
Against Account,Contra Conta
Against Docname,Contra Docname
Against Doctype,Contra Doctype
Against Document Date,Contra Data do Documento
Against Document Detail No,Contra Detalhe do Documento nº
Against Document No,Contra Documento nº
Against Expense Account,Contra a Conta de Despesas
Against Income Account,Contra a Conta de Rendimentos
Against Journal Voucher,Contra Comprovante do livro Diário
Against Purchase Invoice,Contra a Nota Fiscal de Compra
Against Sales Invoice,Contra a Nota Fiscal de Venda
Against Voucher,Contra Comprovante
Against Voucher Type,Contra Tipo de Comprovante
Agent,Agente
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials","Grupo agregado de Itens ** ** em outro item **. ** Isso é útil se você está empacotando um certo ** ** Itens em um pacote e você manter o estoque dos itens embalados ** ** e não agregar o item **. ** O pacote ** ** item terá &quot;é o item da&quot; como &quot;Não&quot; e &quot;é o item de vendas&quot; como &quot;Sim&quot;, por exemplo:. Se você está vendendo laptops e mochilas separadamente e têm um preço especial se o cliente compra tanto , então o Laptop Backpack + será uma nova Vendas BOM Item.Note: BOM = Bill of Materials"
Aging Date,Data de Envelhecimento
All Addresses.,Todos os Endereços.
All Contact,Todo Contato
All Contacts.,Todos os contatos.
All Customer Contact,Todo Contato do Cliente
All Day,Dia de Todos os
All Employee (Active),Todos os Empregados (Ativos)
All Lead (Open),Todos Prospectos (Abertos)
All Products or Services.,Todos os Produtos ou Serviços.
All Sales Partner Contact,Todo Contato de Parceiros de Vendas
All Sales Person,Todos os Vendedores
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Todas as Transações de Vendas podem ser marcadas contra diversos **Vendedores** de modo que você possa definir e monitorar metas.
All Supplier Contact,Todo Contato de Fornecedor
"All 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 possíveis Estados de Fluxo de Trabalho e as funções do fluxo de trabalho. <br> Docstatus Opções: 0 é &quot;Salvo&quot;, 1 é &quot;Enviado&quot; e 2 é &quot;Cancelado&quot;"
All posts by,Todas as mensagens de
Allocate,Alocar
Allocate leaves for the year.,Alocar licenças para o ano.
Allocated Amount,Montante alocado
Allocated Budget,Orçamento alocado
Allocated amount,Montante alocado
Allow Attach,Permitir Anexar
Allow Bill of Materials,Permitir Lista de Materiais
Allow 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 de dados através de ferramenta de importação
Allow Negative Balance,Permitir saldo negativo
Allow Negative Stock,Permitir Estoque Negativo
Allow Production Order,Permitir Ordem de Produção
Allow Rename,Permitir Renomear
Allow Samples,Permitir Amostras
Allow User,Permitir que o usuário
Allow Users,Permitir que os usuários
Allow on Submit,Permitir ao Enviar
Allow the following users to approve Leave Applications for block days.,Permitir que os usuários a seguir para aprovar aplicações deixam para os dias de bloco.
Allow user to login only after this hour (0-24),Permitir que o usuário faça o login somente após esta hora (0-24)
Allow user to login only before this hour (0-24),Permitir que o usuário faça o login somente antes desta hora (0-24)
Allowance Percent,Percentual de tolerância
Allowed,Permitido
Already Registered,Já registrado
Always use Login Id as sender,Sempre use Id Entrar como remetente
Amend,Corrigir
Amended From,Corrigido 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 de ícone com extensão .ico. Deve ser de 16 x 16 px. Gerado usando um gerador de favicon. [ <a href=""http://favicon-generator.org/"" target=""_blank"">favicon-generator.org</a> ]"
Analytics,Analítica
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 deva ir para os registros."
Applicable Holiday List,Lista de Férias Aplicável
Applicable To (Designation),Aplicável Para (Designação)
Applicable To (Employee),Aplicável Para (Funcionário)
Applicable To (Role),Aplicável Para (Função)
Applicable To (User),Aplicável Para (Usuário)
Applicant Name,Nome do Requerente
Applicant for a Job,Candidato a um Emprego
Applicant for a Job.,Requerente de uma Job.
Applications for leave.,Pedidos de licença.
Applies to Company,Aplica-se a Empresa
Apply / Approve Leaves,Aplicar / Aprovar Licenças
Apply Shipping Rule,Aplicar Rule Envios
Apply Taxes and Charges Master,"Aplicar Impostos, taxas e Encargos mestras"
Apply latest updates and patches to this app,Aplicar atualizações mais recentes e patches de para this app
Appraisal,Avaliação
Appraisal Goal,Meta de Avaliação
Appraisal Goals,Metas de Avaliação
Appraisal Template,Modelo de Avaliação
Appraisal Template Goal,Meta do Modelo de Avaliação
Appraisal Template Title,Título do Modelo de Avaliação
Approval Status,Estado da Aprovação
Approved,Aprovado
Approver,Aprovador
Approving Role,Função Aprovadora
Approving User,Usuário Aprovador
Are you sure you want to delete the attachment?,Tem certeza de que deseja excluir o anexo?
Arial,Arial
Arrear Amount,Quantidade em atraso
"As a best practice, do not assign the same set of permission rule to different Roles instead set multiple Roles to the User","Como uma boa prática, não atribuia o mesmo conjunto de regras de permissão para diferentes Funções, em vez disso, estabeleça múltiplas Funções ao Usuário"
As existing qty for item: ,Como qty existente para o item:
As per Stock UOM,Como UDM do Estoque
"As there are existing stock transactions for this \							item, you can not change the values of 'Has Serial No', \							'Is Stock Item' and 'Valuation Method'","Como existem 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 almoxarifado é 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
Attachment removed. You may need to update: ,Anexo removido. Você pode precisar atualizar:
Attachments,Anexos
Attempted to Contact,Tentou entrar em Contato
Attendance,Comparecimento
Attendance Date,Data de Comparecimento
Attendance Details,Detalhes do Comparecimento
Attendance From Date,Data Inicial de Comparecimento
Attendance To Date,Data Final de Comparecimento
Attendance can not be marked for future dates,Atendimento não pode ser marcado para datas futuras
Attendance for the employee: ,De Presença para o empregado:
Attendance record.,Registro de comparecimento.
Attributions,Atribuições
Authorization Control,Controle de autorização
Authorization Rule,Regra de autorização
Auto Email Id,Endereço dos E-mails Automáticos
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,Gerado Automaticamente
Auto-raise Material Request if quantity goes below re-order level in a warehouse,Auto-raise solicitar material se a quantidade for inferior a reordenar nível em um armazém
Automatically updated via Stock Entry of type Manufacture/Repack,Atualizado automaticamente através do lançamento de Estoque do tipo Fabricação/Reempacotamento
Autoreply when a new mail is received,Responder automaticamente quando um novo e-mail é recebido
Available Qty at Warehouse,Qtde Disponível em Almoxarifado
Available 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,LDM
BOM Detail No,Nº do detalhe da LDM
BOM Explosion Item,Item da Explosão da LDM
BOM Item,Item da LDM
BOM No,Nº da LDM
BOM No. for a Finished Good Item,Nº da LDM para um Item Bom Acabado
BOM Operation,Operação da LDM
BOM Operations,Operações da LDM
BOM Replace Tool,Ferramenta de Substituição da LDM
BOM replaced,LDM substituída
Background Color,Cor de Fundo
Background Image,Imagem de Fundo
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.,Nº Cta. Bancária
Bank Account,Conta Bancária
Bank Account No.,Nº Conta Bancária
Bank Clearance Summary,Banco Resumo Clearance
Bank Name,Nome do Banco
Bank Reconciliation,Reconciliação Bancária
Bank Reconciliation Detail,Detalhe da Reconciliação Bancária
Bank Reconciliation Statement,Declaração de reconciliação bancária
Bank Voucher,Comprovante Bancário
Bank or Cash,Banco ou Dinheiro
Bank/Cash Balance,Banco / Saldo de Caixa
Banner,Faixa
Banner HTML,Faixa HTML
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,Lote
Batch (lot) of an Item.,Lote de um item.
Batch Finished Date,Data de Término do Lote
Batch ID,ID do Lote
Batch No,Nº do Lote
Batch Started Date,Data de Início do Lote
Batch Time Logs for Billing.,Tempo lote Logs para o faturamento.
Batch 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 de Faturamento
Bill No,Fatura Nº
Bill of Material to be considered for manufacturing,Lista de Materiais a serem considerados para a fabricação
Bill of Materials,Lista de Materiais
Bill of Materials (BOM),Lista de Materiais (LDM)
Billable,Faturável
Billed,Faturado
Billed Amt,Valor Faturado
Billing,Faturamento
Billing Address,Endereço de Cobrança
Billing Address Name,Faturamento Nome Endereço
Billing Status,Estado do Faturamento
Bills raised by Suppliers.,Contas levantada por Fornecedores.
Bills raised to Customers.,Contas levantdas para Clientes.
Bin,Caixa
Bio,Bio
Bio will be displayed in blog section etc.,Bio será exibido em 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 do 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.,Cadastro de Marca.
Branding and Printing,Identificação de Marca e Impressão
Brands,Marcas
Breakdown,Colapso
Budget,Orçamento
Budget Allocated,Orçamento Alocado
Budget Control,Controle de Orçamento
Budget Detail,Detalhe do Orçamento
Budget Details,Detalhes do Orçamento
Budget Distribution,Distribuição de Orçamento
Budget Distribution Detail,Detalhe da Distribuição de Orçamento
Budget Distribution Details,Detalhes da Distribuição de Orçamento
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.,Registros de e-mail em massa.
Bundle items at time of sale.,Empacotar itens no momento da venda.
Button,Botão
Buyer of Goods and Services.,Comprador de Mercadorias e Serviços.
Buying,Compras
Buying Amount,Comprar Valor
Buying Settings,Comprar Configurações
By,Por
C-FORM/,FORMULÁRIO-C /
C-Form,Formulário-C
C-Form Applicable,Formulário-C Aplicável
C-Form Invoice Detail,Detalhe Fatura do Formulário-C
C-Form No,Nº do Formulário-C
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 função de &quot;Gerente de Relatórios&quot;
Cancel,Cancelar
Cancel permission also allows the user to delete a document (if it is not linked to any other document).,Permissão de cancelamento também permite ao usuário excluir um documento (se ele não está vinculado a qualquer outro documento).
Cancelled,Cancelado
Cannot ,Não é 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 Block.
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,Encaminhar
Carry Forwarded Leaves,Encaminhar Licenças
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 Caixa
Cash/Bank Account,Conta do Caixa/Banco
Categorize blog posts.,Categorizar posts.
Category,Categoria
Category Name,Nome da Categoria
Category of customer as entered in Customer master,Categoria de cliente como no Cadastrado de Cliente
Cell Number,Telefone Celular
Center,Centro
"Certain documents should not be changed once final, like an Invoice for example. The final state for such documents is called <b>Submitted</b>. You can restrict which roles can Submit.","Alguns documentos não devem ser alterados uma vez finalizados, como uma nota fiscal, por exemplo. O estado final de tais documentos é chamado <b>Enviado.</b> Você pode restringir as funções que podem Enviar."
Change UOM for an Item.,Alterar UDM de um item.
"Change entry properties (hide fields, make mandatory etc)","Alterar as propriedades do lançamento (ocultar campos, tornar obrigatório, etc)"
Change the starting / current sequence number of an existing series.,Alterar o número sequencial de início/atual de uma série existente.
Channel Partner,Parceiro de Canal
Charge,Carga
Chargeable,Taxável
Chart of Accounts,Plano de Contas
Chart of Cost Centers,Plano de Centros de Custo
Chat,Conversar
Check,Verificar
Check / Uncheck roles assigned to the Profile. Click on the Role to find out what permissions that Role has.,Marque / Desmarque funções atribuídas ao perfil. Clique sobre a Função para verificar que permissões a função tem.
Check all the items below that you want to send in this digest.,Marque todos os itens abaixo que você deseja enviar neste resumo.
Check how the newsletter looks in an email by sending it to your email.,Verifique como a newsletter é exibido em um e-mail enviando-o para o seu e-mail.
"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Marque se é uma nota fiscal recorrente, desmarque para parar a recorrência ou colocar uma Data Final adequada"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Marque se você precisa de notas fiscais recorrentes automáticas. Depois de enviar qualquer nota fiscal de venda, a seção Recorrente será visível."
Check if you want to send salary slip in mail to each employee while submitting salary slip,Marque se você quiser enviar a folha de pagamento pelo correio a cada empregado ao enviar a folha de pagamento
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Marque esta opção se você deseja forçar o usuário a selecionar uma série antes de salvar. Não haverá nenhum padrão se você marcar isso.
Check this if you want to 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 este o cabeçalho padrão em todas as impressões
Check this to pull emails from your mailbox,Marque esta a puxar os e-mails de sua caixa de correio
Check to activate,Marque para ativar
Check to make Shipping Address,Marque para criar Endereço de Remessa
Check to make primary address,Marque para criar Endereço Principal
Checked,Marcado
Cheque,Cheque
Cheque Date,Data do Cheque
Cheque Number,Número do cheque
Child Tables are shown as a Grid in other DocTypes.,Tabelas-filhas são mostradas como uma grade nos outros DocTypes.
City,Cidade
City/Town,Cidade / Município
Claim Amount,Valor Requerido
Claims for 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,Limpar Tabela
Clearance Date,Data de Liberaçã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 na coluna &#39;Condição&#39; e selecione a opção &quot;Usuário é o criador do documento&#39;
Click to Expand / Collapse,Clique para Expandir / Recolher
Client,Cliente
Close,Fechar
Closed,Fechado
Closing Account Head,Conta de Fechamento
Closing Date,Data de Encerramento
Closing Fiscal Year,Encerramento do exercício fiscal
CoA Help,Ajuda CoA
Code,Código
Cold Calling,Cold Calling
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 Nome Completo
Comment Date,Data do Comentário
Comment Docname,Comentário docName
Comment Doctype,Comentário Doctype
Comment Time,Horário do Comentário
Comments,Comentários
Commission Rate,Taxa de Comissão
Commission Rate (%),Taxa de Comissão (%)
Commission partners and targets,Parceiros de comissão e metas
Communication,Comunicação
Communication HTML,Comunicação HTML
Communication History,Histórico da comunicação
Communication Medium,Meio de comunicação
Communication log.,Log de Comunicação.
Company,Empresa
Company Details,Detalhes da Empresa
Company History,Histórico da Empresa
Company History Heading,Título do Histórico da Empresa
Company Info,Informações da Empresa
Company Introduction,Introdução da Empresa
Company 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 de registro da empresa para sua referência. Exemplo: CNPJ, IE, etc"
Company registration numbers for your reference. Tax numbers etc.,"Números da empresa de registro para sua referência. Números fiscais, etc"
Complaint,Reclamação
Complete By,Completar em
Completed,Concluído
Completed Qty,Qtde concluída
Completion Date,Data de Conclusão
Completion Status,Estado de Conclusão
Confirmed orders from Customers.,Pedidos confirmados de clientes.
Consider Tax or Charge for,Considere Imposto ou Encargo para
"Consider this Price List for fetching rate. (only which have ""For Buying"" as checked)",Considere esta Lista de Preços para a obtenção do valor. (Só onde &quot;Para Comprar&quot; estiver marcado)
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,Controle de Contato
Contact Desc,Descrição do Contato
Contact Details,Detalhes do Contato
Contact Email,E-mail do Contato
Contact HTML,Contato HTML
Contact Info,Informações para Contato
Contact Mobile No,Celular do Contato
Contact Name,Nome do Contato
Contact No.,Nº Contato.
Contact Person,Pessoa de Contato
Contact Type,Tipo de Contato
Contact Us Settings,Configurações do Fale Conosco
Contact in Future,Fale no Futuro
"Contact options, like ""Sales Query, Support Query"" etc each on a new line or separated by commas.","Opções de contato, como &quot;Consulta de Vendas, Consulta de suporte&quot;, etc cada uma em uma nova linha ou separadas por vírgulas."
Contacted,Contactado
Content,Conteúdo
Content Type,Tipo de Conteúdo
Content in markdown format that appears on the main side of your page,Conteúdos em formato markdown que aparecem no lado principal de sua página
Content web page.,Página web de conteúdo.
Contra Voucher,Comprovante de Caixa
Contract End Date,Data Final do contrato
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 Nota Fiscal 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,Detalhes do Centro de Custo
Cost Center Name,Nome do Centro de Custo
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 Comprovante Bancário para o salário total pago para os critérios acima selecionados
Create Production Orders,Criar Ordens de Produção
Create Receiver List,Criar Lista de Receptor
Create Salary Slip,Criar Folha de Pagamento
Create 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 a partir do cadastro de Lista de Preços e introduzir valores padrão de ref. para cada um deles. Na seleção de uma lista de preços em Cotação, Ordem de Venda, ou Guia de Remessa, o valor de ref. correspondente será buscado para este item."
Create and Send Newsletters,Criar e enviar Newsletters
Created Account Head: ,Chefe da conta:
Created By,Criado por
Created Customer Issue,Problema do Cliente Criado
Created Group ,Criado Grupo
Created Opportunity,Oportunidade Criada
Created Support Ticket,Ticket de Suporte Criado
Creates salary slip for above mentioned criteria.,Cria folha de pagamento para os critérios acima mencionados.
Credentials,Credenciais
Credit,Crédito
Credit Amt,Montante de Crédito
Credit Card Voucher,Comprovante do cartão de crédito
Credit Controller,Controlador de crédito
Credit Days,Dias de Crédito
Credit Limit,Limite de Crédito
Credit Note,Nota de Crédito
Credit To,Crédito Para
Cross Listing of Item in multiple groups,Listagem Cruzada dos itens em múltiplos grupos
Currency,Moeda
Currency Exchange,Câmbio
Currency Format,Formato da 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 Acomodação atual
Current Address,Endereço Atual
Current BOM,LDM atual
Current Fiscal Year,Ano Fiscal Atual
Current Stock,Estoque Atual
Current Stock UOM,UDM de Estoque Atual
Current Value,Valor Atual
Current status,Estado Atual
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 personalizados
Custom Script,Script personalizado
Custom Startup Code,Código de inicialização personalizado
Custom?,Personalizado?
Customer,Cliente
Customer / Item Name,Cliente / Nome do item
Customer Account,Conta de Cliente
Customer Account Head,Cliente Cabeça Conta
Customer Address,Endereço do cliente
Customer Addresses And Contacts,Endereços e contatos do cliente
Customer Code,Código do Cliente
Customer Codes,Códigos de Clientes
Customer Details,Detalhes do Cliente
Customer Feedback,Comentário do Cliente
Customer Group,Grupo de Clientes
Customer Group Name,Nome do grupo de Clientes
Customer Intro,Introdução do Cliente
Customer Issue,Questão do Cliente
Customer Issue 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,Moeda do Cliente
Customer's Item Code,Código do Item do Cliente
Customer's Purchase Order Date,Do Cliente Ordem de Compra Data
Customer's Purchase Order No,Ordem de Compra do Cliente Não
Customer's Vendor,Vendedor do cliente
Customer's currency,Moeda do Cliente
"Customer's currency - If you want to select a currency that is not the default currency, then you must also specify the Currency Conversion Rate.","Moeda do cliente - Se você deseja selecionar uma moeda que não é a moeda padrão, então você também deve especificar a taxa de conversão."
Customers Not Buying Since Long Time,Os clientes não compra desde há muito tempo
Customerwise Discount,Desconto referente ao Cliente
Customize,Personalize
Customize Form,Personalize Formulário
Customize Form Field,Personalize campo de formulário
"Customize Label, Print Hide, Default etc.","Personalize Etiquetas, Cabeçalhos, Padrões, etc"
Customize the Notification,Personalize a Notificação
Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,Personalize o texto introdutório que vai como uma parte do que e-mail. Cada transação tem um texto introdutório separado.
DN,DN
DN Detail,Detalhe DN
Daily,Diário
Daily Time Log Summary,Resumo Diário Log Tempo
"Daily, weekly, monthly email Digests","Resumos diários, semanais e mensais por e-mail"
Danger,Perigo
Data,Dados
Data Import,Importação de Dados
Data 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 da 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 Efetivação
Date on which lorry started from supplier warehouse,Data em que o caminhão partiu do almoxarifado do fornecedor
Date on which lorry started from your warehouse,Data em que o caminhão partiu do seu almoxarifado
Date on which the lead was last contacted,Última data em que o Prospecto foi contatado
Dates,Datas
Datetime,Datetime
Days for which Holidays are blocked for this department.,Dias para que feriados são bloqueados para este departamento.
Dealer,Revendedor
Dear,Caro
Debit,Débito
Debit Amt,Montante de Débito
Debit Note,Nota de Débito
Debit To,Débito Para
Debit or Credit,Débito ou crédito
Deduct,Subtrair
Deduction,Dedução
Deduction Type,Tipo de dedução
Deduction1,Deduction1
Deductions,Deduções
Default,Padrão
Default Account,Conta Padrão
Default BOM,LDM padrão
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Conta do Banco/Caixa padrão será atualizada automaticamente na nota fiscal do PDV quando este modo for selecionado.
Default Bank Account,Conta Bancária Padrão
Default 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,Página Inicial padrão
Default Home Pages,Páginas Iniciais padrão
Default Income Account,Conta de Rendimento padrão
Default Item Group,Grupo de Itens padrão
Default Price List,Lista de Preços padrão
Default 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,Configurações padrão
Default Source Warehouse,Almoxarifado da origem padrão
Default Stock UOM,Padrão da UDM do Estouqe
Default Supplier Type,Tipo de fornecedor padrão
Default Target Warehouse,Almoxarifado de destino padrão
Default Territory,Território padrão
Default Unit of Measure,Unidade de medida padrão
Default Valuation Method,Método de Avaliação padrão
Default Value,Valor padrão
Default Warehouse,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""",Default: &quot;Fale Conosco&quot;
DefaultValue,Valor padrão
Defaults,Padrões
"Define Budget for this Cost Center. To set budget action, see <a href=""#!List/Company"">Company Master</a>","Definir Orçamento para este Centro de Custo. Para definir ação do orçamento, consulte <a href=""#!List/Company"">Cadastro de Empresa</a>"
Defines actions on states and the next step and allowed roles.,Define ações em estados e no próximo passo e funções permitidos.
Defines workflow states and rules for a document.,Define os estados do fluxo de trabalho e regras para um documento.
Delete,Excluir
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,Nº do Documento de Entrega
Delivery Document Type,Tipo do Documento de Entrega
Delivery Note,Guia de Remessa
Delivery Note Item,Item da Guia de Remessa
Delivery Note Items,Itens da Guia de Remessa
Delivery Note Message,Mensagem da Guia de Remessa
Delivery Note No,Nº da Guia de Remessa
Delivery Note Packing Item,Item do Pacote da Guia de Remessa
Delivery Note Required,Guia de Remessa Obrigatória
Delivery Note Trends,Nota de entrega Trends
Delivery Status,Estado da entrega
Delivery Time,Prazo de entrega
Delivery To,Entrega
Department,Departamento
Depend on LWP,Depende do LWP
Depends On,Depende
Depends on LWP,Dependem do LWP
Descending,Descendente
Description,Descrição
Description HTML,Descrição HTML
"Description for listing page, in plain text, only a couple of lines. (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,Detalhamento dos totais
Details,Detalhes
Deutsch,Deutsch
Did not add.,Não adicionou.
Did not cancel,Não cancelou
Did not save,Não salvou
Difference,Diferença
"Different ""States"" this document can exist in. Like ""Open"", ""Pending Approval"" etc.","&quot;Estados&quot; diferentes em que esse documento pode existir. Como &quot;Aberto&quot;, &quot;Aprovação Pendente&quot;, etc"
Disable 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,Desativado
Discount  %,% De desconto
Discount %,% De desconto
Discount (%),Desconto (%)
"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Campos de desconto estarão disponíveis em Ordem de Compra, Recibo de Compra, Nota Fiscal de Compra"
Discount(%),Desconto (%)
Display,Exibir
Display Settings,Configurações de exibição
Display all the individual items delivered with the main items,Exibir todos os itens individuais entregues com os itens principais
Distinct unit of an Item,Unidade distinta de um item
Distribute transport overhead across items.,Distribuir o custo de transporte através dos itens.
Distribution,Distribuição
Distribution Id,Id da distribuição
Distribution Name,Nome da distribuição
Distributor,Distribuidor
Divorced,Divorciado
Do not show any symbol like $ etc next to currencies.,Não mostrar qualquer símbolo como US $ etc ao lado de moedas.
Doc Name,Nome do Documento
Doc Status,Estado do Documento
Doc Type,Tipo do Documento
DocField,DocField
DocPerm,DocPerm
DocType,DocType
DocType Details,Detalhes do DocType
DocType is a Table / Form in the application.,DocType é uma Tabela / Formulário na aplicação.
DocType on which this Workflow is applicable.,DocType em que este fluxo de trabalho é aplicável.
DocType or Field,DocType ou Campo
Document,Documento
Document Description,Descrição do documento
Document Status transition from ,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 da função
Documentation,Documentação
Documentation Generator Console,Console Gerador de Documentação
Documentation Tool,Ferramenta de Documentação
Documents,Documentos
Domain,Domínio
Download Backup,Baixar o Backup
Download Materials Required,Baixar Materiais Necessários
Download Template,Baixar o Modelo
Download a report containing all raw materials with their latest inventory status,Baixar um relatório contendo todas as matérias-primas com o seu estado mais recente do inventário
"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,Nº CARTÃO ESIC
ESIC No.,Nº ESIC.
Earning,Ganho
Earning & Deduction,Ganho &amp; Dedução
Earning Type,Tipo de Ganho
Earning1,Earning1
Edit,Editar
Editable,Editável
Educational Qualification,Qualificação Educacional
Educational Qualification Details,Detalhes da Qualificação Educacional
Eg. smsgateway.com/api/send_sms.cgi,Por exemplo: smsgateway.com / api / send_sms.cgi
Email,E-mail
Email (By company),E-mail (por empresa)
Email Digest,Resumo por E-mail
Email Digest Settings,Configurações do Resumo por E-mail
Email Host,Host do e-mail
Email Id,Endereço de e-mail
"Email Id must be unique, already exists for: ","Id e-mail deve ser único, já existe para:"
"Email Id where a job applicant will email e.g. ""jobs@example.com""","Endereço do e-mail onde um candidato a emprego vai enviar e-mail, por exemplo: &quot;empregos@exemplo.com&quot;"
Email Login,Login do e-mail
Email Password,Senha do e-mail
Email Sent,E-mail enviado
Email Sent?,E-mail enviado?
Email Settings,Configurações de e-mail
Email Settings for Outgoing and Incoming Emails.,Configurações de e-mail para e-mails enviados e recebidos.
Email Signature,Assinatura de e-mail
Email Use SSL,Usar SSL no e-mail
"Email addresses, separted by commas","Endereços de email, separados por vírgulas"
Email 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 de empregos &quot;empregos@exemplo.com&quot;
"Email settings to extract Leads from sales email id e.g. ""sales@example.com""","Configurações de e-mail para extrair Prospectos do e-mail de vendas, por exemplo &quot;vendas@exemplo.com&quot;"
Email...,E-mail ...
Embed image slideshows in website pages.,Incorporar apresentações de imagem em páginas do site.
Emergency Contact Details,Detalhes do contato de emergência
Emergency Phone Number,Número do telefone de emergência
Employee,Funcionário
Employee Birthday,Aniversário empregado
Employee Designation.,Designação empregado.
Employee Details,Detalhes do Funcionário
Employee Education,Escolaridade do Funcionário
Employee External Work History,Histórico de trabalho externo do Funcionário
Employee Information,Informações do Funcionário
Employee Internal Work History,Histórico de trabalho interno do Funcionário
Employee Internal Work Historys,Histórico de trabalho interno do Funcionário
Employee Leave Approver,Empregado Leave Approver
Employee Leave Balance,Equilíbrio Leave empregado
Employee Name,Nome do Funcionário
Employee Number,Número do Funcionário
Employee Records to be created by ,Empregado Records para ser criado por
Employee Setup,Configuração do Funcionário
Employee Type,Tipo de empregado
Employee grades,Notas do funcionário
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,Endereços de e-mail dos Funcionários
Employment Details,Detalhes de emprego
Employment Type,Tipo de emprego
Enable / disable currencies.,Ativar / desativar moedas.
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,Habilitar <b>Mais informações.</b> em todos os documentos
Encashment Date,Data da cobrança
End Date,Data final
End date of current invoice's period,Data final do período de fatura atual
End of Life,Fim de Vida
Ends on,Termina em
Enter Email Id to receive Error Report sent by users.E.g.: support@iwebnotes.com,Digite o Id-mail para receber Relatório de erros enviados por users.Eg: support@iwebnotes.com
Enter Form Type,Digite o Tipo de Formulário
Enter Row,Digite a Linha
Enter Verification Code,Digite o Código de Verificação
Enter campaign name if the source of lead is campaign.,Digite o nome da campanha se a origem do Prospecto foi uma campanha.
"Enter default value fields (keys) and values. If you add multiple values for a field, the first one will be picked. These defaults are also used to set ""match"" permission rules. To see list of fields, go to <a href=""#Form/Customize Form/Customize Form"">Customize Form</a>.","Digite campos de valor padrão (chaves) e valores. Se você adicionar vários valores para um campo, o primeiro vai ser escolhido. Esses padrões são usados também para definir regras de permissão de &quot;combinação&quot;. Para ver a lista de campos, vá para <a href=""#Form/Customize Form/Customize Form"">Personalizar formulário</a> ."
Enter department to which this Contact belongs,Entre com o departamento a que este contato pertence
Enter designation of this Contact,Digite a designação deste contato
"Enter email id separated by commas, invoice will be mailed automatically on particular date","Digite os endereços de e-mail separados por vírgulas, a fatura será enviada automaticamente na data determinada"
Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Digite itens e qtde. planejada para o qual você quer levantar ordens de produção ou fazer o download de matérias-primas para a análise.
Enter name of campaign if source of enquiry is campaign,Digite o nome da campanha se o motivo da consulta foi uma campanha.
"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Digite os parâmetros da URL estática aqui (por exemplo remetente=ERPNext, usuario=ERPNext, senha=1234, etc)"
Enter the company name under which Account Head will be created for this Supplier,Digite o nome da empresa sob a qual a Conta será criada para este fornecedor
Enter the date by which payments from customer is expected against this invoice.,Digite a data em que o pagamento do cliente é esperado para esta fatura.
Enter url parameter for message,Digite o parâmetro da url para mensagem
Enter url parameter for receiver nos,Digite o parâmetro da url para os números de receptores
Entries,Lançamentos
Entries are not allowed against this Fiscal Year if the year is closed.,Lançamentos não são permitidos contra este Ano Fiscal se o ano está fechado.
Error,Erro
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 estimado de Material
Event,Evento
Event Individuals,Indivíduos do Evento
Event Role,Função do Evento
Event Roles,Funções do Evento
Event Type,Tipo de Evento
Event User,Usuário do Evento
Everyone can read,Todo mundo pode ler
Example:,Exemplo:
Exchange Rate,Taxa de Câmbio
Excise Page Number,Número de página do imposto
Excise Voucher,Comprovante do imposto
Exemption Limit,Limite de isenção
Exhibition,Exposição
Existing Customer,Cliente existente
Exit,Sair
Exit Interview Details,Detalhes da Entrevista de saída
Expected,Esperado
Expected Delivery Date,Data de entrega prevista
Expected End Date,Data Final prevista
Expected Start Date,Data Inicial prevista
Expense Account,Conta de Despesas
Expense Account is mandatory,Conta de despesa é obrigatória
Expense Claim,Pedido de Reembolso de Despesas
Expense Claim Approved,Pedido de Reembolso de Despesas Aprovado
Expense Claim Approved Message,Mensagem de aprovação do Pedido de Reembolso de Despesas
Expense Claim Detail,Detalhe do Pedido de Reembolso de Despesas
Expense Claim Details,Detalhes do Pedido de Reembolso de Despesas
Expense Claim Rejected,Pedido de Reembolso de Despesas Rejeitado
Expense Claim Rejected Message,Mensagem de recusa do Pedido de Reembolso de Despesas
Expense Claim Type,Tipo de Pedido de Reembolso de Despesas
Expense Date,Data da despesa
Expense Details,Detalhes da despesa
Expense Head,Conta de despesas
Expense account is mandatory for item: ,Conta de despesa é obrigatória para o item:
Expense/Adjustment Account,Despesa / Acerto de Contas
Expenses Booked,Despesas agendadas
Expenses Included In Valuation,Despesas incluídos na avaliação
Expenses booked for the digest period,Despesas reservadas para o período digest
Expiry Date,Data de validade
Export,Exportar
Exports,Exportações
External,Externo
Extract Emails,Extrair e-mails
Extract Job Applicant from jobs email id e.g. jobs@example.com,"Extraia Candidado a Emprego do e-mail de empregos, por exemplo empregos@exemplo.com"
Extract Leads from sales email id e.g. sales@example.com,"Extraia Prospectos do e-mail de vendas, por exemplo vendas@exemplo.com"
FCFS Rate,Taxa FCFS
FIFO,PEPS
Facebook Share,Compartilhar Facebook
Failed: ,Falha:
Family Background,Antecedentes familiares
FavIcon,FavIcon
Fax,Fax
Features Setup,Configuração de características
Feed,Alimentar
Feed Type,Tipo de alimentação
Feedback,Comentários
Female,Feminino
Fetch lead which will be converted into customer.,Extrair prospecto que vai se tornar cliente.
Field Description,Descrição do Campo
Field Name,Nome do Campo
Field Type,Tipo de Campo
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Campo disponível na Guia de Remessa, Cotação, Nota Fiscal de Venda, Ordem de Venda"
"Field that represents the Workflow State of the transaction (if field is not present, a new hidden Custom Field will be created)","Campo que representa o Estado da transação do fluxo de trabalho (se o campo não estiver presente, um novo campo oculto personalizado será criado)"
Fieldname,Nome do Campo
Fields,Campos
"Fields separated by comma (,) will be included in the<br /><b>Search By</b> list of Search dialog box","Campos separados por vírgula (,) serão incluídos na lista <br /> <b>Pesquisa por</b> da caixa de diálogo Pesquisar"
File,Arquivo
File Data,Dados de arquivo
File Manager,Gerenciador de arquivos
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.,Preenchimento de informações adicionais sobre o Opportunity vai ajudar a analisar melhor seus dados.
Filing in Additional Information about the Purchase Receipt will help you analyze your data better.,Preenchimento de informações adicionais sobre o Recibo de compra vai ajudar a analisar melhor seus dados.
Filling in Additional Information about the Delivery Note will help you analyze your data better.,Preenchimento de informações adicionais sobre a Guia de Remessa irá ajudá-lo a analisar os seus dados melhor.
Filling in additional information about the Quotation will help you analyze your data better.,Preenchimento de informações adicionais sobre a cotação irá ajudá-lo a analisar os seus dados melhor.
Filling in additional information about the Sales Order will help you analyze your data better.,Preenchimento de informações adicionais sobre a Ordem de Venda vai ajudar a analisar melhor seus dados.
Filter,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 baseado no item
Final Confirmation Date,Data final de confirmação
Financial Analytics,Análise Financeira
Financial Statements,Demonstrações Financeiras
Financial Years for books of accounts,Exercícios para os livros-caixas
First Name,Nome
First Responded On,Primeira resposta em
Fiscal Year,Exercício fiscal
Fixed Asset Account,Conta de ativo fixo
Float,Float
Float Precision,Precisão flutuante
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.",A tabela a seguir mostrará valores se os itens são sub-contratados. Estes valores serão obtidos a partir do cadastro da &quot;Lista de Materiais&quot; de itens sub-contratados.
Font (Heading),Font (rubrica)
Font (Text),Fonte (texto)
Font Size (Text),Tamanho da fonte (texto)
Fonts,Fontes
Footer,Rodapé
Footer Items,Itens do Rodapé
For All Users,Para todos os usuários
For Company,Para a Empresa
For Employee,Para o Funcionário
For Employee Name,Para Nome do Funcionário
For Item ,Para o Item
"For Links, enter the DocType as rangeFor Select, enter list of Options separated by comma","Para Links, digite o DocType como rangeFor Select, entrar na lista de opções separadas por vírgula"
For Production,Para Produção
For Reference Only.,Apenas para referência.
For 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 Almoxarifado
"For comparative filters, start with","Para filtros comparativos, comece com"
"For e.g. 2012, 2012-13","Para por exemplo 2012, 2012-13"
For example if you cancel and amend 'INV004' it will become a new document 'INV004-1'. This helps you to keep track of each amendment.,"Por exemplo, se você cancelar e alterar &#39;INV004&#39; ele vai se tornar um novo documento &quot;INV004-1&#39;. Isso ajuda você a manter o controle de cada alteração."
For example: You want to restrict users to transactions marked with a certain property called 'Territory',Por exemplo: Você quer restringir os usuários a transações marcadas com uma certa propriedade chamado &#39;Território&#39;
For opening balance entry account can not be a PL account,Para a abertura de conta de entrada saldo não pode ser uma conta de PL
For 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 Notas Fiscais e Guias de Remessa"
Form,Forma
Format: hh:mm example for one hour expiry set as 01:00. Max expiry will be 72 hours. Default is 24 hours,Formato: hh: mm para um exemplo de validade definido como hora 01:00. Max termo será de 72 horas. Padrão é de 24 horas
Forum,Fórum
Fraction,Fração
Fraction Units,Unidades fracionadas
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 data inicial deve ser anterior a data final
From Delivery Note,De Nota de Entrega
From Employee,De Empregado
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,Lançamento 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,Gráfico de Gantt
Gantt chart of all tasks.,Gráfico de Gantt de todas as tarefas.
Gender,Sexo
General,Geral
General Ledger,Razão Geral
Generate Description HTML,Gerar Descrição HTML
Generate Material Requests (MRP) and Production Orders.,Gerar Pedidos de Materiais (MRP) e ordens de produção.
Generate Salary Slips,Gerar folhas de pagamento
Generate Schedule,Gerar Agenda
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Gerar guias de remessa de pacotes a serem entregues. Usado para notificar o número do pacote, o conteúdo do pacote e seu peso."
Generates HTML to include selected image in the description,Gera HTML para incluir a imagem selecionada na descrição
Georgia,Geórgia
Get,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 Valor da Última Compra
Get Latest Updates,Receba as últimas atualizações
Get Non Reconciled Entries,Obter lançamentos não Reconciliados
Get Outstanding Invoices,Obter faturas pendentes
Get Purchase Receipt,Obter Recibo de compra
Get Sales Orders,Obter Ordens de Venda
Get Specification Details,Obter detalhes da Especificação
Get Stock and Rate,Obter Estoque e Valor
Get Template,Obter Modelo
Get Terms and Conditions,Obter os Termos e Condições
Get Weekly Off Dates,Obter datas de descanso semanal
Get a list of errors encountered by the Scheduler,Obter uma lista de erros encontrados pelo Scheduler
"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Obter valorização e estoque disponível no almoxarifado de origem/destino na data e hora de postagem mencionada. Se for item serializado, pressione este botão depois de entrar os nº de série."
Give additional details about the indent.,Dê mais detalhes sobre o travessão.
Global Defaults,Padrões globais
Go back to home,Volte para Início
Go to Setup > <a href='#user-properties'>User Properties</a> to set \			'territory' for diffent Users.,Vá para Configuração&gt; <a href='#user-properties'>Propriedades do usuário</a> para definir \ &#39;território&#39; para usuários diffent.
Goal,Meta
Goals,Metas
Goods received from Suppliers.,Mercadorias recebidas de fornecedores.
Google Analytics ID,ID do Google Analytics
Google 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 em atraso + Valor de cobrança - Dedução Total
Gross Profit,Lucro bruto
Gross Profit (%),Lucro Bruto (%)
Gross Weight,Peso bruto
Gross Weight UOM,UDM do Peso Bruto
Group,Grupo
Group or Ledger,Grupo ou Razão
Groups,Grupos
HR,RH
HTML,HTML
HTML / Banner that will show on the top of product list.,HTML / Faixa que vai ser mostrada no topo da lista de produtos.
"HTML print formats for quotes, invoices etc","Formatos de impressão em HTML para cotações, notas fiscais, etc"
Half Day,Meio Dia
Half Yearly,Semestral
Half-yearly,Semestral
Has Batch No,Tem nº de Lote
Has Child Node,Tem nó filho
Has Serial No,Tem nº de Série
Header,Cabeçalho
Heading,Título
Heading Text As,Como o texto do título
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Contas (ou grupos) contra a qual os lançamentos de contabilidade são feitos e os saldos são mantidos.
Health Concerns,Preocupações com a Saúde
Health Details,Detalhes sobre a Saúde
Held On,Realizada em
Help,Ajudar
Help HTML,Ajuda HTML
"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 de Fabricação máxima permitida"
"Here you can maintain family details like name and occupation of parent, spouse and children","Aqui você pode manter detalhes familiares como o nome e ocupação do cônjuge, pai e filhos"
"Here you can maintain height, weight, allergies, medical concerns etc","Aqui você pode manter a altura, peso, alergias, preocupações médica, etc"
Hey there! You need to put at least one item in \				the item table.,Hey there! Você precisa colocar pelo menos um item em \ tabela do item.
Hey! 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 Copia
Hide Currency Symbol,Ocultar Símbolo de Moeda
Hide Email,Ocultar E-mail
Hide Heading,Ocultar Título
Hide Print,Ocultar Impressão
Hide Toolbar,Ocultar barra de ferramentas
High,Alto
Highlight,Realçar
History,História
History In Company,Histórico na Empresa
Hold,Segurar
Holiday,Feriado
Holiday List,Lista de feriado
Holiday List Name,Nome da lista de feriados
Holidays,Feriados
Home,Início
Home Page,Página Inicial
Home Page is Products,Página Inicial é Produtos
Home Pages,Páginas Iniciais
Host,Host
"Host, Email and Password required if emails are to be pulled","Host, E-mail e Senha são necessários se desejar obter e-mails"
Hour Rate,Valor por hora
Hour Rate Consumable,Valor por hora de Consumíveis
Hour Rate Electricity,Valor por hora de Eletricidade
Hour Rate Labour,Valor por hora de mão-de-obra
Hour Rate Rent,Valor por hora de Aluguel
Hours,Horas
How frequently?,Com que frequência?
"How should this currency be formatted? If not set, will use system defaults","Como essa moeda deve ser formatada? Se não for definido, serão usados os padrões do sistema"
How to upload,Como fazer o carregamento
Hrvatski,Hrvatski
Hurray! The day(s) on which you are applying for leave \					coincide with holiday(s). You need not apply for leave.,Viva! O dia (s) em que você está aplicando para deixar \ coincidir com feriado (s). Você não precisa pedir licença.
I,Eu
ID (name) of the entity whose property is to be set,ID (nome) da entidade cuja propriedade é para ser definida
IDT,IDT
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,O ícone aparecerá no botão
Id of the profile will be the email.,O ID do perfil será o e-mail.
Identification of the package for the delivery (for print),Identificação do pacote para a Entrega (para impressão)
If Income or Expense,Se a renda ou Despesa
If Monthly Budget Exceeded,Se o orçamento mensal for excedido
"If Sale BOM is defined, the actual BOM of the Pack is displayed as table.Available in Delivery Note and Sales Order","Se BOM venda é definido, o BOM real do pacote é exibido como table.Available na nota de entrega e Ordem de Vendas"
"If Supplier Part Number exists for given Item, it gets stored here","Se Número da Peça do Fornecedor existir para um determinado item, ele fica armazenado aqui"
If Yearly Budget Exceeded,Se orçamento anual for excedido
"If a User does not have access at Level 0, then higher levels are meaningless","Se um usuário não tem acesso nível 0, então os níveis mais altos são irrelevantes"
"If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.","Se marcado, os itens da LDM para a Sub-Montagem serão considerados para obter matérias-primas. Caso contrário, todos os itens da sub-montagem vão ser tratados como matéria-prima."
"If checked, all other workflows become inactive.","Se marcada, todos os outros fluxos de trabalho tornam-se inativos."
"If checked, 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 marcado, a página inicial do site será o Grupo de Itens padrão."
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Se marcado, o valor do imposto será considerado como já incluído na Impressão de Taxa / Impressão do Valor"
"If disable, 'Rounded Total' field will not be visible in any transaction","Se desativar, &#39;Arredondado Total&#39; campo não será visível em qualquer transação"
"If 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á ignorada (anexar primeiro)"
If more than one package of the same type (for print),Se mais do que uma embalagem do mesmo tipo (para impressão)
If non standard port (e.g. 587),"Se não for a porta padrão (por exemplo, 587)"
If not applicable please enter: NA,Se não for aplicável digite: NA
"If not checked, the list will have to be added to each Department where it has to be applied.","Se não for controlada, a lista deverá ser adicionado a cada departamento onde tem de ser aplicado."
"If not, create a","Se não, crie um(a)"
"If set, data entry is only allowed for specified users. Else, entry is allowed for all users with requisite permissions.","Se definido, a entrada de dados só é permitida para usuários especificados. Outra, a entrada é permitida para todos os usuários com permissões necessárias."
"If specified, send the newsletter using this email address","Se especificado, enviar a newsletter usando esse endereço de e-mail"
"If the 'territory' Link Field exists, it will give you an option to select it","Se o campo com Link &#39;território&#39; existe, ele vai te dar uma opção para selecioná-lo"
"If the account is frozen, entries are allowed for the ""Account Manager"" only.","Se a conta estiver congelada, os lançamentos são permitidos apenas para o &quot;Gerente da Conta&quot;."
"If this Account represents a Customer, Supplier or Employee, set it here.","Se essa conta representa um cliente, fornecedor ou funcionário, estabeleça aqui."
If you follow Quality Inspection<br>Enables item QA Required and QA No in Purchase Receipt,Se você seguir Inspeção de Qualidade <br> Permite Nenhum item obrigatório e QA QA no Recibo de compra
If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity,Se você tiver Equipe de Vendas e Parceiros de Venda (Parceiros de Canal) eles podem ser marcadas e manter suas contribuições na atividade de vendas
"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Se você criou um modelo padrão no cadastro de Impostos de Compra e Encargos, selecione um e clique no botão abaixo."
"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Se você criou um modelo padrão no cadastro de Impostos de Vendas e Encargos, selecione um e clique no botão abaixo."
"If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page","Se você formatos longos de impressão, esse recurso pode ser usado para dividir a página a ser impressa em várias páginas com todos os cabeçalhos e rodapés em cada página"
If you involve in manufacturing activity<br>Enables item <b>Is Manufactured</b>,Se você envolver na atividade industrial <br> Permite que o item <b>é fabricado</b>
Ignore,Ignorar
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
Import data from spreadsheet (csv) files,Importar dados de planilhas (csv)
Important dates and commitments in your project life cycle,Datas importantes e compromissos no ciclo de vida do seu projeto
Imports,Importações
In Dialog,Em diálogo
In Filter,Em Filtro
In Hours,Em Horas
In List View,Na exibição de lista
In Process,Em Processo
In Report Filter,No Filtro do Relatório
In Store,Na loja
In Words,Por extenso
In Words (Company Currency),In Words (Moeda Company)
In Words (Export) will be visible once you save the Delivery Note.,Por extenso (Exportação) será visível quando você salvar a Guia de Remessa.
In Words will be visible once you save the Delivery Note.,Por extenso será visível quando você salvar a Guia de Remessa.
In Words will be visible once you save the Purchase Invoice.,Por extenso será visível quando você salvar a Nota Fiscal de Compra.
In Words will be visible once you save the Purchase Order.,Por extenso será visível quando você salvar a Ordem de Compra.
In Words will be visible once you save the Purchase Receipt.,Por extenso será visível quando você salvar o recibo de compra.
In Words will be visible once you save the Quotation.,Por extenso será visível quando você salvar a cotação.
In Words will be visible once you save the Sales Invoice.,Por extenso será visível quando você salvar a Nota Fiscal de Venda.
In Words will be visible once you save the Sales Order.,Por extenso será visível quando você salvar a Ordem de Venda.
In response to,Em resposta ao(s)
"In the Permission Manager, click on the button in the 'Condition' column for the Role you want to restrict.","No Gerenciador de Permissão, clique no botão na coluna &#39;Condição&#39; para a função que deseja restringir."
Incentives,Incentivos
Incharge Name,Nome do Responsável
Income / Expense,Receitas / Despesas
Income Account,Conta de Renda
Income Booked,Renda Reservado
Income Year to Date,Ano de rendimento até a Data
Income booked for the digest period,Renda reservado para o período digest
Incoming,Entrada
Incoming / 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 desta entrega
Individual,Individual
Individuals,Indivíduos
Industry,Indústria
Industry Type,Tipo de indústria
Info,Informações
Insert After,Inserir Após
Insert Code,Inserir Código
Insert Row,Inserir Linha
Insert Style,Inserir Estilo
Inspected By,Inspecionado por
Inspection Criteria,Critérios de Inspeção
Inspection Required,Inspeção Obrigatória
Inspection Type,Tipo de Inspeção
Installation Date,Data de Instalação
Installation Note,Nota de Instalação
Installation Note Item,Item da Nota de Instalação
Installation Status,Estado da Instalação
Installation Time,O tempo de Instalação
Installation record for a Serial No.,Registro de instalação de um nº de série
Installed Qty,Quantidade Instalada
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 nota fiscal
Invoice Details,Detalhes da nota fiscal
Invoice No,Nota Fiscal nº
Invoice Period From Date,Período Inicial de Fatura
Invoice Period To Date,Período Final de Fatura
Is Active,É Ativo
Is Advance,É antecipado
Is Asset Item,É item de ativo
Is Cancelled,É cancelado
Is Carry Forward,É encaminhado
Is Child Table,É tabela filho
Is Default,É padrão
Is Encash,É cobrança
Is LWP,É LWP
Is Mandatory Field,É campo obrigatório
Is Opening,É abertura
Is Opening Entry,Está abrindo Entry
Is PL Account,É Conta PL
Is POS,É PDV
Is Primary Contact,É o contato principal
Is Purchase Item,É item de compra
Is Sales Item,É item de venda
Is Service Item,É item de serviço
Is Single,É único
Is Standard,É Padrão
Is Stock Item,É item de estoque
Is Sub Contracted Item,É item subcontratado
Is Subcontracted,É subcontratada
Is Submittable,É enviável
Is it a Custom DocType created by you?,É um DocType personalizado criado por você?
Is this Tax included in Basic Rate?,Este imposto está incluído no Valor Base?
Issue,Questão
Issue Date,Data da Questão
Issue Details,Detalhes da Questão
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 antecipado
Item Barcode,Código de barras do Item
Item Batch Nos,Nº do Lote do Item
Item Classification,Classificação do Item
Item Code,Código do Item
Item 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 do Cliente do Item
Item Description,Descrição do Item
Item Desription,Descrição do Item
Item Details,Detalhes do Item
Item Group,Grupo de Itens
Item Group Name,Nome do Grupo de Itens
Item Groups in Details,Detalhes dos Grupos de Itens
Item Image (if not slideshow),Imagem do Item (se não for slideshow)
Item Name,Nome do Item
Item Naming By,Item de nomeação
Item Price,Preço do Item
Item Prices,Preços de itens
Item Quality Inspection Parameter,Parâmetro de Inspeção de Qualidade do Item
Item Reorder,Item Reordenar
Item Serial No,Nº de série do Item
Item Serial Nos,Nº de série de Itens
Item Supplier,Fornecedor do Item
Item Supplier Details,Detalhes do Fornecedor do Item
Item Tax,Imposto do Item
Item Tax Amount,Valor do Imposto do Item
Item Tax Rate,Taxa de Imposto do Item
Item Tax1,Item Tax1
Item To Manufacture,Item Para Fabricação
Item UOM,UDM do Item
Item Website Specification,Especificação do Site do Item
Item Website Specifications,Especificações do Site do Item
Item Wise Tax Detail ,Detalhe Imposto Sábio item
Item classification.,Classificação do Item.
Item to be manufactured or repacked,Item a ser fabricado ou reembalado
Item will be saved by this name in the data base.,O Item será salvo com este nome na base de dados.
"Item, Warranty, AMC (Annual Maintenance Contract) details will be automatically fetched when Serial Number is selected.","Detalhes do Item, Garantia, CAM (Contrato Anual de Manutenção) serão carregados automaticamente quando o número de série for selecionado."
Item-Wise Price List,Lista de Preços relativa ao Item
Item-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 almoxarifados com base na quantidade projetada e pedido mínimo"
Items which do not exist in Item master can also be entered on customer's request,Itens que não existem no Cadastro de Itens também podem ser inseridos na requisição do cliente
Itemwise Discount,Desconto relativo ao Item
Itemwise Recommended Reorder Level,Itemwise Recomendado nível de reposição
JSON,JSON
JV,JV
Javascript,Javascript
Javascript to append to the head section of the page.,Javascript para acrescentar ao cabeçalho da página.
Job Applicant,Candidato a emprego
Job Opening,Vaga de emprego
Job Profile,Perfil da vaga
Job Title,Cargo
"Job profile, qualifications required etc.","Perfil da vaga, qualificações exigidas, etc"
Jobs Email Settings,Configurações do e-mail de empregos
Journal Entries,Lançamentos do livro Diário
Journal Entry,Lançamento do livro Diário
Journal 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,Comprovante do livro Diário
Journal Voucher Detail,Detalhe do Comprovante do livro Diário
Journal Voucher Detail No,Nº do Detalhe do Comprovante do livro Diário
KRA,KRA
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Mantenha o controle 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,Mantenha o controle de todas as comunicações
Keep a track of communication related to this enquiry which will help for future reference.,"Mantenha o controle de comunicações relacionadas a esta consulta, o que irá ajudar para futuras referências."
Key,Chave
Key Performance Area,Área Chave de Performance
Key Responsibility Area,Área Chave de Responsabilidade
LEAD,LEAD
LEAD/10-11/,LEAD/10-11 /
LEAD/MUMBAI/,LEAD / MUMBAI /
LR Date,Data LR
LR No,Nº LR
Label,Etiqueta
Label Help,Ajuda sobre etiquetas
Lacs,Lacs
Landed Cost Item,Custo de desembarque do Item
Landed Cost Items,Custo de desembarque dos Itens
Landed Cost Purchase Receipt,Recibo de compra do custo de desembarque
Landed Cost Purchase Receipts,Recibos de compra do custo de desembarque
Landed Cost Wizard,Assistente de Custo de Desembarque
Landing Page,Página de chegada
Language,Idioma
Language preference for user interface (only if available).,Idioma de preferência para interface de usuário (se disponível).
Last Contact Date,Data do último contato
Last IP,Último IP
Last Login,Último Login
Last Name,Sobrenome
Last Purchase Rate,Valor da última compra
Lato,Lato
Lead,Prospecto
Lead Details,Detalhes do Prospecto
Lead Lost,Prospecto Perdido
Lead Name,Nome do Prospecto
Lead Owner,Proprietário do Prospecto
Lead Ref,Ref. do Prospecto
Lead Source,Chumbo Fonte
Lead Status,Chumbo Estado
Lead Time Date,Prazo de entrega
Lead Time Days,Prazo de entrega
Lead Time days is number of days by which this item is expected in your warehouse. This days is fetched in Material Request when you select this item.,Levar dias Tempo é o número de dias em que este item é esperado no seu armazém. Este dia é buscada em solicitar material ao selecionar este item.
Lead Type,Tipo de Prospecto
Leave Allocation,Alocação de Licenças
Leave Allocation Tool,Ferramenta de Alocação de Licenças
Leave Application,Solicitação de Licenças
Leave Approver,Aprovador de Licenças
Leave Approver can be one of,Adicione Approver pode ser um dos
Leave Approvers,Deixe aprovadores
Leave Balance Before Application,Saldo de Licenças antes da solicitação
Leave Block List,Deixe Lista de Bloqueios
Leave Block List Allow,Deixe Lista de Bloqueios Permitir
Leave Block List Allowed,Deixe Lista de Bloqueios admitidos
Leave Block List Date,Deixe Data Lista de Bloqueios
Leave Block List Dates,Deixe as datas Lista de Bloqueios
Leave Block List Name,Deixe o nome Lista de Bloqueios
Leave Blocked,Deixe Bloqueados
Leave Control Panel,Painel de Controle de Licenças
Leave Encashed?,Licenças cobradas?
Leave Encashment Amount,Valor das Licenças cobradas
Leave Setup,Configurar Licenças
Leave Type,Tipo de Licenças
Leave Type Name,Nome do Tipo de Licença
Leave Without Pay,Licença sem pagamento
Leave allocations.,Alocações de Licenças.
Leave blank if considered for all branches,Deixe em branco se considerado para todos os ramos
Leave blank if considered for all departments,Deixe em branco se considerado para todos os departamentos
Leave blank if considered for all designations,Deixe em branco se considerado para todas as designações
Leave blank if considered for all employee types,Deixe em branco se considerado para todos os tipos de empregados
Leave blank if considered for all grades,Deixe em branco se considerado para todos os graus
Leave by,Deixe por
"Leave can be approved by users with Role, ""Leave Approver""",A licença pode ser aprovado por usuários com função de &quot;Aprovador de Licenças&quot;
Ledger,Razão
Left,Esquerda
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,"Pessoa Jurídica / Subsidiária, com um plano de Contas separado, pertencentes à Organização."
Letter Head,Timbrado
Letter Head Image,Imagem do timbrado
Letter Head Name,Nome do timbrado
Letter heads for print,Timbrado para impressão
Level,Nível
"Level 0 is for document level permissions, higher levels for field level permissions.","Nível 0 é para permissões em nível de documento, os níveis mais elevados são permissões em nível de campo."
Lft,Esq.
Link,Link
Link to other pages in the side bar and next section,Link para outras páginas na barra lateral e seção seguinte
Linked In Share,Linked In Compartilhar
Linked With,Ligado com
List,Lista
List items that form the package.,Lista de itens que compõem o pacote.
List of companies (not customers / suppliers),Lista das empresas (não clientes / fornecedores)
List of holidays.,Lista de feriados.
List of patches executed,Lista de patches executados
List of records in which this document is linked,Lista de registros a que este documento está ligado
List 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.,Listar este item em vários grupos no site.
"List, delete uploaded files.","Listar, excluir arquivos enviados."
Live Chat,Chat ao vivo
Load Print View on opening of an existing form,Carregar a visualização de impressão na abertura de um formulário existente
Loading,Carregando
Loading Report,Relatório de carregamento
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,Log de erros do agendador
Login After,Login após
Login Before,Login antes
Login Id,ID de Login
Logo,Logotipo
Logout,Sair
Long Text,Texto Longo
Lost Reason,Razão da perda
Low,Baixo
Lower Income,Baixa Renda
Lucida Grande,Lucida Grande
MIS Control,Controle MIS
MREQ-,Mreq-
MTN Details,Detalhes da MTN
Mail Footer,Rodapé do E-mail
Mail Password,Senha do E-mail
Mail Port,Porta do E-mail
Mail Server,Servidor de E-mail
Main Reports,Relatórios principais
Main Section,Seção Principal
Maintain same rate throughout purchase cycle,Manter o mesmo valor através de todo o ciclo de compra
Maintenance,Manutenção
Maintenance Date,Data de manutenção
Maintenance Details,Detalhes da manutenção
Maintenance Schedule,Programação da Manutenção
Maintenance Schedule Detail,Detalhe da Programação da Manutenção
Maintenance Schedule Item,Item da Programação da Manutenção
Maintenance Schedules,Horários de Manutenção
Maintenance Status,Estado da manutenção
Maintenance Time,Tempo da manutenção
Maintenance Type,Tipo de manutenção
Maintenance Visit,Visita de manutenção
Maintenance Visit Purpose,Finalidade da visita de manutenção
Major/Optional Subjects,Assuntos Principais / Opcionais
Make Bank Voucher,Fazer Comprovante Bancário
Make Difference Entry,Fazer Lançamento da Diferença
Make Time Log Batch,Faça a hora Batch Log
Make a new,Fazer um novo
Make sure that the transactions you want to restrict have a Link field 'territory' that maps to a 'Territory' master.,Certifique-se de que as operações que pretende restringir tenham um campo de ligação &quot;Território&quot; que mapeia para um cadastro de &quot;Território&quot;.
Male,Masculino
Manage Numbering Series,Gerenciar numeração Series
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 Venda
Manufacture/Repack,Fabricar / Reembalar
Manufactured Qty,Qtde. fabricada
Manufactured quantity will be updated in this warehouse,Quantidade fabricada será atualizada neste almoxarifado
Manufacturer,Fabricante
Manufacturer Part Number,Número de peça do fabricante
Manufacturing,Fabricação
Manufacturing 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,Cadastro
Master Name,Nome do Cadastro
Master Type,Tipo de Cadastro
Masters,Cadastros
Match,Combinar
Match non-linked Invoices and Payments.,Combinar Faturas e Pagamentos não relacionados.
Material Issue,Emissão de material
Material Receipt,Recebimento de material
Material Request,Pedido de material
Material Request Date,Data de Solicitação de material
Material Request Detail No,Detalhe materiais Pedido Não
Material Request For Warehouse,Pedido de material para Armazém
Material Request Item,Item de solicitação de material
Material Request Items,Pedido de itens de material
Material Request No,Pedido de material no
Material Request Type,Tipo de solicitação de material
Material Request used to make this Stock Entry,Pedido de material usado para fazer essa entrada de material
Material Transfer,Transferência de material
Materials,Materiais
Materials Required (Exploded),Materiais necessários (explodida)
Materials Requirement Planning (MRP),Planejamento dos Recursos de Manufatura (PRM)
Max 500 rows only.,Max 500 apenas as linhas.
Max Attachments,Anexos Max.
Max Days Leave Allowed,Período máximo de Licença
Max Discount (%),Desconto Máx. (%)
"Meaning of Submit, Cancel, Amend","Significado do Enviar, 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,Unir
Merge Into,Fundem-se
Merge Warehouses,Unir Almoxarifados
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 da mensagem
Message greater than 160 character will be splitted into multiple mesage,Mensagens maiores do que 160 caracteres vão ser divididos em múltiplas mensagens
Messages,Mensagens
Method,Método
Middle Income,Rendimento Médio
Middle Name (Optional),Nome do Meio (Opcional)
Milestone,Marco
Milestone Date,Data do Marco
Milestones,Marcos
Milestones will be added as Events in the Calendar,Marcos serão adicionados como eventos no calendário
Millions,Milhões
Min Order Qty,Pedido Mínimo
Minimum Order Qty,Pedido Mínimo
Misc,Diversos
Misc Details,Detalhes Diversos
Miscellaneous,Diversos
Miscelleneous,Diversos
Mobile No,Telefone Celular
Mobile No.,Telefone Celular.
Mode of Payment,Forma de Pagamento
Modern,Moderno
Modified Amount,Quantidade modificada
Modified by,Modificado(a) por
Module,Módulo
Module Def,Módulo Def
Module Name,Nome do Módulo
Modules,Módulos
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 salarial mensal.
Monthly salary template.,Modelo de declaração salarial mensal.
More,Mais
More Details,Mais detalhes
More Info,Mais informações
More content for the bottom of the page.,Mais conteúdo para a parte de baixo da página.
Moving Average,Média móvel
Moving Average Rate,Taxa da Média Móvel
Mr,Sr.
Ms,Sra.
Multiple Item Prices,Preços de múltiplos itens
Mupltiple Item prices.,Preços de múltiplos itens.
Must have report permission to access this report.,Deve ter permissão para acessar relatório deste relatório.
Must specify a Query to run,Deve especificar uma consulta para executar
My 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 consta no cadastro de Parceiros de Vendas
Name is required,Nome é obrigatório
Name of organization from where lead has come,Nome da Organização de onde veio o Prospecto
Name of person or organization that this address belongs to.,Nome da pessoa ou organização a que este endereço pertence.
Name of the Budget Distribution,Nome da Distribuição de Orçamento
Name of the entity who has requested for the Material Request,Nome da entidade que solicitou para a solicitação de materiais
Naming,Nomeando
Naming Series,Séries nomeadas
Naming Series mandatory,Nomeando obrigatório Series
Negative balance is not allowed for account ,Saldo negativo não é permitido por conta
Net Pay,Pagamento Líquido
Net Pay (in words) will be visible once you save the Salary Slip.,Pagamento líquido (por extenso) será visível quando você salvar a folha de pagamento.
Net Total,Total Líquido
Net Total (Company Currency),Total Líquido (Moeda Company)
Net Weight,Peso Líquido
Net Weight UOM,UDM do Peso Líquido
Net Weight of each Item,Peso líquido de cada item
Net pay 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,Nova LDM
New Communications,Nova Comunicação
New Delivery Notes,Novas Guias de Remessa
New Enquiries,Novas Consultas
New Leads,Novos Prospectos
New Leave Application,Aplicação deixar Nova
New Leaves Allocated,Novas Licenças alocadas
New Leaves Allocated (In Days),Novas Licenças alocadas (em dias)
New Material Requests,Novos Pedidos Materiais
New Password,Nova senha
New Projects,Novos Projetos
New Purchase Orders,Novas Ordens de Compra
New Purchase Receipts,Novos Recibos de Compra
New Quotations,Novas Cotações
New Record,Novo Registro
New Sales Orders,Novos Pedidos de Venda
New Stock Entries,Novos lançamentos de estoque
New Stock UOM,Nova UDM de estoque
New Supplier Quotations,Novas cotações de fornecedores
New Support Tickets,Novos pedidos de suporte
New Workplace,Novo local de trabalho
New value to be set,Novo valor a ser definido
Newsletter,Boletim informativo
Newsletter Content,Conteúdo do boletim
Newsletter Status,Estado do boletim
"Newsletters to contacts, leads.","Newsletters para contatos, leva."
Next Communcation On,Próximo Comunicação em
Next Contact By,Próximo Contato Por
Next Contact Date,Data do próximo Contato
Next Date,Próxima data
Next State,Próximo Estado
Next actions,Próximas ações
Next email will be sent on:,Próximo e-mail será enviado em:
No,Não
"No 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.,"Não Relatório Loaded. Por favor, use-consulta do relatório / [Nome do relatório] 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.,Propriedades do Usuário não encontradas.
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,Nº de SMS pedidos
No of Sent SMS,Nº de SMS enviados
No of Visits,Nº de Visitas
No one,Ninguém
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.,Sem permissão suficiente para ver os links.
Not in Use,Não está em uso
Not interested,Não está interessado
Not linked,Não ligados
Note,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-mails não serão enviado para usuários desabilitados
"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: Outras regras de permissão também podem se aplicar
Note: You Can Manage Multiple Address or Contacts via Addresses & Contacts,Nota: você pode gerenciar Múltiplos Endereços ou Contatos através de Endereços & Contatos
Note: maximum attachment size = 1mb,Nota: tamanho máximo do anexo = 1MB
Notes,Notas
Nothing to show,Nada para mostrar
Notice - Number of Days,Aviso - número de dias
Notification Control,Controle de Notificação
Notification Email Address,Endereço de email de notificação
Notify By Email,Notificar por e-mail
Notify by Email on 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,No Total Líquido
On Previous Row Amount,No Valor na linha anterior
On Previous Row Total,No Total na linha anterior
"Once you have set this, the users will only be able access documents with that property.","Depois de ter definido isso, os usuários só poderão acessar documentos com esta propriedade."
Only Administrator allowed to create Query / Script Reports,Administrador só é permitido para criar Consulta / Script Relatórios
Only Administrator can save a standard report. Please rename and save.,"Somente o administrador pode salvar um relatório padrão. Por favor, renomear e salvar."
Only Allow Edit For,Somente permite edição para
Only 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,Somente o Gerente do Sistema pode criar / editar relatórios
Only leaf nodes are allowed in transaction,Somente nós-folha são permitidos em transações
Open,Abrir
Open Sans,Open Sans
Open Tickets,Tickets abertos
Opening Date,Data de abertura
Opening Entry,Abertura Entry
Opening Time,Horário de abertura
Opening for a Job.,Vaga de emprego.
Operating Cost,Custo de Operação
Operation Description,Descrição da operação
Operation No,Nº da operação
Operation Time (mins),Tempo de Operação (minutos)
Operations,Operações
Opportunity,Oportunidade
Opportunity Date,Data da oportunidade
Opportunity From,Oportunidade De
Opportunity Item,Item da oportunidade
Opportunity Items,Itens da oportunidade
Opportunity Lost,Oportunidade perdida
Opportunity Type,Tipo de Oportunidade
Options,Opções
Options Help,Ajuda sobre Opções
Order Confirmed,Ordem Confirmada
Order Lost,Ordem Perdida
Order Type,Tipo de Ordem
Ordered Items To Be Billed,Itens encomendados a serem faturados
Ordered Items To Be Delivered,Itens encomendados a serem entregues
Ordered Quantity,Quantidade encomendada
Orders released for production.,Ordens liberadas para produção.
Organization,Organização
Organization Profile,Perfil da Organização
Original Message,Mensagem original
Other,Outro
Other Details,Outros detalhes
Out,Fora
Out going mail server and support ticket mailbox,Servidor de e-mail de saída e caixa de correio de tickets de suporte
Out of AMC,Fora do CAM
Out of Warranty,Fora de Garantia
Outgoing,De Saída
Outgoing Mail Server,Servidor de e-mails de saída
Outgoing Mails,E-mails de saída
Outstanding Amount,Quantia em aberto
Outstanding for Voucher ,Excelente para Vale
Over Heads,Despesas gerais
Overhead,Despesas gerais
Overlapping Conditions found between,Condições sobreposição encontrada entre
Owned,Pertencente
PAN Number,Número PAN
PF No.,Nº PF.
PF Number,Número PF
PI/2011/,PI/2011 /
PIN,PIN
PO,PO
POP3 Mail Server,Servidor de e-mail POP3
POP3 Mail Server (e.g. pop.gmail.com),"Servidor de e-mail POP3 (por exemplo, pop.gmail.com)"
POP3 Mail Settings,Configurações de e-mail pop3
POP3 mail server (e.g. pop.gmail.com),"Servidor de e-mail POP3 (por exemplo, pop.gmail.com)"
POP3 server e.g. (pop.gmail.com),"Servidor de e-mail POP3 (por exemplo, pop.gmail.com)"
POS Setting,Configuração de PDV
PR Detail,Detalhe PR
PRO,PRO
PS,PS
Package Item Details,Detalhes do Item do Pacote
Package Items,Itens do pacote
Package Weight Details,Detalhes do peso do pacote
Packing Details,Detalhes da embalagem
Packing Detials,Detalhes da embalagem
Packing List,Lista de embalagem
Packing Slip,Guia de Remessa
Packing Slip Item,Item da Guia de Remessa
Packing Slip Items,Itens da Guia de Remessa
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,Função da página
Page Text,Página de texto
Page content,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 do Detalhe pai
Parent Item,Item Pai
Parent Item Group,Grupo de item pai
Parent Label,Etiqueta pai
Parent Sales Person,Vendedor pai
Parent Territory,Território pai
Parent is required.,É necessário Parent.
Parenttype,Parenttype
Partially Completed,Parcialmente concluída
Participants,Participantes
Partly Billed,Parcialmente faturado
Partly Delivered,Parcialmente entregue
Partner,Parceiro
Partner Target Detail,Detalhe da Meta do 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 de Patches
Pay To / Recd From,Pagar Para/ Recebido De
Payables,Contas a pagar
Payables Group,Grupo de contas a pagar
Payment Collection With Ageing,Cobrança Com o Envelhecimento
Payment Entries,Lançamentos de pagamento
Payment Entry has been modified after you pulled it. 			Please pull it again.,"Entrada de pagamento foi modificada depois que você tirou isso. Por favor, puxe-o novamente."
Payment Made With Ageing,O pagamento feito com o Envelhecimento
Payment Reconciliation,Reconciliação de pagamento
Payment Terms,Condições de Pagamento
Payment days,Dias de pagamento
Payment to Invoice Matching Tool,Ferramenta de Pagamento contra Fatura correspondente
Payment to Invoice Matching Tool Detail,Detalhe da Ferramenta de Pagamento contra Fatura correspondente
Payments,Pagamentos
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,Nível Permanente
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,Gerenciador de Permissão
Permission Rules,Regras de Permissão
Permissions,Permissões
Permissions Settings,Configurações de Permissões
Permissions are automatically translated to Standard Reports and Searches,As permissões são automaticamente traduzidos para Relatórios Padrão e Pesquisas
"Permissions are set on Roles and Document Types (called DocTypes) by restricting read, edit, make new, submit, cancel, amend and report rights.","As permissões são definidas em Funções e Tipos de Documentos (chamados DocTypes) restringindo direitos de leitura, edição, criação, envio, cancelamento e alteração."
Permissions at higher levels are 'Field Level' permissions. All Fields have a 'Permission Level' set against them and the rules defined at that permissions apply to the field. This is useful incase you want to hide or make certain field read-only.,Permissões em níveis mais elevados são permissões em &quot;Nível de Campo&quot;. Todos os campos têm um &#39;Nível de Permissão&quot; estabelecido contra eles e as regras definidas naquele Nível de Permissão se aplicam ao campo. Isto é útil no caso de você querer ocultar ou tornar um determinado campo em somente leitura.
"Permissions at level 0 are 'Document Level' permissions, i.e. they are primary for access to the document.","Permissões no nível 0 são permissões ao &#39;Nível de Documento&quot;, ou seja, são básicas para o acesso ao documento."
Permissions translate to Users based on what Role they are assigned,As Permissões passam aos usuários com base na função a que são atribuídos
Person,Pessoa
Person To Be Contacted,Pessoa a ser contatada
Personal,Pessoal
Personal Details,Detalhes pessoais
Personal Email,E-mail pessoal
Phone,Telefone
Phone No,Nº de telefone
Phone No.,Nº de telefone.
Pick Columns,Escolha as Colunas
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 a correta Abreviação ou Nome Curto pois ele será adicionado como sufixo a todas as Contas.
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 selecione Encaminhar se você também quer incluir o saldo de licenças do ano fiscal anterior neste 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 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,Configurações de Ponto-de-Venda
Post Graduate,Pós-Graduação
Post Topic,Postar Tópico
Postal,Postal
Posting Date,Data da Postagem
Posting Date Time cannot be before,Postando Data Hora não pode ser antes
Posting Time,Horário da Postagem
Posts,Posts
Potential Sales Deal,Negócio de Vendas em potencial
Potential opportunities for selling.,Oportunidades potenciais para a venda.
"Precision for Float fields (quantities, discounts, percentages etc) only for display. Floats will still be calculated up to 6 decimals.","Precisão para campos Float (quantidade, descontos, percentuais, etc) é apenas para exibição. Floats ainda serão calculado até 6 casas decimais."
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 Country,Lista de Preços País
Price List Currency,Moeda da Lista de Preços
Price List Currency Conversion Rate,Taxa de conversão da moeda da lista de preços
Price List Exchange Rate,Taxa de Câmbio da Lista de Preços
Price List Master,Cadastro de Lista de Preços
Price List Name,Nome da Lista de Preços
Price List Rate,Taxa de Lista de Preços
Price List Rate (Company Currency),Preço Taxa List (moeda da empresa)
Price Lists and Rates,Listas de Preços e Tarifas
Primary,Primário
Print Format,Formato de impressão
Print Format Style,Formato de impressão Estilo
Print Format Type,Tipo de impressão Formato
Print Heading,Cabeçalho de impressão
Print Hide,Ocultar impressão
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,Processa folha de pagamento
Produced Quantity,Quantidade produzida
Product Enquiry,Consulta de Produto
Production Order,Ordem de Produção
Production Plan Item,Item do plano de produção
Production Plan Items,Itens do plano de produção
Production Plan Sales Order,Ordem de Venda do Plano de Produção
Production Plan Sales Orders,Ordens de Venda do Plano de Produção
Production Planning (MRP),Planejamento de Produção (PRM)
Production Planning Tool,Ferramenta de Planejamento da Produção
"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Os produtos serão classificados por peso em buscas padrão. Maior o peso, mais alto o produto irá aparecer na lista."
Profile,Perfil
Profile 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,Custo do Projeto
Project Details,Detalhes do Projeto
Project Milestone,Marco do Projeto
Project Milestones,Marcos do Projeto
Project Name,Nome do Projeto
Project Start Date,Data de início do Projeto
Project Type,Tipo de Projeto
Project Value,Valor do Projeto
Project activity / task.,Atividade / tarefa do projeto.
Project master.,Cadastro de Projeto.
Project will get saved and will be searchable with project name given,O Projeto será salvo e poderá ser pesquisado através do nome dado
Project wise Stock Tracking,Projeto sábios Stock Rastreamento
Projected Qty,Qtde. Projetada
Projects,Projetos
Prompt email sending to customers and suppliers,E-mail Prompt envio a clientes e fornecedores
Prompt for Email on Submission of,Solicitar e-mail no envio da
Properties,Propriedades
Property,Propriedade
Property Setter,Setter propriedade
Property Setter overrides a standard DocType or Field property,Setter propriedade substitui uma propriedade DocType ou Campo padrão
Property Type,Tipo de propriedade
Provide email id registered in company,Fornecer Endereço de E-mail registrado na empresa
Public,Público
Published,Publicado
Published On,Publicado no
Pull Emails from the Inbox and attach them as Communication records (for known contacts).,Puxar e-mails da caixa de entrada e anexe-os como registros de comunicação (para contatos conhecidos).
Pull Payment Entries,Puxar os lançamentos de pagamento
Pull items from Sales Order mentioned in the above table.,Puxar itens da Ordem de Venda mencionada na tabela acima.
Pull sales orders (pending to deliver) based on the above criteria,Puxar as Ordens de Venda (pendentes de entrega) com base nos critérios acima
Purchase,Compras
Purchase Analytics,Análise de compras
Purchase Common,Compras comum
Purchase Date,Data da compra
Purchase Details,Detalhes da compra
Purchase Discounts,Descontos da compra
Purchase Document No,Nº do Documento de Compra
Purchase Document Type,Tipo do Documento de Compra
Purchase In Transit,Compre Em Trânsito
Purchase Invoice,Nota Fiscal de Compra
Purchase Invoice Advance,Antecipação da Nota Fiscal de Compra
Purchase Invoice Advances,Antecipações da Nota Fiscal de Compra
Purchase Invoice Item,Item da Nota Fiscal de Compra
Purchase Invoice Trends,Compra Tendências fatura
Purchase Order,Ordem de Compra
Purchase Order Date,Data da Ordem de Compra
Purchase Order Item,Item da Ordem de Compra
Purchase Order Item No,Nº do Item da Ordem de Compra
Purchase Order Item Supplied,Item da Ordem de Compra fornecido
Purchase Order Items,Itens da Ordem de Compra
Purchase Order Items Supplied,Itens da Ordem de Compra fornecidos
Purchase Order Items To Be Billed,Ordem de Compra itens a serem faturados
Purchase Order Items To Be Received,Comprar itens para ser recebido
Purchase Order Message,Mensagem da Ordem de Compra
Purchase Order Required,Ordem de Compra Obrigatória
Purchase Order Trends,Ordem de Compra Trends
Purchase Order sent by customer,Ordem de Compra enviada pelo cliente
Purchase Orders given to Suppliers.,Ordens de Compra dadas a fornecedores.
Purchase Receipt,Recibo de Compra
Purchase Receipt Item,Item do Recibo de Compra
Purchase Receipt Item Supplied,Item do Recibo de Compra Fornecido
Purchase Receipt Item Supplieds,Item do Recibo de Compra Fornecido
Purchase Receipt Items,Itens do Recibo de Compra
Purchase Receipt Message,Mensagem do Recibo de Compra
Purchase Receipt No,Nº do Recibo de Compra
Purchase Receipt Required,Recibo de Compra Obrigatório
Purchase Receipt Trends,Compra Trends Recibo
Purchase Register,Compra Registre
Purchase Return,Devolução de Compra
Purchase Returned,Compra Devolvida
Purchase Taxes and Charges,Impostos e Encargos sobre Compras
Purchase Taxes and Charges Master,Cadastro de Impostos e Encargos sobre Compras
Purpose,Finalidade
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,Qtde.
Qty Consumed Per Unit,Qtde. consumida por unidade
Qty To Manufacture,Qtde. Para Fabricação
Qty as per Stock UOM,Qtde. como por UDM de estoque
Qualification,Qualificação
Quality,Qualidade
Quality Inspection,Inspeção de Qualidade
Quality Inspection Parameters,Parâmetros da Inspeção de Qualidade
Quality Inspection Reading,Leitura da Inspeção de Qualidade
Quality Inspection Readings,Leituras da Inspeção de Qualidade
Quantity,Quantidade
Quantity Requested for Purchase,Quantidade Solicitada para Compra
Quantity already manufactured,Quantidade já fabricada
Quantity 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 a partir de determinadas quantidades de matéria-prima
Quantity should be equal to Manufacturing Quantity. ,Quantidade deve ser igual a quantidade Manufacturing.
Quarter,Trimestre
Quarterly,Trimestral
Query,Consulta
Query Options,Opções de Consulta
Query Report,Relatório da Consulta
Query must be a SELECT,Consulta deve ser um SELECT
Quick Help for Setting Permissions,Ajuda rápida para Configurar Permissões
Quick Help for User Properties,Ajuda rápida para Propriedades do Usuário
Quotation,Cotação
Quotation Date,Data da Cotação
Quotation Item,Item da Cotação
Quotation Items,Itens da Cotação
Quotation Lost Reason,Razão da perda da Cotação
Quotation Message,Mensagem da Cotação
Quotation Sent,Cotação Enviada
Quotation To,Cotação para
Quotation Trend,Cotação Tendência
Quotations received from Suppliers.,Citações recebidas de fornecedores.
Quotes to Leads or Customers.,Cotações para Prospectos 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,Levantar Ordem de Produção
Raised By,Levantadas por
Raised By (Email),Levantadas por (e-mail)
Random,Aleatório
Range,Alcance
Rate,Taxa
Rate ,Taxa
Rate (Company Currency),Rate (moeda da empresa)
Rate Of Materials Based On,Taxa de materiais com base em
Rate and Amount,Taxa e montante
Rate at which Customer Currency is converted to customer's base currency,Taxa na qual a moeda do cliente é convertida para a moeda base do cliente
Rate at which Price list currency is converted to company's base currency,Taxa na qual a moeda da lista de preços é convertida para a moeda base da empresa
Rate at which Price list currency is converted to customer's base currency,Taxa na qual a moeda da lista de preços é convertida para a moeda base do cliente
Rate at which customer's currency is converted to company's base currency,Taxa na qual a moeda do cliente é convertida para a moeda base da empresa
Rate at which supplier's currency is converted to company's base currency,Taxa na qual a moeda do fornecedor é convertida para a moeda base da empresa
Rate at which this tax is applied,Taxa em que este imposto é aplicado
Raw Material Item Code,Código de Item de Matérias-Primas
Raw Materials Supplied,Matérias-primas em actualização
Raw Materials Supplied Cost,Custo de fornecimento de Matérias-Primas
Re-Order Level,Nível para novo pedido
Re-Order Qty,Qtde. para novo pedido
Re-order,Re-vista
Re-order Level,Re fim-Level
Re-order Qty,Re-vista Qtde
Read,Ler
Read Only,Somente leitura
Reading 1,Leitura 1
Reading 10,Leitura 10
Reading 2,Leitura 2
Reading 3,Leitura 3
Reading 4,Leitura 4
Reading 5,Leitura 5
Reading 6,Leitura 6
Reading 7,Leitura 7
Reading 8,Leitura 8
Reading 9,Leitura 9
Reason,Motivo
Reason for Leaving,Motivo da saída
Reason for Resignation,Motivo para Demissão
Recd Quantity,Quantidade Recebida
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. recebida
Received and Accepted,Recebeu e aceitou
Receiver List,Lista de recebedores
Receiver Parameter,Parâmetro do recebedor
Recipient,Destinatá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,Nota Fiscal Recorrente
Recurring Type,Tipo de recorrência
Ref Code,Código de Ref.
Ref Date is Mandatory if Ref Number is specified,Ref data é obrigatória se Número Ref é especificada
Ref DocType,DocType de Ref.
Ref Name,Nome de Ref.
Ref Rate,Taxa de Ref.
Ref SQ,Ref SQ
Ref Type,Tipo de Ref.
Reference,Referência
Reference Date,Data de Referência
Reference Name,Nome de Referência
Reference Number,Número de Referência
Reference Type,Tipo de Referência
Refresh,Atualizar
Registered but disabled.,"Registrado, mas desativado."
Registration Details,Detalhes de Registro
Registration Details Emailed.,Detalhes do registro enviado por email.
Registration Info,Informações do Registro
Rejected,Rejeitado
Rejected Quantity,Quantidade rejeitada
Rejected Serial No,Nº de Série Rejeitado
Rejected Warehouse,Almoxarifado Rejeitado
Relation,Relação
Relieving Date,Data da Liberação
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,Ferramenta de Renomear
Rename multiple items in one go,Renomeie vários itens de uma só vez
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 / LDM em todas as LDMs
"Replace a particular BOM in all other BOMs where it is used. It will replace the old BOM link, update cost and regenerate ""BOM Explosion Item"" table as per new BOM","Substituir uma LDM específica em todas as LDMs outros onde ela é usada. Isso irá substituir o link da LDM antiga, atualizar o custo e regenerar a tabela &quot;Item de Explosão da LDM&quot; com a nova LDM"
Replied,Respondeu
Report,Relatório
Report Builder,Report Builder
Report Builder reports are managed directly by the report builder. Nothing to do.,Os relatórios do Report Builder são gerenciados diretamente pelo construtor relatório. Nada a fazer.
Report Date,Data do Relatório
Report Hide,Ocultar Relatório
Report Name,Nome do Relatório
Report Type,Tipo de relatório
Report was not saved (there were errors),O Relatório não foi salvo (houve erros)
Reports,Relatórios
Reports to,Relatórios para
Represents the states allowed in one document and role assigned to change the state.,Representa os estados permitidos em um documento a função atribuída a alterações do estado.
Reqd,Requerido
Reqd By Date,Requisições Por Data
Request 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ória
Required Qty,Quantidade requerida
Required only for sample item.,Necessário apenas para o item de amostra.
Required raw materials issued to the supplier for producing a sub - contracted item.,Matérias-primas necessárias emitidas para o fornecedor para a produção de um item sub-contratado.
Reseller,Revendedor
Reserved Quantity,Quantidade Reservada
Reserved Warehouse,Almoxarifado Reservado
Resignation Letter Date,Data da carta de demissão
Resolution,Resolução
Resolution Date,Data da Resolução
Resolution Details,Detalhes da Resolução
Resolved By,Resolvido por
Restrict IP,Restringir IP
Restrict submission rights based on amount,Restringir direitos de envio com base no valor
Restrict user from this IP address only. Multiple IP addresses can be added by separating with commas. Also accepts partial IP addresses like (111.111.111),Restringir usuário a partir deste endereço IP. Vários endereços IP podem ser adicionados ao separar com vírgulas. São aceitos também endereços IP parciais como (111.111.111)
Restricting By User,Restringindo por Usuário
Retail,Varejo
Retailer,Varejista
Review Date,Data da Revisão
Rgt,Dir.
Right,Direito
Role,Função
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 no fluxo de trabalho.
"Rules for how states are transitions, like next state and which role is allowed to change state etc.","Regras de como os estados são transições, como o próximo estado e que função terá permissão para mudar de estado, etc"
Rules to calculate shipping amount for a sale,Regras para calcular valor de frete para uma venda
SLE Exists,SLE existe
SMS,SMS
SMS Center,Centro de SMS
SMS Control,Controle de SMS
SMS Gateway URL,URL de Gateway para SMS
SMS Log,Log de SMS
SMS Parameter,Parâmetro de SMS
SMS Parameters,Parâmetros de SMS
SMS Sender Name,Nome do remetente do SMS
SMS Settings,Definições de SMS
SMTP Server (e.g. smtp.gmail.com),"Servidor SMTP(por exemplo, smtp.gmail.com)"
SO,OV
SO Date,Data da OV
SO Pending Qty,Qtde. pendente na OV
SO/10-11/,SO/10-11 /
SO1112,SO1112
SQTN,SQTN
STE,STO
SUP,SUP
SUPP,SUPP
SUPP/10-11/,SUPP/10-11 /
Salary,Salário
Salary Information,Informação sobre salário
Salary Manager,Gerenciador de salário
Salary Mode,Modo de salário
Salary Slip,Folha de pagamento
Salary Slip Deduction,Dedução da folha de pagamento
Salary Slip Earning,Ganhos da folha de pagamento
Salary Structure,Estrutura Salarial
Salary Structure Deduction,Dedução da Estrutura Salarial
Salary Structure Earning,Ganho da Estrutura Salarial
Salary Structure Earnings,Ganhos da Estrutura Salarial
Salary components.,Componentes salariais.
Sales,Vendas
Sales Analytics,Análise de Vendas
Sales BOM,LDM de Vendas
Sales BOM Help,Ajuda da LDM de Vendas
Sales BOM Item,Item da LDM de Vendas
Sales BOM Items,Itens da LDM de Vendas
Sales Common,Vendas comuns
Sales Details,Detalhes de Vendas
Sales Discounts,Descontos de Vendas
Sales Email Settings,Configurações do Email de Vendas
Sales Extras,Extras de Vendas
Sales Invoice,Nota Fiscal de Venda
Sales Invoice Advance,Antecipação da Nota Fiscal de Venda
Sales Invoice Item,Item da Nota Fiscal de Venda
Sales Invoice Items,Vendas itens da fatura
Sales Invoice Message,Mensagem da Nota Fiscal de Venda
Sales Invoice No,Nº da Nota Fiscal de Venda
Sales Invoice Trends,Vendas Tendências fatura
Sales Order,Ordem de Venda
Sales Order Date,Data da Ordem de Venda
Sales Order Item,Item da Ordem de Venda
Sales Order Items,Itens da Ordem de Venda
Sales Order Message,Mensagem da Ordem de Venda
Sales Order No,Nº da Ordem de Venda
Sales Order Required,Ordem de Venda Obrigatória
Sales Order Trend,Pedido de Vendas da Trend
Sales Partner,Parceiro de Vendas
Sales Partner Name,Nome do Parceiro de Vendas
Sales Partner Target,Metas do Parceiro de Vendas
Sales Partners Commission,Vendas Partners Comissão
Sales Person,Vendedor
Sales Person Incharge,Vendas Pessoa Incharge
Sales Person Name,Nome do Vendedor
Sales Person Target Variance (Item Group-Wise),Vendas Pessoa Variance Alvo (Item Group-Wise)
Sales Person Targets,Metas do Vendedor
Sales Person-wise Transaction Summary,Resumo da transação Pessoa-wise vendas
Sales Rate,Taxa de vendas
Sales Register,Vendas Registrar
Sales Return,Retorno de Vendas
Sales Taxes and Charges,Impostos e Taxas sobre Vendas
Sales Taxes and Charges Master,Cadastro de Impostos e Taxas sobre Vendas
Sales Team,Equipe de Vendas
Sales Team Details,Detalhes da Equipe de Vendas
Sales Team1,Equipe de Vendas
Sales and Purchase,Compra e Venda
Sales campaigns,Campanhas de Vendas
Sales persons and targets,Vendedores e Metas
Sales taxes template.,Modelo de Impostos sobre as Vendas.
Sales territories.,Territórios de Vendas.
Salutation,Saudação
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,Agendar
Schedule Details,Detalhes da Agenda
Scheduled,Agendado
Scheduled Confirmation Date,Data de Confirmação agendada
Scheduled Date,Data Agendada
Scheduler Error Log,Scheduler Error Log
Scheduler Log,Log do Agendador
School/University,Escola / Universidade
Score (0-5),Pontuação (0-5)
Score Earned,Pontuação Obtida
Scrap %,Sucata %
Script,Script
Script Report,Relatório Script
Script Type,Tipo de Script
Script to attach to all web pages.,Script para anexar a todas as páginas da web.
Search,Pesquisar
Search 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 itens sub-contratados
"Select ""Yes"" if this item is to be sent to a customer or received from a supplier as a sample. Delivery notes and Purchase Receipts will update stock levels but there will be no invoice against this item.","Selecione &quot;Sim&quot; se este item é para ser enviado para um cliente ou recebido de um fornecedor como amostra. Guias de Remessa e recibos de compra irão atualizar os níveis de estoque, mas não haverá fatura contra este item."
"Select ""Yes"" if this item is used for some internal purpose in your company.",Selecione &quot;Sim&quot; se este item é usado para alguma finalidade interna na sua empresa.
"Select ""Yes"" if this item represents some work like training, designing, consulting etc.","Selecione &quot;Sim&quot; se esse item representa algum trabalho como treinamento, design, consultoria, etc"
"Select ""Yes"" if you are maintaining stock of this item in your Inventory.",Selecione &quot;Sim&quot; se você está mantendo estoque deste item no seu Inventário.
"Select ""Yes"" if you supply raw materials to your supplier to manufacture this item.",Selecione &quot;Sim&quot; se você fornece as matérias-primas para o seu fornecedor fabricar este item.
Select All,Selecionar tudo
Select Attachments,Selecione os Anexos
Select Budget Distribution to unevenly distribute targets across months.,Selecione distribuição do orçamento para distribuir metas diferentes para os meses.
"Select Budget Distribution, if you want to track based on seasonality.","Selecione distribuição do orçamento, se você quiser acompanhar baseado em sazonalidade."
Select Customer,Selecione o Cliente
Select Digest Content,Selecione o conteúdo para o Resumo por E-mail
Select DocType,Selecione o DocType
Select Document Type,Selecione o Tipo de Documento
Select Document Type or Role to start.,Selecione o tipo de documento ou função para começar.
Select PR,Selecionar PR
Select Print Format,Selecione o Formato de Impressão
Select Print Heading,Selecione o Cabeçalho de Impressão
Select Report Name,Selecione o Nome do Relatório
Select Role,Selecione a Função
Select Sales Orders,Selecione as Ordens de Venda
Select Sales Orders from which you want to create Production Orders.,Selecione as Ordens de Venda a partir das quais você deseja criar Ordens de Produção.
Select Terms and Conditions,Selecione os 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 a Transação
Select Type,Selecione o Tipo
Select User or Property to start.,Selecione o 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 a Conta do banco onde o 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 por primeiro.
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 o 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 a etiqueta após a qual você deseja inserir um novo campo.
Select the period when the invoice will be generated automatically,Selecione o período em que a fatura será gerada automaticamente
"Select the price list as entered in ""Price List"" master. This will pull the reference rates of items against this price list as specified in ""Item"" master.","Selecione a lista de preços como cadastrada em &quot;Lista de Preço&quot;. Isso vai puxar os valores de referência dos itens contra esta lista de preços, conforme especificado no cadastro &quot;Item&quot;."
Select the relevant company name if you have multiple companies,"Selecione o nome da empresa em questão, se você tem várias empresas"
Select the relevant company name if you have multiple companies.,"Selecione o nome da empresa em questão, se você tem várias empresas."
Select who you want to send this newsletter to,Selecione para quem você deseja enviar esta newsletter
"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Selecionando &quot;Sim&quot; vai permitir que este item apareça na Ordem de Compra, Recibo de Compra."
"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","Selecionando &quot;Sim&quot; vai permitir que este item conste na Ordem de Venda, Guia de Remessa"
"Selecting ""Yes"" will allow you to create Bill of Material showing raw material and operational costs incurred to manufacture this item.",Selecionando &quot;Sim&quot; vai permitir que você crie uma Lista de Materiais mostrando as matérias-primas e os custos operacionais incorridos para fabricar este item.
"Selecting ""Yes"" will allow you to make a Production Order for this item.",Selecionando &quot;Sim&quot; vai permitir que você faça uma Ordem de Produção para este item.
"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.",Selecionando &quot;Sim&quot; vai dar uma identificação única para cada entidade deste item que pode ser vista no cadastro do Número de Série.
Selling,Vendas
Selling Settings,Vendendo Configurações
Send,Enviar
Send Autoreply,Enviar Resposta Automática
Send Email,Enviar E-mail
Send From,Enviar de
Send 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 os Contatos ao Submeter transações.
"Send bulk SMS to leads, customers, contacts","Enviar SMS em massa para prospectos, clientes e contatos"
Send mass SMS to your contacts,Enviar SMS em massa para seus contatos
Send regular summary reports via Email.,Enviar relatórios resumidos regularmente via e-mail.
Send to this list,Enviar para esta lista
Sender,Remetente
Sender Name,Nome do Remetente
"Sending newsletters is not allowed for Trial users, \				to prevent abuse of this feature.","Envio de newsletters não é permitido para usuários experimentais, \ para evitar o abuso deste recurso."
Sent Mail,E-mails Enviados
Sent On,Enviado em
Sent Quotation,Cotação Enviada
Separate production order will be created for each finished good item.,Uma Ordem de Produção separada será criada para cada item acabado.
Serial No,Nº de Série
Serial No Details,Detalhes do Nº de Série
Serial No Service Contract Expiry,Vencimento do Contrato de Serviço com Nº de Série
Serial No Status,Estado do Nº de Série
Serial No Warranty Expiry,Vencimento da Garantia com Nº de Série
Serialized Item: ',Item serializado: &#39;
Series,Séries
Series List for this Transaction,Lista de séries para esta transação
Server,Servidor
Service Address,Endereço de Serviço
Services,Serviços
Session Expired. Logging you out,A sessão expirou. Você será deslogado
Session Expires in (time),A sessão expira em (tempo)
Session Expiry,Duração da sessão
Session Expiry in Hours e.g. 06:00,"Duração da sessão em Horas, por exemplo 06:00"
Set Banner from Image,Jogo da bandeira da Imagem
Set From Image,Definir a partir da imagem
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,"Definir orçamentos para Grupos de Itens neste território. Você também pode incluir a sazonalidade, defininda na Distribuição."
Set Login and Password if authentication is required.,Defina Login e Senha se a autenticação for necessária.
Set New Password,Definir nova senha
Set Value,Definir valor
"Set a new password and ""Save""",Definir uma nova senha e &quot;Salvar&quot;
Set default values for entry,Definir valores padrão para o lançamento
Set default values for users (also used for permissions).,Definir valores padrão para os usuários (também usados para permissões).
Set multiple numbering series for transactions,Definir multiplas séries de numeração para transações
Set permissions on transactions / masters,Definir permissões em transações / cadastros
Set prefix for numbering series on your transactions,Definir prefixo para séries de numeração em suas transações
Set targets Item Group-wise for this Sales Person.,Estabelecer metas para Grupos de Itens para este Vendedor.
Set workflow rules.,Definir regras do fluxo de trabalho.
"Set your background color, font and image (tiled)","Defina sua cor de fundo, fonte e imagem (lado a lado)"
"Set your outgoing mail SMTP settings here. All system generated notifications, emails will go from this mail server. If you are not sure, leave this blank to use ERPNext servers (emails will still be sent from your email id) or contact your email provider.","Defina suas configurações de de e-mail SMTP aqui. Todas as notificações geradas pelo sistema e e-mails são enviados a partir deste servidor de correio. Se você não tem certeza, deixe este campo em branco para usar servidores ERPNext (e-mails ainda serão enviadas a partir do seu endereço de e-mail) ou entre em contato com seu provedor de e-mail."
Setting Account Type helps in selecting this Account in transactions.,Definir o Tipo de Conta ajuda na seleção desta Conta nas transações.
Settings,Configurações
Settings for About Us Page.,Configurações da Página Sobre Nós.
Settings for Accounts,Definições para contas
Settings for Buying Module,Configurações para comprar Module
Settings for Contact Us Page,Configurações da Página Fale Conosco.
Settings for Contact Us Page.,Configurações da Página Fale Conosco.
Settings for Selling Module,Configurações para vender Module
Settings for the About Us Page,Configurações da Página Sobre Nós.
"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""","Definições para extrair os candidatos a emprego a partir de um e-mail, por exemplo: &quot;empregos@exemplo.com&quot;"
Setup,Configuração
Setup Control,Controle de configuração
Setup Series,Configuração de Séries
Setup of Shopping Cart.,Configuração do Carrinho de Compras.
Setup of fonts and background.,Configuração de fontes e de fundo.
"Setup of top navigation bar, footer and logo.","Configuração de barra de navegação do topo, rodapé, e logotipo."
Setup outgoing SMS via your bulk SMS provider,Configurar envio de SMS através de seu provedor de SMS em massa
Setup to pull emails from support email account,Configuração para puxar e-mails da conta do e-mail de suporte
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 de envio
Shipping Address Name,Nome do Endereço de envio
Shipping Amount,Valor do transporte
Shipping Rule,Regra de envio
Shipping Rule Condition,Regra Condições de envio
Shipping Rule Conditions,Regra Condições de envio
Shipping Rule Label,Regra envio Rótulo
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.",Mostrar &quot;Em Stock&quot; ou &quot;Fora de Estoque&quot; baseado no estoque disponível neste almoxarifado.
Show / Hide Modules,Mostrar / Ocultar Módulos
Show Details,Ver detalhes
Show In Website,Mostrar No Site
Show Print First,Mostrar Impressão Primeiro
Show a slideshow at the top of the page,Mostrar uma apresentação de slides no topo da página
Show in Website,Mostrar no site
Show rows with zero values,Mostrar as linhas com valores zero
Show this slideshow at the top of the page,Mostrar esta apresentação de slides no topo da página
"Show, hide modules",Mostrar / Ocultar Módulos
Showing only for,Mostrando apenas para
Signature,Assinatura
Signature to be appended at the end of every email,Assinatura para ser inserida no final de cada e-mail
Simplify entry forms by disabling features,Simplificar os formulários de entrada pela desativação de recursos
Single,Único
Single Post (article).,Resposta Única (artigo).
Single unit of an Item.,Unidade única de um item.
Sitemap Domain,Mapa do Site Domínio
Slideshow,Apresentação de slides
Slideshow Items,Itens da Apresentação de slides
Slideshow Name,Nome da Apresentação de slides
Slideshow like display for the website,Exibição do tipo Apresentação de slides para o site
Small Text,Texto Pequeno
Solid background color (default light gray),Cor de fundo sólida (padrão cinza claro)
Sorry we were unable to find what you were looking for.,"Desculpe, não encontramos o que você estava procurando."
Sorry you are not permitted to view this page.,"Desculpe, você não tem permissão para visualizar esta página."
Sorry! We can only allow upto 100 rows for Stock Reconciliation.,Desculpe! Nós só podemos permitir no máximo 100 linhas para Reconciliação de Estoque.
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,Almoxarifado de origem
Source and Target Warehouse cannot be same,O Almoxarifado de origem e destino não pode ser o mesmo
Source of th,Origem do
"Source of the lead. If via a campaign, select ""Campaign""","Origem do Prospecto. Se foi através de uma campanha, selecione &quot;Campanha&quot;"
Spartan,Espartano
Special Page Settings,Configurações Especiais de página
Specification Details,Detalhes da 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.,Dividir Guia de Remessa em pacotes.
Standard,Padrão
Standard Rate,Taxa normal
"Standard Terms and Conditions that can be added to Sales and Purchases.Examples:1. Validity of the offer.1. Payment Terms (In Advance, On Credit, part advance etc).1. What is extra (or payable by the Customer).1. Safety / usage warning.1. Warranty if any.1. Returns Policy.1. Terms of shipping, if applicable.1. Ways of addressing disputes, indemnity, liability, etc.1. Address and Contact of your Company.","Termos e Condições Padrão que pode ser adicionado para Vendas e Purchases.Examples: 1. Validade do offer.1. Condições de pagamento (adiantado, no crédito etc antecedência, parte) 0,1. O que é muito (ou a pagar pelo Cliente) .1. Segurança / uso warning.1. Garantia se any.1. Retorna Policy.1. Condições de entrega, se applicable.1. Formas de disputas de endereçamento, indenização, responsabilidade, etc.1. Endereço e contato da sua empresa."
"Standard tax template that can be applied to all Purchase Transactions. This template can contain list of tax heads and also other expense heads like ""Shipping"", ""Insurance"", ""Handling"" etc.#### NoteThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.#### Description of Columns1. Calculation Type:     - This can be on **Net Total** (that is the sum of basic amount).    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.    - **Actual** (as mentioned).2. Account Head: The Account ledger under which this tax will be booked3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.4. Description: Description of the tax (that will be printed in invoices / quotes).5. Rate: Tax rate.6. Amount: Tax amount.7. Total: Cumulative total to this point.8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).9. Consider Tax or Charge for: In this section you can specify if the tax / charge is only for valuation (not a part of total) or only for total (does not add value to the item) or for both.10. Add or Deduct: Whether you want to add or deduct the tax.","Modelo imposto padrão que pode ser aplicado a todas as operações de compra. Este modelo pode conter lista de cabeças de impostos e também chefes de despesas outras como &quot;Frete&quot;, &quot;Seguro&quot;, &quot;Manipulação&quot;, etc taxa de imposto # # # # ObservaçãoO você definir aqui será a taxa normal do IVA para todos os itens ** ** . Se houver ** ** Itens que têm taxas diferentes, eles devem ser adicionados no Imposto item ** ** tabela no item ** ** mestre. # # # # Descrição do Columns1. Tipo de Cálculo: - Isto pode ser em ** Total Líquida ** (que é a soma do valor de base). - ** Na linha anterior Total / Montante ** (para impostos cumulativos ou encargos). Se você selecionar esta opção, o imposto será aplicado como um percentual da linha anterior (na tabela do imposto) ou montante total. - ** Real ** (como mencionado) .2. Chefe da conta: O livro conta em que este imposto será booked3. Custo Center: Se o imposto / carga é uma renda (como o transporte) ou despesa que precisa ser contabilizadas a um Custo Center.4. Descrição: Descrição do imposto (que será impresso nas faturas / cotações) .5. Taxa: Imposto rate.6. Quantidade: Imposto amount.7. Total: total acumulado a este point.8. Digite Row: Se com base em &quot;Total linha anterior&quot; você pode escolher o número da linha que será tomado como base para este cálculo (o padrão é a linha anterior) .9. Considere imposto ou encargo para: Nesta seção, você pode especificar se o imposto / carga é apenas para avaliação (não uma parte do total) ou apenas para total (não adiciona valor ao produto) ou para both.10. Adicionar ou Deduzir: Se você quiser adicionar ou deduzir o imposto."
"Standard tax template that can be applied to all Sales Transactions. This template can contain list of tax heads and also other expense / income heads like ""Shipping"", ""Insurance"", ""Handling"" etc.#### NoteThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.#### Description of Columns1. Calculation Type:     - This can be on **Net Total** (that is the sum of basic amount).    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.    - **Actual** (as mentioned).2. Account Head: The Account ledger under which this tax will be booked3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.4. Description: Description of the tax (that will be printed in invoices / quotes).5. Rate: Tax rate.6. Amount: Tax amount.7. Total: Cumulative total to this point.8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).9. Is this Tax included in Basic Rate?: If you check this, it means that this tax will not be shown below the item table, but will be included in the Basic Rate in your main item table. This is useful where you want give a flat price (inclusive of all taxes) price to customers.","Modelo imposto padrão que pode ser aplicado a todas as suas vendas. Este modelo pode conter lista de cabeças de impostos e também outras despesas / receitas cabeças como &quot;Frete&quot;, &quot;Seguro&quot;, &quot;Manipulação&quot;, etc taxa de imposto # # # # ObservaçãoO você definir aqui será a taxa normal do IVA para todos os itens ** . ** Se houver ** ** Itens que têm taxas diferentes, eles devem ser adicionados no Imposto item ** ** tabela no item ** ** mestre. # # # # Descrição do Columns1. Tipo de Cálculo: - Isto pode ser em ** Total Líquida ** (que é a soma do valor de base). - ** Na linha anterior Total / Montante ** (para impostos cumulativos ou encargos). Se você selecionar esta opção, o imposto será aplicado como um percentual da linha anterior (na tabela do imposto) ou montante total. - ** Real ** (como mencionado) .2. Chefe da conta: O livro conta em que este imposto será booked3. Custo Center: Se o imposto / carga é uma renda (como o transporte) ou despesa que precisa ser contabilizadas a um Custo Center.4. Descrição: Descrição do imposto (que será impresso nas faturas / cotações) .5. Taxa: Imposto rate.6. Quantidade: Imposto amount.7. Total: total acumulado a este point.8. Digite Row: Se com base em &quot;Total linha anterior&quot; você pode escolher o número da linha que será tomado como base para este cálculo (o padrão é a linha anterior) .9. É este imposto incluído na tarifa básica:? Se você verificar isso, significa que este imposto não será mostrado abaixo da tabela item, mas será incluída na taxa básica em sua mesa principal item. Isso é útil quando você quer dar um preço fixo (incluindo todos os impostos) preço aos clientes."
Start Date,Data de Início
Start Report For,Começar Relatório para
Start date of current invoice's period,Data de início do período de fatura atual
Starts on,Inicia em
Startup,Startup
State,Estado
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 estatutárias 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 do Estoque
Stock Analytics,Análise do Estoque
Stock Balance,Balanço de Estoque
Stock Entry,Lançamento no Estoque
Stock Entry Detail,Detalhe do lançamento no Estoque
Stock Frozen Upto,Estoque congelado até
Stock In Hand Account,Estoque em conta Mão
Stock Ledger,Livro de Inventário
Stock Ledger Entry,Lançamento do Livro de Inventário
Stock Level,Nível de Estoque
Stock Qty,Qtde. em Estoque
Stock Queue (FIFO),Fila do estoque (PEPS)
Stock Received But Not Billed,"Banco recebido, mas não faturados"
Stock Reconciliation,Reconciliação de Estoque
Stock Reconciliation file not uploaded,Arquivo da Reconciliação de Estoque não carregado
Stock Settings,Configurações da
Stock UOM,UDM do Estoque
Stock UOM Replace Utility,Utilitário para Substituir UDM do Estoque
Stock Uom,UDM do Estoque
Stock Value,Valor do Estoque
Stock 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 dos centros de custo para orçamentação.
Structure of books of accounts.,Estrutura de livros de contas.
Style,Estilo
Style Settings,Configurações de Estilo
"Style represents the button color: Success - Green, Danger - Red, Inverse - Black, Primary - Dark Blue, Info - Light Blue, Warning - Orange","Estilo representa a cor do botão: Sucesso - Verde, Perigo - Vermelho, Inverso - Preto, Primário - Azul Escuro, Informação - Azul Claro, Aviso - Laranja"
"Sub-currency. For e.g. ""Cent""",Sub-moeda. Por exemplo &quot;Centavo&quot;
Sub-domain provided by erpnext.com,Sub-domínio fornecido pelo erpnext.com
Subcontract,Subcontratar
Subdomain,Subdomínio
Subject,Assunto
Submit,Enviar
Submit Salary Slip,Enviar folha de pagamento
Submit all salary slips for the above selected criteria,Enviar todas as folhas de pagamento para os critérios acima selecionados
Submitted,Enviado
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 (vendedor), como inscritos no cadastro de fornecedores"
Supplier Account Head,Fornecedor Cabeça Conta
Supplier Address,Endereço do Fornecedor
Supplier Details,Detalhes do Fornecedor
Supplier Intro,Introdução do Fornecedor
Supplier Invoice Date,Fornecedor Data Fatura
Supplier Invoice No,Fornecedor factura n
Supplier Name,Nome do Fornecedor
Supplier Naming By,Fornecedor de nomeação
Supplier Part Number,Número da peça do Fornecedor
Supplier Quotation,Cotação do Fornecedor
Supplier Quotation Item,Item da Cotação do Fornecedor
Supplier Reference,Referência do Fornecedor
Supplier Shipment Date,Fornecedor Expedição Data
Supplier Shipment No,Fornecedor Expedição Não
Supplier Type,Tipo de Fornecedor
Supplier Warehouse,Almoxarifado do Fornecedor
Supplier Warehouse mandatory subcontracted purchase receipt,Armazém Fornecedor obrigatório recibo de compra subcontratada
Supplier classification.,Classificação do Fornecedor.
Supplier database.,Banco de dados do Fornecedor.
Supplier of Goods or Services.,Fornecedor de Bens ou Serviços.
Supplier warehouse where you have issued raw materials for sub - contracting,Almoxarifado do fornecedor onde você emitiu matérias-primas para a subcontratação
Supplier's currency,Moeda do Fornecedor
Support,Suporte
Support Analytics,Análise do Suporte
Support Email,E-mail de Suporte
Support Email Id,Endereço de E-mail de Suporte
Support Password,Senha do Suporte
Support Ticket,Ticket de Suporte
Support queries from customers.,Suporte a consultas de clientes.
Symbol,Símbolo
Sync Inbox,Sincronizar Caixa de Entrada
Sync Support Mails,Sincronizar E-mails de Suporte
Sync backups with remote tools like Dropbox etc.,"Sincronize backups remotos com ferramentas como o Dropbox, etc"
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.","Identificação do usuário do sistema (login). Se for marcado, ele vai se tornar padrão para todos os formulários de RH."
System for managing Backups,Sistema para gerenciamento de Backups
System generated mails will be sent from this email id.,E-mails gerados pelo sistema serão enviados a partir deste endereço de e-mail.
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 da etiqueta
Tags,Etiquetas
Tahoma,Tahoma
Target,Meta
Target  Amount,Valor da meta
Target Detail,Detalhe da meta
Target Details,Detalhes da meta
Target Details1,Detalhes da meta
Target Distribution,Distribuição de metas
Target Qty,Qtde. de metas
Target Warehouse,Almoxarifado de destino
Task,Tarefa
Task Details,Detalhes da Tarefa
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 Impostos para vendas
Tax and other salary deductions.,Impostos e outras deduções salariais.
Tax detail table fetched from item master as a string and stored in this field.Used for Taxes and Charges,Tabela de detalhes fiscal obtido a partir do cadastro de itens como uma string e armazenada neste field.Used dos Impostos e Encargos
Taxable,Tributável
Taxes,Impostos
Taxes and Charges,Impostos e Encargos
Taxes and Charges Added,Impostos e Encargos Adicionados
Taxes and Charges Added (Company Currency),Impostos e taxas Adicionado (Moeda Company)
Taxes and Charges Calculation,Cálculo de Impostos e Encargos
Taxes and Charges Deducted,Impostos e Encargos Deduzidos
Taxes and Charges Deducted (Company Currency),Impostos e taxas Deduzido (Moeda Company)
Taxes and Charges Total,Total de Impostos e Encargos
Taxes and Charges Total (Company Currency),Impostos e Encargos Total (moeda da empresa)
Taxes and Charges1,Impostos e Encargos
Team Members,Membros da Equipe
Team Members Heading,Título da página Membros da Equipe
Template for employee performance appraisals.,Modelo para avaliação do desempenho dos funcionários.
Template of terms or contract.,Modelo de termos ou contratos.
Term Details,Detalhes dos Termos
Terms and Conditions,Termos e Condições
Terms and Conditions Content,Conteúdos dos Termos e Condições
Terms and Conditions Details,Detalhes dos Termos e Condições
Terms and Conditions Template,Modelo de Termos e Condições
Terms and Conditions1,Termos e Condições
Territory,Território
Territory Manager,Gerenciador de Territórios
Territory Name,Nome do Território
Territory Target Variance (Item Group-Wise),Território Variance Alvo (Item Group-Wise)
Territory Targets,Metas do Território
Test,Teste
Test Email Id,Endereço de Email de Teste
Test Runner,Test Runner
Test the Newsletter,Newsletter de Teste
Text,Texto
Text Align,Alinhar Texto
Text Editor,Editor de Texto
"The ""Web Page"" that is the website home page",A &quot;Página Web&quot; que é a página inicial do site
The BOM which will be replaced,A LDM que será substituída
"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""",O item que representa o pacote. Este item deve ter &quot;É Item de Estoque&quot; como &quot;Não&quot; e &quot;É Item de Venda&quot; como &quot;Sim&quot;
The account to which you will pay (have paid) the money to.,A conta para a qual você vai pagar (ou paguou) o dinheiro.
The date at which current entry is made in system.,A data em que o lançamento atual é feito no sistema.
The date at which current entry will get or has actually executed.,A data em que o lançamento atual vai ser ou foi realmente executado.
The date on which next invoice will be generated. It is generated on submit.,A data em que próxima fatura será gerada. Ele é gerado em enviar.
The date on which recurring invoice will be stop,A data em que fatura recorrente será interrompida
"The day of the month on which auto invoice will be generated e.g. 05, 28 etc ","O dia do mês em que 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 da forma que você quer que apareça na barra de título do navegador. Todas as páginas vão ter isso como o prefixo para o título.
The net weight of this package. (calculated automatically as sum of net weight of items),O peso líquido do pacote. (Calculado automaticamente como soma do peso líquido dos itens)
The new BOM after replacement,A nova LDM após substituição
The rate at which Bill Currency is converted into company's base currency,A taxa na qual a moeda de faturamento é convertida na moeda base da empresa
"The system provides pre-defined roles, but you can <a href='#List/Role'>add new roles</a> to set finer permissions","O sistema fornece funções pré-definidas, mas você pode <a href='#List/Role'>adicionar novas funções</a> para estabelecer as permissões mais precisas"
The unique id for tracking all recurring invoices. It is generated on submit.,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 do tipo ligação de todos os documentos.
"These properties can also be used to 'assign' a particular document, whose property matches with the User's property to a User. These can be set using the <a href='#permission-manager'>Permission Manager</a>","Essas propriedades também podem ser usados ​​para &quot;atribuir&quot; um documento específico, cuja propriedade coincide com a propriedade do usuário para um usuário. Estas podem ser definidas usando o <a href='#permission-manager'>Gerenciador de Permissão</a>"
These properties will appear as values in forms that contain them.,Estas propriedades aparecerão como valores em formulários que as contêm.
These values will be automatically updated in transactions and also will be useful to restrict permissions for this user on transactions containing these values.,Esses valores serão atualizados automaticamente em transações e também serão úteis para restringir as permissões para este usuário em operações que contenham esses valores.
This 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 buscada em transações de compra deste fornecedor
This currency will get fetched in Sales transactions of this customer,Essa moeda vai ser buscada em transações de vendas deste cliente
"This feature is for merging duplicate warehouses. It will replace all the links of this warehouse by ""Merge 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 não pode ser desfeita. Continuar?
This is an auto generated Material Request.,Este é um auto solicitar material gerado.
This is permanent action and you cannot undo. Continue?,Esta é uma ação PERMANENTE e não pode ser desfeita. Continuar?
This is the number of the last created transaction with this prefix,Este é o número da última transação criada com este prefixo
This 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 e a valorização do estoque no sistema. Ela é geralmente usada para sincronizar os valores do sistema e o que realmente existe em seus almoxarifados.
This will be used for setting rule in HR module,Isso será usado para a definição de regras no módulo RH
Thread HTML,Tópico HTML
Thursday,Quinta-feira
Time,Tempo
Time 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,Fusos horários
Time and Budget,Tempo e Orçamento
Time at which items were delivered from warehouse,Horário em que os itens foram entregues do almoxarifado
Time at which materials were received,Horário em que os materiais foram recebidos
Title,Título
Title / headline of your page,Título / chamada da sua página
Title Case,Caixa do Título
Title Prefix,Prefixo do Título
To,Para
To Currency,A Moeda
To Date,Até a Data
To Discuss,Para Discutir
To Do List,Para fazer a lista
To PR Date,Data de PR
To Package No.,Para Pacote Nº.
To Reply,Para Responder
To Time,Para Tempo
To Value,Ao Valor
To Warehouse,Para Almoxarifado
"To add a tag, open the document and click on ""Add Tag"" on the sidebar","Para adicionar uma etiqueta, abra o documento e clique em &quot;Adicionar Etiqueta&quot; na barra lateral"
"To assign this issue, use the ""Assign"" button in the sidebar.","Para atribuir esse problema a alguém, use o botão &quot;Atribuir&quot; na barra lateral."
"To automatically create Support Tickets from your incoming mail, set your POP3 settings here. You must ideally create a separate email id for the erp system so that all emails will be synced into the system from that mail id. If you are not sure, please contact your EMail Provider.","Para criar automaticamente Tickets de Suporte a partir da sua caixa de entrada, defina as configurações de POP3 aqui. Você deve, idealmente, criar um E-mail separado para o Sistema ERP para que todas as mensagens sejam sincronizadas com o sistema a partir daquele E-mail. Se você não tiver certeza, entre em contato com seu provedor de e-mail."
"To create an Account Head under a different company, select the company and save customer.","Para criar uma Conta, sob uma empresa diferente, selecione a empresa e salve o Cliente."
To enable <b>Point of Sale</b> features,Para habilitar as características de <b>Ponto de Venda</b>
"To fetch items again, click on 'Get Items' button \						or update the Quantity manually.","Para buscar itens novamente, clique em &quot;Obter itens &#39;botão \ ou atualizar a quantidade manualmente."
"To format columns, give column labels in the query.","Para formatar colunas, dar rótulos de coluna na consulta."
"To further restrict permissions based on certain values in a document, use the 'Condition' settings.","Para restringir ainda mais as permissões com base em determinados valores em um documento, use as definições de &#39;Condição&#39;."
To get Item Group in details table,Para obter Grupo de Itens na tabela de detalhes
To manage multiple series please go to Setup > Manage Series,"Para gerenciar várias séries por favor, vá para Configuração &gt; Gerenciar Séries"
To restrict a User of a particular Role to documents that are explicitly assigned to them,Para restringir um usuário de uma função a documentos que são explicitamente atribuídos a ele
To restrict a User of a particular Role to documents that are only self-created.,Para restringir um usuário de uma função a apenas documentos que ele próprio criou.
"To set 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 ao usuário, basta ir a <a href='#List/Profile'>Configuração&gt; Usuários</a> e clicar sobre o usuário para atribuir funções."
To track any installation or commissioning related work after sales,Para rastrear qualquer trabalho relacionado à instalação ou colocação em funcionamento após a venda
"To track brand name in the following documents<br>Delivery Note, Enuiry, Material Request, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Sales Invoice, Sales BOM, Sales Order, Serial No","Para acompanhar marca nos seguintes documentos <br> Nota de Entrega, Enuiry, solicitar material, Item, Ordem de Compra, comprovante de compra, recebimento Comprador, cotação, nota fiscal de venda, BOM Vendas, Ordem de Vendas, N º de Série"
To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.,Para acompanhar o item em documentos de vendas e de compras com base em seus números de série. Isso também pode ser usado para rastrear detalhes sobre a garantia do produto.
To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,"Para controlar os itens de vendas e documentos de compra pelo nº do lote<br> <b>Por Ex.: Indústria Química, etc</b>"
To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.,Para rastrear itens usando código de barras. Você será capaz de inserir itens na Guia de Remessa e Nota Fiscal de Venda através do escaneamento do código de barras do item.
"To update your HTML from attachment, click here","Para atualizar seu código HTML a partir do anexo, clique aqui"
ToDo,Lista de Tarefas
Tools,Ferramentas
Top,Topo
Top Bar,Barra Superior
Top Bar Background,Fundo da barra superior
Top Bar Item,Item da barra superior
Top Bar Items,Itens da barra superior
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) da 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 por extenso
Total Billing This Year: ,Faturamento total deste ano:
Total Claimed Amount,Montante Total Requerido
Total Commission,Total da Comissão
Total Cost,Custo Total
Total Credit,Crédito Total
Total Debit,Débito Total
Total Deduction,Dedução Total
Total Earning,Total de Ganhos
Total Experience,Experiência total
Total Hours,Total de Horas
Total Hours (Expected),Total de Horas (Esperado)
Total Invoiced Amount,Valor Total Faturado
Total Leave Days,Total de dias de licença
Total Leaves Allocated,Total de licenças alocadas
Total Operating Cost,Custo de Operacional Total
Total Points,Total de pontos
Total Raw Material Cost,Custo Total das matérias-primas
Total SMS Sent,Total de SMS enviados
Total Sanctioned Amount,Valor Total Sancionado
Total Score (Out of 5),Pontuação total (sobre 5)
Total Tax (Company Currency),Imposto Total (moeda da empresa)
Total Taxes and Charges,Total de Impostos e Encargos
Total Taxes and Charges (Company Currency),Total de Impostos e Taxas (moeda da empresa)
Total 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 por extenso
Totals,Totais
Track separate Income and Expense for product verticals or divisions.,Acompanhar Receitas e Gastos separados para produtos verticais ou divisões.
Track this Delivery Note against any Project,Acompanhar este Guia de Remessa contra qualquer projeto
Track this Sales Invoice against any Project,Acompanhar esta Nota Fiscal de Venda contra qualquer projeto
Track this Sales Order against any Project,Acompanhar este Ordem de Venda contra qualquer projeto
Transaction,Transação
Transaction Date,Data da Transação
Transfer,Transferir
Transition Rules,Regras de transição
Transporter Info,Informações da Transportadora
Transporter Name,Nome da Transportadora
Transporter lorry number,Número do caminhão da Transportadora
Trash Reason,Razão de pôr no 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,Compartilhar Twitter
Twitter Share via,Twitter Partilhar através do
Type,Tipo
Type of document to rename.,Tipo de documento a ser renomeado.
Type of employment master.,Tipo de cadastro de emprego.
"Type of leaves like casual, sick etc.","Tipo de licenças como casual, doença, etc."
Types of Expense Claim.,Tipos de reembolso de despesas.
Types of activities for Time Sheets,Tipos de atividades para quadro de horários
UOM,UDM
UOM Conversion Detail,Detalhe da Conversão de UDM
UOM Conversion Details,Detalhes da Conversão de UDM
UOM Conversion Factor,Fator de Conversão da UDM
UOM Details,Detalhes da UDM
UOM Name,Nome da UDM
UOM Replace Utility,Utilitário para Substituir UDM
UPPER CASE,MAIÚSCULAS
UPPERCASE,Maiúsculas
URL,URL
Unable to complete request: ,Não é possível concluir pedido:
Under AMC,Sob CAM
Under Graduate,Em 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º, 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 agendamento
Unsubscribed,Inscrição Cancelada
Update,Atualizar
Update Clearance Date,Atualizar Data Liquidação
Update Field,Atualizar Campo
Update PR,Atualizar PR
Update Series,Atualizar Séries
Update Series Number,Atualizar Números de Séries
Update Stock,Atualizar Estoque
Update Stock should be checked.,Atualização de Estoque deve ser verificado.
Update This Application,Atualizar a aplicação
Update Value,Atualizar Valor
"Update allocated amount in the above table and then click ""Allocate"" button",Atualize o montante atribuído na tabela acima e clique no botão &quot;Alocar&quot;
Update bank payment dates with journals.,Atualizar datas de pagamento bancário com livro Diário.
Update is in progress. This may take some time.,Atualização está em andamento. Isso pode levar algum tempo.
Updated,Atualizado
Upload Attachment,Carregar 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,Carregar um arquivo
Upload attendance from a .csv file,Carregar comparecimento a partir de um arquivo CSV.
Upload stock balance via csv.,Carregar saldo de estoque a partir de um arquivo CSV.
Uploading...,Upload ...
Upper Income,Renda superior
Urgent,Urgente
Use Multi-Level BOM,Utilize LDM de Vários Níveis
Use SSL,Use SSL
User,Usuário
User Cannot Create,O Usuário não pode criar
User Cannot Search,O Usuário não pode pesquisar
User ID,ID de Usuário
User Image,Imagem do Usuário
User Name,Nome de Usuário
User Properties,Propriedades do Usuário
User Remark,Observação do Usuário
User Remark will be added to Auto Remark,Observação do usuário será adicionado à observação automática
User Tags,Etiquetas de Usuários
User Type,Tipo de Usuário
User must always select,O Usuário deve sempre selecionar
User not allowed entry in the Warehouse,Entrada do usuário não é permitido no Armazém
User not allowed to delete.,Usuário não tem permissão para excluir.
UserRole,Função do Usuário
Username,Nome do Usuário
Users,Usuários
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 lançamentos de contabilidade antes da data de congelamento
Utilities,Utilitários
Utility,Utilitário
Valid For Territories,Válido para os territórios
Valid Upto,Válido até
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 Avaliaçã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,Verificado Por
Visit,Visita
Visit report for maintenance call.,Relatório da visita da chamada de manutenção.
Voucher Detail No,Nº do Detalhe do comprovante
Voucher ID,ID do Comprovante
Voucher Import Tool,Ferramenta de Importação de comprovantes
Voucher No,Nº do comprovante
Voucher Type,Tipo de comprovante
Voucher Type and Date,Tipo Vale e Data
Waiting for Customer,À espera de Cliente
Walk In,Walk In
Warehouse,Almoxarifado
Warehouse Contact Info,Informações de Contato do Almoxarifado
Warehouse Detail,Detalhe do Almoxarifado
Warehouse Name,Nome do Almoxarifado
Warehouse 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,Almoxarifado 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,Aviso: pedido de férias contém as datas de blocos seguintes
Warranty / AMC Details,Garantia / Detalhes do CAM
Warranty / AMC Status,Garantia / Estado do CAM
Warranty Expiry Date,Data de validade da garantia
Warranty Period (Days),Período de Garantia (Dias)
Warranty Period (in days),Período de Garantia (em dias)
Web Content,Conteúdo da Web
Web Page,Página Web
Website,Site
Website Description,Descrição do site
Website Item Group,Grupo de Itens do site
Website Item Groups,Grupos de Itens do site
Website Overall Settings,Configurações gerais do site
Website Script,Script do site
Website Settings,Configurações do site
Website Slideshow,Slideshow do site
Website Slideshow Item,Item do Slideshow do site
Website Warehouse,Almoxarifado do site
Wednesday,Quarta-feira
Weekly,Semanal
Weekly Off,Descanso semanal
Weight UOM,UDM de Peso
Weightage,Peso
Weightage (%),Peso (%)
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 marcadas são &quot;Enviadas&quot;, um pop-up abre automaticamente para enviar um e-mail para o &quot;Contato&quot; associado a transação, com a transação como um anexo. O usuário pode ou não enviar o e-mail."
"When you <b>Amend</b> a document after cancel and save it, it will get a new number that is a version of the old number.","Quando você <b>Alterar</b> um documento depois de cancelar e salvá-lo, ele vai ter um novo número que é uma versão do número antigo."
Where items are stored.,Onde os itens são armazenados.
Where manufacturing operations are carried out.,Onde as operações de fabricação são realizadas.
Widowed,Viúvo(a)
Width,Largura
Will be calculated automatically when you enter the details,Será calculado automaticamente quando você digitar os detalhes
Will be fetched from Customer,Será obtido a partir do Cliente
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 do Fluxo de Trabalho
Workflow Action Master,Cadastro da Ação do Fluxo de Trabalho
Workflow Action Name,Nome da Ação do Fluxo de Trabalho
Workflow Document State,Estado do Documento do Fluxo de Trabalho
Workflow Document States,Estados do Documento do Fluxo de Trabalho
Workflow Name,Nome do Fluxo de Trabalho
Workflow State,Estado do Fluxo de Trabalho
Workflow State Field,Campo do Estado do Fluxo de Trabalho
Workflow State Name,Nome do Estado do Fluxo de Trabalho
Workflow Transition,Transição do Fluxo de Trabalho
Workflow Transitions,Transições do Fluxo de Trabalho
Workflow state represents the current state of a document.,O estado do Fluxo de Trabalho representa o estado atual de um documento.
Workflow will start after saving.,Fluxo de trabalho será iníciado após salvar.
Working,Trabalhando
Workstation,Estação de Trabalho
Workstation Name,Nome da Estação de Trabalho
Write,Escrever
Write Off Account,Eliminar Conta
Write Off Amount,Eliminar Valor
Write Off Amount <=,Eliminar Valor &lt;=
Write Off Based On,Eliminar Baseado em
Write Off Cost Center,Eliminar Centro de Custos
Write Off Outstanding Amount,Eliminar saldo devedor
Write Off Voucher,Eliminar comprovante
Write a Python file in the same folder where this is saved and return column and result.,Gravar um arquivo Python na mesma pasta onde este é guardado e coluna de retorno e resultado.
Write a SELECT query. Note result is not paged (all data is sent in one go).,Escreva uma consulta SELECT. Resultado nota não é paginada (todos os dados são enviados de uma só vez).
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 do Ano
Year Start Date,Data de início do ano
Year of Passing,Ano de Passagem
Yearly,Anual
Yes,Sim
Yesterday,Ontem
You are not authorized to do/modify back dated entries before ,Você não está autorizado a fazer / modificar volta entradas datadas antes
You can create more earning and deduction type from Setup --> HR,Você pode criar mais tipos de Ganhos e Deduções a partir de Configuração -&gt; RH
You can enter any date manually,Você pode entrar qualquer data manualmente
You can enter the minimum quantity of this item to be ordered.,Você pode inserir a quantidade mínima deste item a ser encomendada.
You can 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 nos campos.
Your Customer's TAX registration numbers (if applicable) or any general information,Os números de inscrição fiscal do seu Cliente (se aplicável) ou qualquer outra informação geral
"Your download is being built, this may take a few moments...","O seu download está sendo construído, isso pode demorar alguns instantes ..."
Your letter head content in HTML.,O conteúdo do seu cabeçalho em HTML.
Your sales person who will contact the customer in future,Seu vendedor que entrará em contato com o cliente no futuro
Your sales person who will contact the lead in future,Seu vendedor que entrará em contato com o prospecto no futuro
Your sales person will get a reminder on this date to contact the customer,Seu vendedor receberá um lembrete nesta data para contatar o cliente
Your sales person will get a reminder on this date to contact the lead,Seu vendedor receberá um lembrete nesta data para contatar o prospecto
Your support email id - must be a valid email - this is where your emails will come!,O seu E-mail de suporte - deve ser um e-mail válido - este é o lugar de onde seus e-mails virão!
[Label]:[Field Type]/[Options]:[Width],[Label]: [Tipo do Campo] / [Opções]: [Largura]
add your own CSS (careful!),adicione seu próprio CSS (cuidado!)
adjust,ajustar
align-center,Centralizar
align-justify,Justificar
align-left,alinhar à esquerda
align-right,alinhar à direita
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,círculo de proibição
barcode,código de barras
bell,sino
bold,negrito
book,livro
bookmark,favorito
briefcase,pasta
bullhorn,megafone
calendar,calendário
camera,câmera
cancel,cancelar
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,certificado
check,marcar
chevron-down,divisa-abaixo
chevron-left,divisa-esquerda
chevron-right,divisa-direito
chevron-up,divisa-acima
circle-arrow-down,círculo de seta para baixo
circle-arrow-left,círculo de seta para a esquerda
circle-arrow-right,círculo de seta à direita
circle-arrow-up,círculo de seta para cima
cog,roda dentada
comment,comentário
create a Custom Field of type Link (Profile) and then use the 'Condition' settings to map that field to the Permission rule.,Criar um Campo Personalizado do tipo ligação (Perfil) e depois usar as configurações de &#39;Condição&#39; para mapear o campo para a regra de Permissão.
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","por exemplo, kg, Unidade, nº, m"
edit,editar
eg. Cheque Number,"por exemplo, Número do cheque"
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,sinal de exclamação
eye-close,olho fechado
eye-open,olho aberto
facetime-video,vídeo do facetime
fast-backward,retrocesso rápido
fast-forward,avanço rápido
file,arquivo
film,filme
filter,filtrar
fire,fogo
flag,bandeira
folder-close,fechar pasta
folder-open,abrir pasta
font,fonte
forward,para a frente
français,français
fullscreen,tela cheia
gift,presente
glass,vidro
globe,globo
hand-down,mão abaixo
hand-left,mão à esquerda
hand-right,mão à direita
hand-up,mão acima
has been entered atleast twice,foi inserido pelo menos duas vezes
have a common territory,tem um território comum
have the same Barcode,têm o mesmo código de barras
hdd,hd
headphones,fones de ouvido
heart,coração
home,início
icon,ícone
in,em
inbox,caixa de entrada
indent-left,indentar à esquerda
indent-right,indentar à direita
info-sign,Sinal de Informações
is a cancelled Item,é um Item cancelado
is 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,esq.
list,lista
list-alt,lista de alt-
lock,trancar
lowercase,minúsculas
magnet,ímã
map-marker,marcador do mapa
minus,menos
minus-sign,sinal de menos
mm-dd-yyyy,mm-dd-aaaa
mm/dd/yyyy,mm/dd/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 está dentro do Ano Fiscal
of,de
of type Link,do tipo ligação
off,fora
ok,ok
ok-circle,ok círculo
ok-sign,ok-sinal
old_parent,old_parent
or,ou
pause,pausa
pencil,lápis
picture,imagem
plane,avião
play,jogar
play-circle,jogo-círculo
plus,mais
plus-sign,sinal de mais
português,português
português brasileiro,português brasileiro
print,imprimir
qrcode,QRCode
question-sign,ponto de interrogação
random,aleatório
reached its end of life on,chegou ao fim de vida em
refresh,atualizar
remove,remover
remove-circle,remove-círculo
remove-sign,remover-assinar
repeat,repetir
resize-full,redimensionamento completo
resize-horizontal,redimensionamento horizontal
resize-small,redimensionamento pequeno
resize-vertical,redimensionamento vertical
retweet,retwitar
rgt,dir.
road,estrada
screenshot,captura de tela
search,pesquisar
share,ação
share-alt,partes-alt
shopping-cart,carrinho de compras
should be 100%,deve ser de 100%
signal,sinalizar
star,estrela
star-empty,estrelas vazio
step-backward,passo para trás
step-forward,passo para frente
stop,parar
tag,etiqueta
tags,etiquetas
"target = ""_blank""",target = &quot;_blank&quot;
tasks,tarefas
text-height,altura de texto
text-width,largura de texto
th,ª
th-large,ª-grande
th-list,ª-lista
thumbs-down,polegar para baixo
thumbs-up,polegar para cima
time,tempo
tint,matiz
to,para
"to be 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 datas
volume-down,diminuir volume
volume-off,mudo
volume-up,aumentar volume
warning-sign,sinal de alerta
website page link,link da página do site
wrench,chave inglesa
yyyy-mm-dd,aaaa-mm-dd
zoom-in,aumentar zoom
zoom-out,diminuir zoom
