,
 Reason: ,Motivo:
 against same operation,contra a mesma operação
 by Role ,por Função
 cannot be 0,não pode ser 0
 does not belong to the company: ,não pertence à empresa:
 has been freezed. \				Only Accounts Manager can do transaction against this account,foi congelado. \ Apenas Gerente de Contas pode fazer transação contra essa conta
" is less than equals to zero in the system, \						valuation rate is mandatory for this item","é menor do que é igual a zero no sistema, \ taxa de avaliação é obrigatório para esse item"
 is mandatory,é obrigatória
 is mandatory for GL Entry,é obrigatória para a entrada GL
 is not a ledger,não é um livro
 is not active,não está ativo
 is now the default Fiscal Year. \			Please refresh your browser for the change to take effect.,"é agora o padrão de Ano Fiscal. \ Por favor, atualize seu navegador para que a alteração tenha efeito."
 or the BOM is cancelled or inactive,ou o BOM é cancelado ou inativo
 should be same as that in ,deve ser o mesmo que na
 will become ,ficará
"""Company History""",&quot;História da Companhia&quot;
"""Team Members"" or ""Management""",&quot;Membros da Equipe&quot; ou &quot;gerenciamento&quot;
# ###.##,# # # #. # #
"#,###",# # # #
"#,###.##",# # # #. # #
"#,###.###",# # # #. # # #
"#,##,###.##",# # # # # #. # #
#.###,#. # # #
"#.###,##",#. # # # # #
%  Delivered,Entregue%
% Amount Billed,Valor% faturado
% Billed,Anunciado%
% Installed,Instalado%
% Ordered,Ordenado%
% Received,Recebido%
% of materials billed against this Delivery Note,% De materiais faturados contra esta Nota de Entrega
% of materials billed against this Purchase Order.,% De materiais faturado contra esta Ordem de Compra.
% of materials billed against this Purchase Receipt,% De materiais faturados contra este Recibo de compra
% of materials billed against this Sales Order,% De materiais faturado contra esta Ordem de Vendas
% of materials delivered against this Delivery Note,% Dos materiais entregues contra esta Nota de Entrega
% of materials delivered against this Sales Order,% Dos materiais entregues contra esta Ordem de Vendas
% of materials ordered against this Purchase Requisition,% De materiais encomendados contra esta requisição de compra
% of materials received against this Purchase Order,% Do material recebido contra esta Ordem de Compra
"' can not be managed using Stock Reconciliation.\					You can add/delete Serial No directly, \					to modify stock of this item.","&#39;Não pode ser gerido através da Reconciliação. \ Você pode adicionar / excluir Serial Não diretamente, \ para modificar o balanço deste item."
' does not exists in ,&#39;Não existe
* Will be calculated in the transaction.,* Será calculado na transação.
"**Budget Distribution** helps you distribute your budget across months if you have seasonality in your business.To distribute a budget using this distribution, set this **Budget Distribution** in the **Cost Center**","Distribuição ** ** Orçamento ajuda a distribuir o seu orçamento através meses se tiver sazonalidade na sua business.To distribuir um orçamento usando essa distribuição, definir esta distribuição do orçamento ** ** ** no Centro de Custo **"
**Currency** Master,Hoje ** ** Mestre
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,Ano Fiscal ** ** representa um Exercício. Todos os lançamentos contábeis e outras transações importantes são monitorados contra ** Ano Fiscal **.
0,0
01,01
02,02
03,03
04,04
05,05
06,06
07,07
08,08
09,09
1,1
1 Currency = [?] FractionFor e.g. 1 USD = 100 Cent,"1 Moeda = [?] FractionFor por exemplo, 1 USD = 100 Cent"
1. To maintain the customer wise item code and to make them searchable based on their code use this option,1. Para manter o cliente código do item sábio e para torná-los pesquisáveis ​​com base em seu código usar esta opção
10,10
100,100
11,11
12,12
12px,12px
13px,13px
14px,14px
15,15
15px,15px
16px,16px
2,2
2 days ago,Há 2 dias
20,20
25,25
3,3
30,30
35,35
4,4
40,40
45,45
5,5
50,50
55,55
6,6
60,60
65,65
70,70
75,75
80,80
85,85
90,90
95,95
: It is linked to other active BOM(s),: Está ligado ao BOM ativa outro (s)
: Mandatory for a Recurring Invoice.,: Obrigatório para uma factura Recorrente.
<,&lt;
<=,&lt;=
"<a href=""#!Sales Browser/Customer Group"">To manage Customer Groups, click here</a>","<a href=""#!Sales Browser/Customer Group"">Para gerenciar grupos de clientes, clique aqui</a>"
"<a href=""#!Sales Browser/Item Group"">Manage Item Groups</a>","<a href=""#!Sales Browser/Item Group"">Gerenciar Grupos de itens</a>"
"<a href=""#!Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#!Sales Browser/Territory"">Para gerenciar Território, clique aqui</a>"
"<a href=""#Sales Browser/Customer Group"">To manage Territory, click here</a>","<a href=""#Sales Browser/Customer Group"">Para gerenciar Território, clique aqui</a>"
"<a href=""#Sales Browser/Territory"">To manage Territory, click here</a>","<a href=""#Sales Browser/Territory"">Para gerenciar Território, clique aqui</a>"
"<a onclick=""msgprint('<ol>\<li><b>field:[fieldname]</b> - By Field\<li><b>naming_series:</b> - By Naming Series (field called naming_series must be present\<li><b>eval:[expression]</b> - Evaluate an expression in python (self is doc)\<li><b>Prompt</b> - Prompt user for a name\<li><b>[series]</b> - Series by prefix (separated by a dot); for example PRE.#####\</ol>')"">Naming Options</a>","<a onclick=""msgprint('<ol>\<li><b>field:[fieldname]</b> - By Field\<li><b>naming_series:</b> - By Naming Series (field called naming_series must be present\<li><b>eval:[expression]</b> - Evaluate an expression in python (self is doc)\<li><b>Prompt</b> - Prompt user for a name\<li><b>[series]</b> - Series by prefix (separated by a dot); for example PRE.#####\</ol>')"">Opções de nomeação</a>"
<b>Cancel</b> allows you change Submitted documents by cancelling them and amending them.,<b>Cancelar</b> permite alterar documentos apresentados por cancelá-los e altera-los.
"<span class=""sys_manager"">To setup, please go to Setup > Naming Series</span>","<span class=""sys_manager"">Para configurar, por favor, vá para Configuração&gt; Série Nomeando</span>"
=,=
>,&gt;
>=,&gt; =
A,A
A Customer exists with same name,Um cliente existe com mesmo nome
A Lead with this email id should exist,Um chumbo com esse ID de e-mail deve existir
A Product is shown on the website and is linked to an item.,Um produto é mostrado no site e está ligada a um item.
"A Product or a Service that is bought, sold or kept in stock.","Um produto ou um serviço que é comprado, vendido ou mantidos em estoque."
A Supplier exists with same name,Um Fornecedor existe com mesmo nome
A logical Warehouse against which stock entries are made.,Um armazém lógico contra o qual as entradas de ações são feitas.
A new popup will open that will ask you to select further conditions.,Um pop-up será aberto novo que vai pedir para você selecionar outras condições.
A symbol for this currency. For e.g. $,Um símbolo para esta moeda. Por exemplo: $
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Um distribuidor de terceiros revendedor / / comissão do agente de afiliados / / revendedor que vende os produtos para empresas de uma comissão.
A user can have multiple values for a property.,Um usuário pode ter vários valores para uma propriedade.
A+,A +
A-,A-
AB+,AB +
AB-,AB-
AMC Expiry Date,AMC Data de Validade
ATT,ATT
Abbr,Abbr
About,Sobre
About Us Settings,Quem Somos Configurações
About Us Team Member,Quem Somos Membro da Equipe
Above Value,Acima de Valor
Absent,Ausente
Acceptance Criteria,Critérios de Aceitação
Accepted,Aceito
Accepted Quantity,Quantidade Aceito
Accepted Warehouse,Armazém Aceito
Account,Conta
Account Balance,Saldo em Conta
Account Details,Detalhes da conta
Account Head,Chefe conta
Account Id,Id da conta
Account Info,Informações da Conta
Account Name,Nome da conta
Account Type,Tipo de conta
Account: ,Conta:
"Accounting entry frozen up to this date, nobody can do / modify entry except authorized person","Registro contábil congelado até a presente data, ninguém pode fazer / modificar entrada, exceto pessoa autorizada"
Accounting journal entries.,Lançamentos contábeis jornal.
Accounts,Contas
Accounts Browser,Navegador contas
Accounts Frozen Upto,Contas congeladas Upto
Accounts Home,Início contas
Accounts Payable,Contas a Pagar
Accounts Receivable,Contas a receber
Action,Ação
Action Detail,Detalhe ação
Action html,Ação html
Active,Ativo
Active: Will extract emails from ,Ativo: Será extrair e-mails a partir de
Activity,Atividade
Activity Log,Registro de Atividade
Activity Name,Nome atividade
Activity Type,Tipo de Atividade
Actual,Real
Actual Budget,Orçamento real
Actual Completion Date,Data de conclusão real
Actual Date,Data Real
Actual End Date,Data final real
Actual End Time,Fim dos Tempos real
Actual Qty,Qtde real
Actual Qty (at source/target),Qtde real (a origem / destino)
Actual Qty After Transaction,Qtde real após a transação
Actual Quantity,Quantidade real
Actual Start Date,Data de início real
Actual Start Time,Horário de início real
Add,Adicionar
Add / Edit Taxes and Charges,Adicionar / Editar Impostos e Taxas
Add A New Rule,Adicionar uma nova regra
Add A Property,Adicione uma propriedade
Add Attachments,Adicionar anexos
Add Bookmark,Adicionar marcadores
Add CSS,Adicionar CSS
Add Column,Adicionar coluna
Add Message,Adicionar mensagem
Add New Permission Rule,Adicionar regra nova permissão
Add Reply,Adicione Responder
Add Terms and Conditions for the Purchase Receipt. You can also prepare a Terms and Conditions Master and use the Template.,Adicione Termos e Condições para o recibo de compra. Você também pode preparar um Termos e Condições mestre e usar o modelo.
Add Terms and Conditions for the Purchase Requisition. You can also prepare a Terms and Conditions Master and use the Template,Adicione Termos e Condições para a requisição de compra. Você também pode preparar um Termos e Condições mestre e usar o modelo
"Add Terms and Conditions for the Quotation like Payment Terms, Validity of Offer etc. You can also prepare a Terms and Conditions Master and use the Template","Adicione Termos e Condições para a cotação como Condições de pagamento, validade de oferta etc Você também pode preparar um Termos e Condições mestre e usar o modelo"
Add code as &lt;script&gt;,Adicionar código como &lt;script&gt;
Add custom code to forms,Adicionar código personalizado para formas
Add fields to forms,Adicionar campos a formas
Add headers for standard print formats,Adicionar cabeçalhos para formatos de impressão padrão
Add or Deduct,Adicionar ou Deduzir
Add rows to set annual budgets on Accounts.,Adicionar linhas para definir orçamentos anuais nas contas.
Add to To Do,Adicionar ao que fazer
Add to To Do List of,Adicionar ao fazer a lista de
Add/Remove Recipients,Adicionar / Remover Destinatários
"Add/remove users, set roles, passwords etc","Adicionar / remover usuários, papéis definidos, senhas etc"
Additional Columns,Colunas adicionais
Additional Conditions,Condições adicionais
Additional Info,Informações Adicionais
Additional Tables,Tabelas adicionais
Address,Endereço
Address & Contacts,Endereço e contatos
Address Desc,Endereço Descr
Address Details,Detalhes de endereço
Address HTML,Abordar HTML
Address Line 1,Endereço Linha 1
Address Line 2,Endereço Linha 2
Address Line1,Linha1 endereço
Address Line2,Endereço Linha 2
Address Title,Título endereço
Address Type,Tipo de endereço
Address and other legal information you may want to put in the footer.,Endereço e informações jurídicas outro que você pode querer colocar no rodapé.
Address to be displayed on the Contact Page,O endereço deve ser exibida na página de contato
Adds a custom field to a DocType,Adiciona um campo personalizado para um DocType
Adds a custom script (client or server) to a DocType,Adiciona um script personalizado (cliente ou servidor) para um DocType
Advance Amount,Quantidade antecedência
Advance amount,Valor do adiantamento
Advanced Scripting,Script Avançadas
Advanced Settings,Configurações avançadas
Advances,Avanços
Advertisement,Anúncio
After Sale Installations,Após instalações Venda
"After cancelling the Purchase Requisition, a dialog box will ask you reason for cancellation which will be reflected in this field","Depois de cancelar a requisição de compra, uma caixa de diálogo irá pedir-lhe razão para cancelamento que será refletido neste campo"
Against,Contra
Against Account,Contra Conta
Against Docname,Contra docName
Against Doctype,Contra Doctype
Against Document Date,Contra Data do documento
Against Document Detail No,Contra Detalhe documento n
Against Document No,Contra documento n
Against Expense Account,Contra a conta de despesas
Against Income Account,Contra Conta Renda
Against Journal Voucher,Contra Vale Jornal
Against Purchase Invoice,Contra a Nota Fiscal de Compra
Against Sales Invoice,Contra a nota fiscal de venda
Against Voucher,Contra Vale
Against Voucher Type,Tipo contra Vale
Agent,Agente
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. The package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".For Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Sales BOM Item.Note: BOM = Bill of Materials","Grupo agregado de Itens ** ** em outro item **. ** Isso é útil se você está empacotando um certo ** ** Itens em um pacote e você manter o estoque dos itens embalados ** ** e não agregar o item **. ** O pacote ** ** item terá &quot;é o item da&quot; como &quot;Não&quot; e &quot;é o item de vendas&quot; como &quot;Sim&quot;, por exemplo:. Se você está vendendo laptops e mochilas separadamente e têm um preço especial se o cliente compra tanto , então o Laptop Backpack + será uma nova Vendas BOM Item.Note: BOM = Bill of Materials"
Aging Date,Envelhecimento Data
All Active Leads,Todos os eletrodos ativos
All Addresses.,Todos os endereços.
All Blog Subscribers,Todos os Assinantes Blog
All Contact,Todos Contato
All Contacts,Todos os contatos
All Contacts.,Todos os contatos.
All Customer Contact,Todos contato do cliente
All Customer Contacts,Todos os contatos de clientes
All Employee (Active),Todos Empregado (Ativo)
All Lead (Open),Todos chumbo (Aberto)
All Leads,Todos Leads
All Products or Services.,Todos os produtos ou serviços.
All Sales Partner Contact,Todos Contato parceiro de vendas
All Sales Person,Todos Vendas Pessoa
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Todas as transações de vendas pode ser marcado contra diversas Pessoas ** ** vendas de modo que você pode definir e monitorar metas.
All Supplier Contact,Todos contato fornecedor
All attendance dates inbetween selected Attendance From Date and Attendance To Date will come in the template with employees list.,Todos atendimento data inbetween Atendimento selecionada De Data e atendimento a Data virá no modelo com lista de funcionários.
"All export related fields like currency, conversion rate, export total, export grand total etc are available in <br>Delivery Note, POS, Quotation, Sales Invoice, Sales Order etc.","Todos os campos de exportação relacionados como moeda, taxa de conversão, o total de exportação, etc exportação de total estão disponíveis em <br> Nota de Entrega, POS, cotação, nota fiscal de venda, Ordem de vendas etc"
"All import related fields like currency, conversion rate, import total, import grand total etc are available in <br>Purchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.","Todos os campos de importação relacionados como moeda, taxa de conversão total de importação, etc importação de total estão disponíveis em <br> Recibo de compra, cotação Fornecedor, Nota Fiscal de Compra, Ordem de Compra, etc"
All items have already been transferred \				for this Production Order.,Todos os itens já foram transferidos \ para esta Ordem de Produção.
"All possible Workflow States and roles of the workflow. <br>Docstatus Options: 0 is""Saved"", 1 is ""Submitted"" and 2 is ""Cancelled""","Todos os eventuais Estados de fluxo de trabalho e os papéis do fluxo de trabalho. <br> Docstatus Opções: 0 é &quot;Salvo&quot;, 1 é &quot;Enviado&quot; e 2 é &quot;Cancelado&quot;"
Allocate,Distribuir
Allocate leaves for the year.,Alocar folhas para o ano.
Allocated (%),Alocados (%)
Allocated Amount,Montante afectado
Allocated Budget,Orçamento atribuído
Allocated amount,Montante atribuído
Allow Attach,Permitir Anexar
Allow Bill of Materials,Permitir Lista de Materiais
Allow Negative Balance,Permitir saldo negativo
Allow Negative Stock,Permitir estoque negativo
Allow Production Order,Permitir Ordem de Produção
Allow Rename,Permitir Renomear
Allow Samples,Permitir Amostras
Allow User,Permitir que o usuário
Allow Users,Permitir que os usuários
Allow on Submit,Permitir em Enviar
Allow the following users to make Leave Applications for block days.,Permitir que os usuários a seguir para fazer aplicações deixam para os dias de bloco.
Allow this price in purchase related forms,Permitir esse preço em formas de compra relacionados
Allow this price in sales related forms,Permitir esse preço em vendas formas relacionadas
Allow user to login only after this hour (0-24),Permitir que o usuário fazer o login somente após esta hora (0-24)
Allow user to login only before this hour (0-24),Permitir que o usuário fazer o login antes só esta hora (0-24)
Allowance Percent,Percentual subsídio
Allowed,Permitido
Amend,Emendar
Amended From,Alterado De
Amendment Date,Data emenda
Amount,Quantidade
Amount <=,Quantidade &lt;=
Amount >=,Quantidade&gt; =
Amount*,* Quantidade
"An icon file with .ico extension. Should be 16 x 16 px. Generated using a favicon generator. [<a href=""http://favicon-generator.org/"" target=""_blank"">favicon-generator.org</a>]","Um arquivo com ícone. Extensão ico. Deve ser de 16 x 16 px. Gerado usando um gerador de favicon. [ <a href=""http://favicon-generator.org/"" target=""_blank"">favicon-generator.org</a> ]"
Analytics,Analítica
Answer,Responder
"Any other comments, noteworthy effort that should go in the records.","Quaisquer outros comentários, esforço notável que deve ir para os registros."
Applicable Holiday List,Lista de férias aplicável
Applicable To (Designation),Para aplicável (Designação)
Applicable To (Employee),Para aplicável (Employee)
Applicable To (Role),Para aplicável (Papel)
Applicable To (User),Para aplicável (Usuário)
Applicable only if valuation method is moving average,Aplicável apenas se o método de avaliação é a média móvel
Applicant Name,Nome do requerente
Applicant for a Job,Candidato a um emprego
Applicant for a Job (extracted from jobs email).,Candidato a um emprego (extraído de e-mail empregos).
Applications for leave.,Os pedidos de licença.
Applies to Company,Aplica-se a Empresa
Apply / Approve Leaves,Aplicar / Aprovar Folhas
Appraisal,Avaliação
Appraisal Goal,Meta de avaliação
Appraisal Goals,Metas de avaliação
Appraisal Template,Modelo de avaliação
Appraisal Template Goal,Meta Modelo de avaliação
Appraisal Template Title,Título do modelo de avaliação
Approval Status,Status de Aprovação
Approved,Aprovado
Approver,Aprovador
Approving Role,Aprovar Papel
Approving User,Aprovar Usuário
Are you sure you want to delete the attachment?,Tem certeza de que deseja excluir o anexo?
Arial,Arial
Arrear Amount,Quantidade atraso
"As a best practice, do not assign the same set of permission rule to different Roles instead set multiple Roles to the User","Como uma boa prática, não atribuir o mesmo conjunto de regra de permissão para diferentes funções, em vez estabelecidos múltiplos papéis ao Usuário"
As existing qty for item: ,Como qty existente para o item:
As per Stock UOM,Como por Banco UOM
Ascending,Ascendente
Assign To,Atribuir a
Assigned By,Atribuído por
Associate a DocType to the Print Format,Associar um DOCTYPE para o formato de impressão
Atleast one warehouse is mandatory,Pelo menos um armazém é obrigatório
Attach,Anexar
Attach Document Print,Anexar cópia do documento
Attachments,Anexos
Attempted to Contact,Tentou entrar em contato
Attendance,Comparecimento
Attendance Control Panel,Painel de Controle de Presença
Attendance Date,Data de atendimento
Attendance Details,Detalhes atendimento
Attendance From Date,Presença de Data
Attendance To Date,Atendimento para a data
Attendance record.,Recorde de público.
Attributions,Atribuições
Authorization Control,Controle de autorização
Authorization Rule,Regra autorização
Authorized Role (Frozen Entry),Papel Autorizado (Entrada Frozen)
Authourized Role (Frozen Entry),Papel Authourized (Entrada Frozen)
Auto Email Id,Email Id Auto
Auto Name,Nome Auto
Auto generated,Auto gerado
Automatically updated via Stock Entry of type Manufacture/Repack,Atualizado automaticamente através da entrada de Fabricação tipo / Repack
Autoreply when a new mail is received,Autoreply quando um novo e-mail é recebido
Available Qty at Warehouse,Qtde Disponível em Armazém
"Available in BOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet","Disponível em BOM, Nota de Entrega, Nota Fiscal de Compra, Ordem de Produção, Ordem de Compra, Recibo de compra, nota fiscal de venda, pedidos de vendas, entrada de material, quadro de horários"
Average Discount,Desconto médio
B,B
B+,B +
B-,B-
BILL,BILL
BILLJ,BILLJ
BOM,BOM
BOM Detail No,BOM nenhum detalhe
BOM Explosion Item,BOM item explosão
BOM Item,Item BOM
BOM No,BOM Não
BOM No. for a Finished Good Item,BOM Não. para um item acabado
BOM Operation,Operação BOM
BOM Operations,Operações BOM
BOM Replace Tool,BOM Ferramenta Substituir
BOM replaced,BOM substituído
Background Color,Cor de Fundo
Background Image,Imagem de Fundo
Background shade of the top menu bar,Sombra de fundo da barra de menu superior
Bank,Banco
Bank A/C No.,Bank A / C N º
Bank Account,Conta bancária
Bank Account No.,Banco Conta N º
Bank Balance,Saldo Banco
Bank Name,Nome do banco
Bank Reconciliation,Banco Reconciliação
Bank Reconciliation Detail,Banco Detalhe Reconciliação
Bank Voucher,Vale banco
Bank or Cash,Banco ou Caixa
Banner,Bandeira
Banner HTML,HTML bandeira
Barcode,Código de barras
Based On,Baseado em
Based on,Baseado em
Basic Info,Informações Básicas
Basic Information,Informações Básicas
Basic Rate,Taxa Básica
Basic Rate*,* Taxa Básica
Batch,Fornada
Batch (lot) of an Item.,Batch (lote) de um item.
Batch Finished Date,Terminado lote Data
Batch ID,Lote ID
Batch No,No lote
Batch Started Date,Iniciado lote Data
Begin this page with a slideshow of images,Comece esta página com um slideshow de imagens
Better Prospects,Melhores perspectivas
Bill Date,Data Bill
Bill No,Projeto de Lei n
Bill of Material to be considered for manufacturing,Lista de Materiais a serem considerados para a fabricação
Bill of Materials,Lista de Materiais
Bill of Materials (BOM),Lista de Materiais (BOM)
Billed,Faturado
Billed Amt,Faturado Amt
Billed Quantity,Quantidade faturada
Billing Status,Estado de faturamento
Bills raised by Suppliers.,Contas levantada por Fornecedores.
Bills raised to Customers.,Contas levantou a Clientes.
Bin,Caixa
Bio,Bio
Birth Date,Data de Nascimento
Black,Preto
Blob,Gota
Block Date,Bloquear Data
Block Days,Dias bloco
Block Holidays on important days.,Bloquear feriados em dias importantes.
Block leave applications by department.,Bloquear deixar aplicações por departamento.
Blog,Blog
Blog Subscriber,Assinante Blog
Blog entry.,Blog entrada.
Blood Group,Grupo sanguíneo
Bookmarks,Marcadores
Branch,Ramo
Brand,Marca
Brand HTML,Marca HTML
Brand Name,Marca
"Brand is what appears on the top-right of the toolbar. If it is an image, make sure ithas a transparent background and use the &lt;img /&gt; tag. Keep size as 200px x 30px","Marca é o que aparece no canto superior direito da barra de ferramentas. Se for uma imagem, ithas certeza de um fundo transparente e usar a tag /&gt; &lt;img. Manter o tamanho como 200px x 30px"
Brand master.,Mestre marca.
Branding and Printing,Branding e Impressão
Brands,Marcas
Breakdown,Colapso
Budget,Orçamento
Budget Allocated,Orçamento alocado
Budget Control,Controle de Orçamento
Budget Detail,Detalhe orçamento
Budget Details,Detalhes Orçamento
Budget Distribution,Distribuição orçamento
Budget Distribution Detail,Detalhe Distribuição orçamento
Budget Distribution Details,Distribuição Detalhes Orçamento
Build Report,Relatório de construir
Bulk Email,E-mail em massa
Bulk Email records.,Volume de registros e-mail.
Bundle items at time of sale.,Bundle itens no momento da venda.
Button,Botão
Buyer of Goods and Services.,Comprador de Mercadorias e Serviços.
Buying,Comprar
Buying Cost,Custo de compra
Buying Cost will be updated from Purchase Orders and Purchase Receipts. <br>The buying cost will calculated by moving average method.,Custo de compra será atualizado de ordens de compra e recibos de compra. <br> O custo de compra será calculado pelo método de mover a média.
Buying Home,Compra de casa
By,Por
C,C
C-FORM/,C-FORM /
C-Form,C-Form
C-Form Applicable,C-Form Aplicável
C-Form Invoice Detail,C-Form Detalhe Fatura
C-Form No,C-Forma Não
CGHelp,CGHelp
CI/2010-2011/,CI/2010-2011 /
COMM-,COMM-
CSS,CSS
CTC,CTC
CUST,CUST
CUSTMUM,CUSTMUM
Calculate Charges,Calcular Encargos
Calculate Tax,Calcular o imposto
Calculate Taxes and Charges,Calcular Impostos e Taxas
Calculate Total Score,Calcular a pontuação total
Calendar,Calendário
Call,Chamar
Campaign,Campanha
Campaign Name,Nome da campanha
Can only be exported by users with role 'Report Manager',Só podem ser exportados por usuários com &quot;Gerenciador de Relatórios&quot; papel
Cancel,Cancelar
Cancel Reason,Cancelar Razão
Cancel permission also allows the user to delete a document (if it is not linked to any other document).,Cancelar permissão também permite ao usuário excluir um documento (se ele não está vinculado a qualquer outro documento).
Cancelled,Cancelado
Cannot ,Não pode
Capacity,Capacidade
Capacity Units,Unidades de capacidade
Career History,Histórico
Carry Forward,Transportar
Carry Forwarded Leaves,Carry Folhas encaminhadas
Cash,Numerário
Cash Voucher,Comprovante de dinheiro
Cash/Bank Account,Caixa / Banco Conta
Category,Categoria
Category of customer as entered in Customer master,"Categoria de cliente, entrou no Cadastro de Clientes"
Cell Number,Número de células
Center,Centro
"Certain documents should not be changed once final, like an Invoice for example. The final state for such documents is called <b>Submitted</b>. You can restrict which roles can Submit.","Alguns documentos não deve ser alterado, uma vez final, como uma nota fiscal, por exemplo. O estado final de tais documentos é chamado <b>Enviado.</b> Você pode restringir as funções que podem Enviar."
Certificate,Certidão
Challan Date,Data Challan
Challan No,Não Challan
Change UOM for an Item.,Alterar UOM de um item.
Change background fonts etc,Alterar etc fontes fundo
"Change entry properties (hide fields, make mandatory etc)","Alterar as propriedades de entrada (campos de couro, etc tornam obrigatório)"
Change the starting / current sequence number of an existing series.,Alterar o número de seqüência de partida / corrente de uma série existente.
Channel Partner,Parceiro de Canal
Charge,Carga
Chargeable,Imputável
Chart of Accounts,Plano de Contas
Chart of Cost Centers,Plano de Centros de Custo
Chat,Conversar
Cheating FieldPlease do not delete ,Engano FieldPlease não exclua
Check,Verificar
Check / Uncheck roles assigned to the Profile. Click on the Role to find out what permissions that Role has.,Verifique / Desmarque papéis atribuídos ao perfil. Clique sobre o Papel para descobrir o que as permissões que papel tem.
Check all the items below that you want to send in this digest.,Verifique todos os itens abaixo que você deseja enviar esta digerir.
Check how the newsletter looks in an email by sending it to your email.,Verifique como o boletim olha em um e-mail enviando-o para o seu e-mail.
"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Verifique se factura recorrente, desmarque a parar recorrente ou colocar Data final adequada"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Verifique se você precisa automáticos de facturas recorrentes. Depois de apresentar qualquer nota fiscal de venda, seção Recorrente será visível."
Check if you want to send salary slip in mail to each employee while submitting salary slip,Verifique se você quiser enviar folha de salário no correio a cada empregado ao enviar folha de salário
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,"Marque esta opção se você deseja forçar o usuário para selecionar uma série antes de salvar. Não haverá nenhum padrão, se você verificar isso."
Check this if you want to show in website,Marque esta opção se você deseja mostrar no site
Check this to make this the default letter head in all prints,Marque esta opção para tornar esta a cabeça carta padrão em todas as impressões
Check this to pull emails from your mailbox,Marque esta a puxar e-mails de sua caixa de correio
Check to activate,Marque para ativar
Check to make Shipping Address,Verifique para ter endereço de entrega
Check to make primary address,Verifique para ter endereço principal
Checked,Verificado
"Checking Operator (To Fld, Operator, From Fld)","Verificando Operador (Para Fld, Operador De Fld)"
Cheque,Cheque
Cheque Date,Data Cheque
Cheque Number,Número de cheques
Child Tables are shown as a Grid in other DocTypes.,Mesas para crianças são mostrados como uma grade no DOCTYPEs outros.
City,Cidade
City/Town,Cidade / Município
Claim Amount,Quantidade reivindicação
Claims for expenses made on behalf of the organization.,As reclamações por despesas feitas em nome da organização.
Class / Percentage,Classe / Percentual
Classification of Customers by region,Classificação de clientes por região
Clear Cache & Refresh,Limpar Cache &amp; Atualizar
Clear Pending,Limpar Pendente
Clear Table,Tabela clara
Clearance Date,Data de Liquidação
Click on button in the 'Condition' column and select the option 'User is the creator of the document',Clique no botão no &#39;Condição&#39; coluna e selecione a opção &quot;Usuário é o criador do documento &#39;
Click on edit button to start a new report.,Clique no botão de edição para iniciar um novo relatório.
Click to Expand / Collapse,Clique para Expandir / Recolher
Client,Cliente
Client Script,Script de cliente
Closed,Fechado
Closing Account Head,Fechando Chefe Conta
Closing Date,Data de Encerramento
Closing Fiscal Year,Encerramento do exercício social
CoA Help,Ajuda CoA
Code,Código
Cold Calling,Cold Calling
Collections,Coleções
Color,Cor
Column Break,Quebra de coluna
Columns,Colunas
Comma separated list of email addresses,Lista separada por vírgulas de endereços de e-mail
Comment,Comentário
Comment By,Comentário por
Comment By Fullname,Comentário por Fullname
Comment Date,Comentário Data
Comment Docname,Comentário docName
Comment Doctype,Comentário Doctype
Comment Time,Comentário Tempo
Comments,Comentários
Commission Rate,Taxa de Comissão
Commission Rate (%),Comissão Taxa (%)
Commission partners and targets,Parceiros da Comissão e metas
Communication,Comunicação
Communication HTML,Comunicação HTML
Communication History,História da comunicação
Communication Log,Log Comunicação
Communication Medium,Meio de comunicação
Communication by,Comunicação por
Communication log.,Log de comunicação.
Communication type,Tipo de comunicação
Company,Companhia
Company Control,Controle da Companhia
Company Details,Detalhes da empresa
Company History,História da Empresa
Company History Heading,História da Empresa título
Company Info,Informações da empresa
Company Introduction,Introdução da Empresa
Company Name,Nome da empresa
Company branches.,Filiais da empresa.
Company departments.,Departamentos da empresa.
Company registration numbers for your reference. Example: VAT Registration Numbers etc.,Números da empresa de registro para sua referência. Exemplo: IVA números de matrícula etc
Company registration numbers for your reference. Tax numbers etc.,"Números da empresa de registro para sua referência. Números fiscais, etc"
Complaint,Reclamação
Complete By,Ao completar
Completed,Concluído
Completion Date,Data de Conclusão
Completion Status,Status de conclusão
Confirmed orders from Customers.,Confirmado encomendas de clientes.
Consider Tax or Charge for,Considere imposto ou encargo para
"Consider this Price List for fetching rate. (only which have ""For Buying"" as checked)","Considere esta Lista de Preços para a recuperação de taxa. (Só que &quot;para a compra&quot;, como verificado)"
Consultant,Consultor
Consumed Qty,Qtde consumida
Contact,Contato
Contact Control,Fale Controle
Contact Desc,Contato Descr
Contact Details,Contacto
Contact Email,Contato E-mail
Contact HTML,Contato HTML
Contact Info,Informações para contato
Contact Mobile No,Contato móveis não
Contact Name,Nome de Contato
Contact No,Contato No
Contact No.,Fale Não.
Contact Person,Pessoa de contato
Contact Us Settings,Contato Configurações
Contact in Future,Fale no Futuro
"Contact options, like ""Sales Query, Support Query"" etc each on a new line or separated by commas.","Opções de contato, como &quot;consulta de vendas, suporte de consulta&quot; etc cada um em uma nova linha ou separados por vírgulas."
Contacted,Contactado
Content,Conteúdo
Content Type,Tipo de conteúdo
Content in markdown format that appears on the main side of your page,Conteúdos em formato markdown que aparece no lado principal de sua página
Content web page.,Página web de conteúdo.
Contra Voucher,Vale Contra
Contract End Date,Data final do contrato
Control Panel,Painel de controle
Conversion Factor,Fator de Conversão
Conversion Rate,Taxa de Conversão
Convert into Recurring Invoice,Converter em fatura Recorrente
Converted,Convertido
Copyright,Direitos autorais
Core,Núcleo
Cost Center,Centro de Custos
Cost Center Details,Custo Detalhes Centro
Cost Center Name,Custo Nome Centro
Cost Center must be specified for PL Account: ,Centro de custos deve ser especificado para Conta PL:
Cost to Company,Custo para empresa
Costing,Custeio
Country,País
Country Name,Nome do País
Create,Criar
Create Bank Voucher for the total salary paid for the above selected criteria,Criar Vale do Banco Mundial para o salário total pago para os critérios acima selecionados
Create Production Orders,Criar ordens de produção
Create Receiver List,Criar Lista de Receptor
Create Salary Slip,Criar folha de salário
"Create a price list from Price List master and enter standard ref rates against each of them. On selection of a price list in Quotation, Sales Order or Delivery Note, corresponding ref rate will be fetched for this item.","Criar uma lista de preços de mestre Lista de Preços e introduzir taxas de ref padrão contra cada um deles. Na seleção de uma lista de preços em Cotação Ordem de Vendas, ou nota de entrega, a taxa de ref correspondente será obtido para este item."
Create and Send Newsletters,Criar e enviar Newsletters
Created Account Head: ,Chefe Conta criada:
Created Customer Issue,Problema do cliente criado
Created Group ,Grupo criado
Created Opportunity,Criado Oportunidade
Created Support Ticket,Ticket Suporte criado
Creates salary slip for above mentioned criteria.,Cria folha de salário para os critérios acima mencionados.
Credit,Crédito
Credit Amt,Crédito Amt
Credit Card Voucher,Comprovante do cartão de crédito
Credit Controller,Controlador de crédito
Credit Days,Dias de crédito
Credit Limit,Limite de Crédito
Credit Note,Nota de Crédito
Credit To,Para crédito
Criteria Name,Nome critérios
Cross List Item Group,Atravesse Grupo item da lista
Cross Listing of Item in multiple groups,Atravesse de Listagem do item em vários grupos
Currency,Moeda
Currency & Price List,Moeda e Lista de Preços
Currency Format,Formato de moeda
Currency Name,Nome da Moeda
Current Accommodation Type,Tipo de Alojamento atual
Current Address,Endereço Atual
Current BOM,BOM atual
Current Fiscal Year,Atual Exercício
Current Stock,Estoque atual
Current Stock UOM,UOM Estoque atual
Current Value,Valor Atual
Current status,Estado atual
Cust/Supp Address,Cust / Supp Endereço
Cust/Supp Name,Cust / Supp Nome
Custom Autoreply Message,Mensagem de resposta automática personalizada
Custom CSS,CSS personalizado
Custom Field,Campo personalizado
Custom Message,Mensagem personalizada
Custom Query,Consulta personalizada
Custom Reports,Relatórios Customizados
Custom Script,Script personalizado
Custom Startup Code,Código de inicialização personalizada
Custom?,Personalizado?
Customer,Cliente
Customer / Item Name,Cliente / Nome do item
Customer Account,Conta de Cliente
Customer Address,Endereço do cliente
Customer Addresses And Contacts,Endereços e contatos de clientes
Customer Code,Código Cliente
Customer Codes,Códigos de clientes
Customer Details,Detalhes do cliente
Customer Feedback,Comentário do cliente
Customer Group,Grupo de Clientes
Customer Group Name,Nome do grupo de clientes
Customer Intro,Cliente Intro
Customer Issue,Edição cliente
Customer Issue No,Edição cliente não
Customer Issue against a Serial No (warranty).,Edição cliente contra um Não Serial (garantia).
Customer Master created by ,Cadastro de Clientes criado por
Customer Name,Nome do cliente
Customer Type,Tipo de Cliente
Customer classification tree.,Árvore de classificação do cliente.
Customer database.,Banco de dados do cliente.
Customer's Currency,Hoje Cliente
Customer's Item Code,Código do Cliente item
Customer's Vendor,Vendedor cliente
Customer's currency,Moeda cliente
"Customer's currency - If you want to select a currency that is not the default currency, then you must also specify the Currency Conversion Rate.","Moeda do cliente - Se você deseja selecionar uma moeda que não é a moeda padrão, então você também deve especificar a taxa de conversão."
Customer/Supplier,Cliente / Fornecedor
Customerwise Discount,Desconto Customerwise
Customize,Personalize
Customize Form,Personalize Forma
Customize Form Field,Personalize campo de formulário
"Customize Label, Print Hide, Default etc.","Personalize Etiqueta, Esconder-impressão, etc Padrão"
Customize the Notification,Personalize a Notificação
Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,Personalize o texto introdutório que vai como uma parte do que e-mail. Cada transação tem um texto separado introdutório.
DN,DN
DN Detail,Detalhe DN
Daily,Diário
"Daily, weekly, monthly email Digests","Diariamente, e-mail, semanal, mensal Digests"
Danger,Perigo
Data,Dados
Data Import,Importação de Dados
Data Import Tool,Dados da Ferramenta de Importação
Database,Banco de dados
Database of potential customers.,Banco de dados de clientes potenciais.
Date,Data
Date Format,Formato de data
Date Of Retirement,Data da aposentadoria
Date is repeated,Data é repetido
Date of Birth,Data de Nascimento
Date of Issue,Data de Emissão
Date of Joining,Data da Unir
Date on which lorry started from supplier warehouse,Data em que o camião começou a partir de armazém fornecedor
Date on which lorry started from your warehouse,Data em que o camião começou a partir de seu armazém
Date on which the lead was last contacted,Data em que a liderança foi passada contactado
Dates,Datas
Datetime,Datetime
Days for which Holidays are blocked for this department.,Dias para que feriados são bloqueados para este departamento.
Dealer,Revendedor
Dear,Caro
Debit,Débito
Debit Amt,Débito Amt
Debit Note,Nota de Débito
Debit To,Para débito
Debit or Credit,Débito ou crédito
Deduct,Subtrair
Deduction,Dedução
Deduction Type,Tipo de dedução
Deduction1,Deduction1
Deductions,Deduções
Default,Omissão
Default Account,Conta Padrão
Default BOM,BOM padrão
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Conta padrão Banco / Cash será atualizado automaticamente na fatura POS quando este modo for selecionado.
Default Bank Account,Conta Bancária Padrão
Default Commission Rate,Taxa de Comissão padrão
Default Company,Empresa padrão
Default Cost Center,Centro de Custo Padrão
Default Cost Center for tracking expense for this item.,Centro de Custo padrão para controle de despesas para este item.
Default Currency,Moeda padrão
Default Customer Group,Grupo de Clientes padrão
Default Expense Account,Conta Despesa padrão
Default Home Page,Home Page padrão
Default Home Pages,Início Páginas padrão
Default Income Account,Conta Rendimento padrão
Default Item Group,Grupo Item padrão
Default Price List,Lista de Preços padrão
Default Price List Currency,Moeda predefinida Lista de Preços
Default Print Format,Formato de impressão padrão
Default Product Category,Categoria de produto padrão
Default Purchase Account in which cost of the item will be debited.,Conta de compra padrão em que o custo do item será debitado.
Default Reserved Warehouse,Reservado padrão Armazém
Default Sales Partner,Parceiro de vendas padrão
Default Settings,Predefinições
Default Source Warehouse,Armazém da fonte padrão
Default Stock UOM,Padrão da UOM
Default Supplier Type,Tipo de fornecedor padrão
Default Target Warehouse,Armazém alvo padrão
Default Territory,Território padrão
Default Unit of Measure,Unidade de medida padrão
Default Valuation Method,Método de Avaliação padrão
Default Value,Valor padrão
Default Warehouse Type,Tipo Armazém padrão
Default values are set across the role and can be over-ridden by user permissions.,Os valores padrão são definidos através da função e pode ser cancelado por permissões de usuário.
"Default: ""Product Search""",Default: &quot;Pesquisa de Produto&quot;
DefaultValue,DefaultValue
Defaults,Padrões
"Define Budget for this Cost Center. To set budget action, see <a href=""#!List/Company"">Company Master</a>","Definir Orçamento para este Centro de Custo. Para definir ação do orçamento, consulte <a href=""#!List/Company"">Mestre Empresa</a>"
Define Rule,Definir regra
Defines actions on states and the next step and allowed roles.,Define ações em estados e no próximo passo e papéis permitidos.
Defines workflow states and rules for a document.,Define os estados do workflow e regras para um documento.
Delete,Excluir
Delivered,Entregue
Delivered Items To Be Billed,Itens entregues a ser cobrado
Delivered Qty,Qtde entregue
Delivery (shipment) to customers.,Entrega (embarque) para os clientes.
Delivery Address,Endereço de entrega
Delivery Date,Data de entrega
Delivery Details,Detalhes da entrega
Delivery Document No,Documento de Entrega Não
Delivery Document Type,Tipo de Documento de Entrega
Delivery Note,Guia de remessa
Delivery Note Item,Item Nota de Entrega
Delivery Note Items,Nota Itens de entrega
Delivery Note Message,Mensagem Nota de Entrega
Delivery Note No,Nota de Entrega Não
Delivery Note Packing Item,Entrega do item embalagem Nota
Delivery Note Required,Nota de Entrega Obrigatório
Delivery Status,Estado entrega
Delivery Time,Prazo de entrega
Department,Departamento
Depend on LWP,Dependem LWP
Depends On,Depende
Depends on LWP,Depende LWP
Descending,Descendente
Description,Descrição
Description HTML,Descrição HTML
Description of a Job Opening,Descrição de uma vaga de emprego
Desert,Deserto
Designation,Designação
Desktop,Área de trabalho
Detail Name,Nome detalhes
Detailed Breakup of the totals,Breakup detalhada dos totais
Details,Detalhes
Did not add.,Não adicionar.
Did not cancel,Não cancelar
Did not save,Não salvar
Difference,Diferença
"Different ""States"" this document can exist in. Like ""Open"", ""Pending Approval"" etc.","Diferente &quot;Estados&quot;, este documento pode existir dentro Como &quot;Abrir&quot;, &quot;Aprovação Pendente&quot; etc"
Disabled,Inválido
Disabled Filters,Filtros com deficiência
Discount  %,% De desconto
Discount %,% De desconto
Discount (%),Desconto (%)
"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Campos de desconto estará disponível em Ordem de Compra, Recibo de Compra, Nota Fiscal de Compra"
Discount(%),Desconto (%)
Display,Exibir
Display Settings,Configurações de exibição
Display all the individual items delivered with the main items,Exibir todos os itens individuais entregues com os principais itens
Distinct unit of an Item,Unidade distinta de um item
Distribute transport overhead across items.,Distribua por cima o transporte através itens.
Distribution Id,Id distribuição
Distribution Name,Nome de distribuição
Distributor,Distribuidor
Divorced,Divorciado
Do not show any symbol like $ etc next to currencies.,Não mostrar qualquer símbolo como US $ etc ao lado de moedas.
Doc Name,Nome Doc
Doc Status,Estado Doc
Doc Type,Tipo Doc
DocField,DocField
DocPerm,DocPerm
DocType,DOCTYPE
DocType Details,Detalhes DOCTYPE
DocType Label,Etiqueta DocType
DocType Mapper,Mapper DocType
DocType is a Table / Form in the application.,DocType é uma Tabela / Form na aplicação.
DocType on which this Workflow is applicable.,DOCTYPE em que este fluxo de trabalho é aplicável.
DocType or Field,DocType ou Campo
Document,Documento
Document Description,Descrição documento
Document Status transition from ,Documento de transição de estado do
Document Type,Tipo de Documento
Document is only editable by users of role,Documento só é editável por usuários de papel
Document to rename,Documento para renomear
Documentation,Documentação
Documents,Documentos
Domain List,Lista de Domínios
Download Backup,Descarregar o Backup
Download Materials Required,Baixe Materiais Necessários
Download Template,Baixe Template
Download a report containing all raw materials with their latest inventory status,Baixe um relatório contendo todas as matérias-primas com o seu estado mais recente inventário
Draft,Rascunho
Drafts,Rascunhos
Drag to sort columns,Arraste para classificar colunas
Due Date,Data de Vencimento
Duration,Duração
EMP/,EMP /
ESIC CARD No,CARTÃO ESIC Não
ESIC No.,ESIC Não.
Earning,Ganhando
Earning & Deduction,Ganhar &amp; Dedução
Earning Type,Ganhando Tipo
Earning1,Earning1
Edit,Editar
Editable,Editável
Educational Qualification,Qualificação Educacional
Educational Qualification Details,Detalhes educacionais de qualificação
Eg. smsgateway.com/api/send_sms.cgi,Por exemplo. smsgateway.com / api / send_sms.cgi
Email,E-mail
Email (By company),E-mail (por empresa)
Email Digest,E-mail Digest
Email Digest Settings,E-mail Digest Configurações
Email Host,Anfitrião e-mail
Email Id,Id e-mail
"Email Id must be unique, already exists for: ","Id e-mail deve ser único, já existe para:"
"Email Id where a job applicant will email e.g. ""jobs@example.com""",Id e-mail onde um candidato a emprego vai enviar e-mail &quot;jobs@example.com&quot; por exemplo
Email Login,Login Email
Email Password,Senha de e-mail
Email Sent,E-mail enviado
Email Sent?,E-mail enviado?
Email Settings,Configurações de e-mail
Email Settings for Outgoing and Incoming Emails.,Configurações de e-mail para e-mails enviados e recebidos.
Email Signature,Assinatura de e-mail
Email Use SSL,Email Usar SSL
"Email addresses, separted by commas","Endereços de email, separted por vírgulas"
"Email settings for jobs email id ""jobs@example.com""",Configurações de e-mail para e-mail empregos id &quot;jobs@example.com&quot;
"Email settings to extract Leads from sales email id e.g. ""sales@example.com""","Configurações de e-mail para extrair Leads de vendas de e-mail, por exemplo ID &quot;sales@example.com&quot;"
Embed image slideshows in website pages.,Incorporar apresentações de imagem em páginas do site.
Emergency Contact Details,Detalhes de contato de emergência
Emergency Phone Number,Número de telefone de emergência
Employee,Empregado
Employee Designation.,Designação empregado.
Employee Details,Detalhes do Funcionários
Employee Education,Educação empregado
Employee External Work History,Empregado história de trabalho externo
Employee Internal Work History,Empregado História Trabalho Interno
Employee Internal Work Historys,Historys funcionário interno de trabalho
Employee Name,Nome do Funcionário
Employee Number,Número empregado
Employee Records to be created by ,Registros de empregados a serem criados por
Employee Setup,Configuração empregado
Employee Training,Treinamento de funcionários
Employee Type,Tipo de empregado
Employee grades,Notas de funcionários
Employee record is created using selected field. ,Registro de empregado é criado usando campo selecionado.
Employee records.,Registros de funcionários.
Employees Email Id,Funcionários ID e-mail
Employment Details,Detalhes de emprego
Employment Type,Tipo de emprego
Enable / disable currencies.,Ativar / desativar moedas.
Enabled,Habilitado
Enables <b>More Info.</b> in all documents,<b>Mais informações permite.</b> Em todos os documentos
Encashment Date,Data cobrança
End Date,Data final
End date of current invoice's period,Data final do período de fatura atual
End of Life,Fim da Vida
Enter Email Id to receive Error Report sent by users.E.g.: support@iwebnotes.com,Digite o Id-mail para receber Relatório de erros enviados por users.Eg: support@iwebnotes.com
Enter Form Type,Digite o Tipo de formulário
Enter Row,Digite Row
Enter campaign name if the source of lead is campaign.,Digite o nome da campanha que a fonte de chumbo é a campanha.
"Enter default value fields (keys) and values. If you add multiple values for a field, the first one will be picked. These defaults are also used to set ""match"" permission rules. To see list of fields, go to <a href=""#Form/Customize Form/Customize Form"">Customize Form</a>.","Digite campos padrão de valor (teclas) e valores. Se você adicionar vários valores para um campo, o primeiro vai ser escolhido. Esses padrões são usados ​​também para definir &quot;combinar&quot; regras de permissão. Para ver a lista de campos, ir para <a href=""#Form/Customize Form/Customize Form"">Personalizar formulário</a> ."
Enter department to which this Contact belongs,Entre com o departamento a que pertence este contato
Enter designation of this Contact,Digite designação de este contato
"Enter domain names associated to this website, each on a new line","Digite os nomes de domínio associados a este site, cada um em uma nova linha"
"Enter email id separated by commas, invoice will be mailed automatically on particular date","Digite o ID de e-mail separados por vírgulas, a fatura será enviada automaticamente em determinada data"
Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Digite itens e qty planejada para o qual você quer levantar ordens de produção ou fazer o download de matérias-primas para a análise.
Enter message,Digite a mensagem
Enter name of campaign if source of enquiry is campaign,Digite o nome da campanha se fonte de pesquisa é a campanha
"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Digite os parâmetros URL estática aqui (por exemplo remetente = ERPNext, username = ERPNext, password = 1234, etc)"
Enter the company name under which Account Head will be created for this Supplier,Digite o nome da empresa em que Chefe da conta será criada para este fornecedor
Enter the date by which payments from customer is expected against this invoice.,Digite a data em que os pagamentos de cliente é esperado contra esta factura.
Enter url parameter for message,Digite o parâmetro url para mensagem
Enter url parameter for receiver nos,Digite o parâmetro url para nn receptor
Entries,Entradas
Entries are not allowed against this Fiscal Year if the year is closed.,Entradas não são permitidos contra este Ano Fiscal se o ano está fechada.
Error,Erro
Estimated Material Cost,Custo de Material estimada
Event,Evento
Event Date,Data do Evento
Event Individuals,Indivíduos de eventos
Event Name,Nome do Evento
Event Role,Papel evento
Event Roles,Papéis de eventos
Event Time,Hora do Evento
Event Type,Tipo de evento
Event Updates,Atualizações de eventos
Event User,Usuário evento
Exchange Rate,Taxa de Câmbio
Excise Page Number,Número de página especial sobre o consumo
Excise Voucher,Vale especiais de consumo
Execute,Executar
Exemption Limit,Limite de isenção
Exhibition,Exposição
Existing Customer,Cliente existente
Exit,Sair
Exit Interview Details,Sair Detalhes Entrevista
Expected,Esperado
Expected Delivery Date,Data de entrega prevista
Expected End Date,Data final esperado
Expected Start Date,Data de Início do esperado
Expense Account,Conta Despesa
Expense Claim,Relatório de Despesas
Expense Claim Approved,Relatório de Despesas Aprovado
Expense Claim Approved Message,Relatório de Despesas Aprovado Mensagem
Expense Claim Detail,Detalhe de Despesas
Expense Claim Details,Reivindicação detalhes da despesa
Expense Claim Rejected,Relatório de Despesas Rejeitado
Expense Claim Rejected Message,Relatório de Despesas Rejeitado Mensagem
Expense Claim Type,Tipo de reembolso de despesas
Expense Date,Data despesa
Expense Details,Detalhes despesas
Expense Head,Chefe despesa
Expenses Booked,Despesas Reservado
Expiry Date,Data de validade
Export,Exportar
Exports,Exportações
External,Externo
Extra Condition,Condição extra
Extract Emails,Extrair e-mails
Extract Job Applicant from jobs email id e.g. jobs@example.com,Extraia Requerente Job de e-mail empregos ID por exemplo jobs@example.com
Extract Leads from sales email id e.g. sales@example.com,Extraia Leads de vendas e-mail ID por exemplo sales@example.com
FCFS Rate,Taxa FCFS
FIFO,FIFO
Family Background,Antecedentes familiares
FavIcon,FavIcon
Fax,Fax
Featured Item,Item Destacado
Featured Item in Item Group,Item destacado no Grupo item
Features Setup,Configuração características
Feed,Alimentar
Feed Type,Tipo de feed
Feedback,Comentários
Female,Feminino
Fetch lead which will be converted into customer.,Fetch chumbo que vai ser convertido em cliente.
Field,Campo
Field Description,Campo Descrição
Field Mapper Detail,Detalhe Mapper campo
Field Mapper Details,Mapeador de Campo Detalhes
Field Name,Nome do Campo
Field Type,Tipo de campo
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Campo disponível na nota de entrega, cotação, nota fiscal de venda, Ordem de vendas"
Field from other forms,Campo de outras formas
"Field that represents the Workflow State of the transaction (if field is not present, a new hidden Custom Field will be created)","Campo que representa o Estado de fluxo de trabalho da transação (se o campo não estiver presente, um campo oculto novo Custom será criado)"
Fieldname,Fieldname
Fields,Campos
"Fields separated by comma (,) will be included in the<br /><b>Search By</b> list of Search dialog box","Campos separados por vírgula (,) serão incluídos no <br /> <b>Pesquisa por</b> lista de caixa de diálogo Pesquisar"
File Data,Dados de arquivo
File LIst,Lista de Arquivos
File List,Lista de Arquivos
File Name,Nome do arquivo
File URL,URL do arquivo
File Uploaded Sucessfully.,Arquivo enviado com sucesso.
Filing in Additional Information about the Opportunity will help you analyze your data better.,Apresentação de informações adicionais sobre o Opportunity vai ajudar a analisar melhor seus dados.
Filing in Additional Information about the Purchase Receipt will help you analyze your data better.,Apresentação de informações adicionais sobre o Recibo de compra vai ajudar a analisar melhor seus dados.
Filing in Additional Information about the Purchase Requisition will help you analyze your data better.,Apresentação de informações adicionais sobre a requisição de compra vai ajudar a analisar melhor seus dados.
Filling in Additional Information about the Delivery Note will help you analyze your data better.,Preenchimento de informações adicionais sobre a Guia de Transporte irá ajudá-lo a analisar os seus dados melhor.
Filling in additional information about the Quotation will help you analyze your data better.,Preenchimento de informações adicionais sobre a cotação irá ajudá-lo a analisar os seus dados melhor.
Filling in additional information about the Sales Order will help you analyze your data better.,Preenchimento de informações adicionais sobre a ordem de venda vai ajudar a analisar melhor seus dados.
Filter By Amount,Filtrar por Quantidade
Filter By Date,Filtrar por data
Filter based on customer,Filtrar baseado em cliente
Filter based on item,Filtrar com base no item
Filters,Filtros
Final Confirmation Date,Data final de confirmação
Financial Analytics,Análise Financeira
Financial Statements,Demonstrações Financeiras
Financial Years for books of accounts,Exercícios para os livros de contas
First Name,Nome
First Responded On,Primeiro respondeu em
Fiscal Year,Exercício fiscal
Fiscal Year Details,Detalhes fiscais Ano
Fixed Asset Account,Conta de ativo fixo
Float,Flutuar
Float Precision,Flutuante de precisão
Floral,Floral
"Following table will show values if items are sub - contracted. These values will be fetched from the master of ""Bill of Materials"" of sub - contracted items.",Após tabela mostrará valores se os itens são sub - contratada. Estes valores serão obtidos a partir do mestre de &quot;Bill of Materials&quot; de sub - itens contratados.
Font,Fonte
Font Size,Tamanho da Fonte
Footer,Rodapé
Footer Items,Itens Rodapé
For All Users,Para todos os usuários
For Buying,Para Comprar
For Company,Para a Empresa
For Employee,Para Empregado
For Employee Name,Para Nome do Funcionário
For Item ,Para o Item
"For Links, enter the DocType as rangeFor Select, enter list of Options separated by comma","Para Links, digite o DocType como rangeFor Select, entrar na lista de opções separadas por vírgula"
"For Links, use define linked","Para Links, use definir ligado"
For Production,Para Produção
For Reference Only.,Apenas para referência.
For Selling,Para Venda
For Warehouse,Para Armazém
"For comparative filters, start with","Para filtros comparativos, comece com"
"For e.g. 2012, 2012-13","Para por exemplo 2012, 2012-13"
For example if you cancel and amend 'INV004' it will become a new document 'INV004-1'. This helps you to keep track of each amendment.,"Por exemplo, se você cancelar e alterar &#39;INV004&#39; ele vai se tornar um novo documento &quot;INV004-1 &#39;. Isso ajuda você a manter o controle de cada emenda."
For example: You want to restrict users to transactions marked with a certain property called 'Territory',Por exemplo: Você quer restringir os usuários a transações marcadas com uma certa propriedade chamado &#39;Território&#39;
For opening balance entry account can not be a PL account,Para a abertura de conta de entrada saldo não pode ser uma conta de PL
"For opening invoice entry, this date will reflect in the period-wise aging report.","Para a abertura de entrada da fatura, esta data vai refletir no relatório período sábio envelhecimento."
For ranges,Para faixas
For reference,Para referência
For reference only.,Apenas para referência.
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Para a comodidade dos clientes, estes códigos podem ser usados ​​em formatos de impressão, como facturas e guias de entrega"
Format: hh:mm example for one hour expiry set as 01:00. Max expiry will be 72 hours. Default is 24 hours,Formato: hh: mm para um exemplo de validade definido como hora 01:00. Max termo será de 72 horas. Padrão é de 24 horas
Forum,Fórum
Fraction,Fração
Fraction Units,Unidades fração
Friday,Sexta-feira
From Company,Da Empresa
From Customer,Do Cliente
From Date,A partir da data
From Date must be before To Date,A partir da data deve ser anterior a Data
From DocType,De DocType
From Employee,De Empregado
From Field,De Campo
From PR Date,De PR Data
From Package No.,De No. Package
From Table,A partir da Tabela
Frozen,Congelado
Full Name,Nome Completo
Fully Billed,Totalmente faturado
Fully Completed,Totalmente concluída
GL Control,GL Controle
GL Entry,Entrada GL
GL Entry: Debit or Credit amount is mandatory for ,GL Entrada: montante de crédito ou débito é obrigatória para
GL Mapper,GL Mapper
GL Mapper Detail,GL Detalhe Mapper
GRN,GRN
Gantt Chart,Gantt
Gantt chart of all tasks.,Gantt de todas as tarefas.
Gender,Sexo
General,Geral
General Ledger,General Ledger
Generate Description HTML,Gerar Descrição HTML
Generate Purchase Requests (MRP) and Production Orders.,Gerar pedidos de compra (MRP) e ordens de produção.
Generate Salary Slips,Gerar folhas de salários
Generate Schedule,Gerar Agende
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Gerar comprovantes de entrega de pacotes a serem entregues. Usado para notificar número do pacote, o conteúdo do pacote e seu peso."
Generates HTML to include selected image in the description,Gera HTML para incluir imagem selecionada na descrição
Georgia,Geórgia
Get Advances Paid,Obter adiantamentos pagos
Get Advances Received,Obter adiantamentos recebidos
Get Current Stock,Obter Estoque atual
Get Items,Obter itens
Get Last Purchase Rate,Obter Tarifa de Compra Última
Get Non Reconciled Entries,Obter entradas não Reconciliados
Get Open Sales Order,Obter Ordem de vendas Abrir
Get Outstanding Invoices,Obter faturas pendentes
Get Purchase Receipt,Obter Recibo de compra
Get Sales Orders,Obter Pedidos de Vendas
Get Specification Details,Obtenha detalhes Especificação
Get Stock and Rate,Obter Estoque e Taxa de
Get Tax Detail,Obtenha detalhes Imposto
Get Taxes and Charges,Obter Impostos e Taxas
Get Template,Obter modelo
Get Terms and Conditions,Obter os Termos e Condições
Get Weekly Off Dates,Obter semanal Datas Off
Get the template of the Attendance for which you want to import in CSV (Comma seperated values) format.Fill data in the template. Save the template in CSV format.All attendance dates inbetween 'Attendance From Date' and 'Attendance To Date' will come in the template with employees list.,Obter o modelo do atendimento para o qual você deseja importar no formato CSV (valores separados por vírgulas) format.Fill dados no modelo. Salve o modelo na CSV atendimento format.All data &#39;Presença De Data&#39; inbetween e &#39;Atendimento Conhecer&#39; virá no modelo com lista de funcionários.
"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Obter taxa de valorização e estoque disponível na origem / destino em armazém mencionado postagem data e hora. Se serializado item, prima este botão depois de entrar n º s de série."
Global Defaults,Padrões globais
Go back to home,Volte para casa
Go to Setup > <a href='#user-properties'>User Properties</a> to set \			'territory' for diffent Users.,Vá para Configuração&gt; <a href='#user-properties'>Propriedades do usuário</a> para definir \ &#39;território&#39; para usuários diffent.
Goal,Meta
Goals,Metas
Goods received from Suppliers.,Mercadorias recebidas de fornecedores.
Grade,Grau
Graduate,Pós-graduação
Grand Total,Total geral
Grand Total (Export),Total Geral (Exportação)
Grand Total (Import),Total Geral (Import)
Grand Total*,Grande * Total
Gratuity LIC ID,ID LIC gratuidade
Gross Margin %,Margem Bruta%
Gross Margin Value,Valor Margem Bruta
Gross Pay,Salário bruto
Gross Pay + Arrear Amount +Encashment Amount - Total Deduction,Salário bruto + Valor + Valor vencido cobrança - Dedução Total
Gross Profit,Lucro bruto
Gross Profit (%),Lucro Bruto (%)
Gross Weight,Peso bruto
Gross Weight UOM,UOM Peso Bruto
Group,Grupo
Group By,Ao grupo
Group or Ledger,Grupo ou Ledger
Groups,Grupos
HR,HR
HTML,HTML
HTML / Banner that will show on the top of product list.,HTML bandeira / que vai mostrar no topo da lista de produtos.
"HTML print formats for quotes, invoices etc","HTML formatos de impressão para citações, etc faturas"
Half Day,Meio Dia
Half Yearly,Semestrais
Half-yearly,Semestral
Has Batch No,Não tem Batch
Has Child Node,Tem nó filho
Has Serial No,Não tem de série
Header,Cabeçalho
Heading,Título
Heading Font,Título da fonte
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Chefes (ou grupos) contra o qual as entradas de contabilidade são feitas e os saldos são mantidos.
Health Concerns,Preocupações com a Saúde
Health Details,Detalhes saúde
Held On,Realizada em
Help,Ajudar
Help HTML,Ajuda HTML
Helper for managing return of goods (sales or purchase),Auxiliar para a gestão devolução de mercadorias (venda ou compra)
Helvetica Neue,Helvetica Neue
"Hence, maximum allowed Manufacturing Quantity","Assim, a quantidade máxima permitida Manufacturing"
"Here you can maintain family details like name and occupation of parent, spouse and children","Aqui você pode manter detalhes como o nome da família e ocupação do cônjuge, pai e filhos"
"Here you can maintain height, weight, allergies, medical concerns etc","Aqui você pode manter a altura, peso, alergias, etc preocupações médica"
Hey there! You need to put at least one item in \				the item table.,Hey there! Você precisa colocar pelo menos um item em \ tabela do item.
Hey! You seem to be using the wrong template. \				Click on 'Download Template' button to get the correct template.,Hey! Você parece estar usando o modelo errado. \ Clique no botão &#39;Template Download&#39; para obter o modelo correto.
Hidden,Escondido
Hide Actions,Ocultar Ações
Hide Copy,Ocultar Copiar
Hide Currency Symbol,Ocultar Símbolo de Moeda
Hide Email,Esconder-mail
Hide Heading,Ocultar título
Hide Print,Ocultar Imprimir
Hide Toolbar,Ocultar barra de ferramentas
High,Alto
Highlight,Realçar
History In Company,História In Company
Hold,Segurar
Holiday,Férias
Holiday Block List,Lista de Bloqueios de férias
Holiday Block List Allow,Lista de Bloqueios de férias Permitir
Holiday Block List Allowed,Lista de feriado Bloco admitidos
Holiday Block List Date,Data feriado Lista de Bloqueios
Holiday Block List Dates,Datas de férias Lista de Bloqueios
Holiday Block List Name,Nome de férias Lista de Bloqueios
Holiday List,Lista de feriado
Holiday List Name,Nome da lista férias
Holidays,Férias
Home,Casa
Home Control,Home Control
Home Page,Home Page
Home Page is Products,Home Page é produtos
Home Pages,Home Pages
Host,Anfitrião
"Host, Email and Password required if emails are to be pulled",E-mail host e senha necessária se e-mails devem ser puxado
Hour Rate,Taxa de hora
Hour Rate Consumable,Taxa de consumíveis hora
Hour Rate Electricity,Eletricidade Taxa de hora
Hour Rate Labour,A taxa de hora
Hour Rate Rent,Aluguel Taxa de hora
Hours,Horas
How frequently?,Com que freqüência?
"How should this currency be formatted? If not set, will use system defaults","Como deve ser essa moeda ser formatado? Se não for definido, vai usar padrões do sistema"
How to upload,Como fazer upload
Hrvatski,Hrvatski
Human Resources,Recursos Humanos
Human Resources Home,Home Recursos Humanos
Hurray! The day(s) on which you are applying for leave \					coincide with holiday(s). You need not apply for leave.,Viva! O dia (s) em que você está aplicando para deixar \ coincidir com feriado (s). Você não precisa pedir licença.
I,Eu
ID (name) of the entity whose property is to be set,ID (nome) da entidade cuja propriedade está a ser definida
IDT,IDT
IGHelp,IGHelp
II,II
III,III
IN,EM
INV,INV
INV/10-11/,INV/10-11 /
IV,IV
Icon,Ícone
Icon will appear on the button,Ícone aparecerá no botão
Id of the profile will be the email.,ID do perfil será o e-mail.
Identification of the package for the delivery (for print),Identificação do pacote para a entrega (para impressão)
If Monthly Budget Exceeded,Se o orçamento mensal excedido
"If Sale BOM is defined, the actual BOM of the Pack is displayed as table.Available in Delivery Note and Sales Order","Se BOM venda é definido, o BOM real do pacote é exibido como table.Available na nota de entrega e Ordem de Vendas"
"If Supplier Part Number exists for given Item, it gets stored here","Se Número da peça de Fornecedor existe para determinado item, ele fica armazenado aqui"
If Yearly Budget Exceeded,Se orçamento anual excedido
"If a User does not have access at Level 0, then higher levels are meaningless","Se um usuário não tem acesso no nível 0, então os níveis mais altos são sem sentido"
"If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.","Se selecionado, o BOM para a sub-montagem itens serão considerados para obter matérias-primas. Caso contrário, todos os itens de sub-montagem vai ser tratado como uma matéria-prima."
"If checked, all other workflows become inactive.","Se marcada, todos os outros fluxos de trabalho tornam-se inativos."
"If checked, the Home page will be the default Item Group for the website.","Se selecionado, a página inicial será o Grupo item padrão para o site."
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Se selecionado, o valor do imposto será considerado como já incluído na tarifa Impressão / Quantidade de impressão"
"If image is selected, color will be ignored (attach first)","Se a imagem for selecionada, a cor será ignorado (anexar primeiro)"
If more than one package of the same type (for print),Se mais do que uma embalagem do mesmo tipo (por impressão)
If non standard port (e.g. 587),"Se a porta não padrão (por exemplo, 587)"
If not applicable please enter: NA,Se não for aplicável digite: NA
"If not checked, the list will have to be added to each Department where it has to be applied.","Se não for controlada, a lista deverá ser adicionado a cada departamento onde tem de ser aplicado."
"If not, create a","Se não, crie um"
"If set, data entry is only allowed for specified users. Else, entry is allowed for all users with requisite permissions.","Se definido, a entrada de dados só é permitida para usuários especificados. Outra, a entrada é permitida para todos os usuários com permissões necessárias."
"If specified, send the newsletter using this email address","Se especificado, enviar a newsletter usando esse endereço de e-mail"
"If the 'territory' Link Field exists, it will give you an option to select it","Se o campo da &#39;território&#39; Link existe, ele vai te dar uma opção para selecioná-la"
"If the account is frozen, entries are allowed for the ""Account Manager"" only.","Se a conta for congelada, as entradas são permitidos para o &quot;Account Manager&quot; apenas."
"If this Account represents a Customer, Supplier or Employee, set it here.","Se essa conta representa um cliente, fornecedor ou funcionário, configurá-lo aqui."
If you follow Quality Inspection<br>Enables item QA Required and QA No in Purchase Receipt,Se você seguir Inspeção de Qualidade <br> Permite Nenhum item obrigatório e QA QA no Recibo de compra
If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity,Se você tiver Equipe de Vendas e Parceiros de Venda (Parceiros de Canal) podem ser marcadas e manter sua contribuição na atividade de vendas
"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Se você criou um modelo padrão no Imposto de Compra e Master Encargos, selecione um e clique no botão abaixo."
"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Se você criou um modelo padrão de Vendas Impostos e Encargos mestre, selecione um e clique no botão abaixo."
"If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page","Se você tem muito tempo imprimir formatos, esse recurso pode ser usado para dividir a página a ser impressa em várias páginas com todos os cabeçalhos e rodapés em cada página"
If you involve in manufacturing activity<br>Enables item <b>Is Manufactured</b>,Se você envolver na atividade industrial <br> Permite que o item <b>é fabricado</b>
Ignore,Ignorar
Image,Imagem
Image View,Ver imagem
Implementation Partner,Parceiro de implementação
Import,Importar
Import Date Format ,Formato de data de importação
Import Log,Importar Log
Import Log1,Importar Log1
Import data from spreadsheet (csv) files,Importar dados de planilhas (csv)
Important dates and commitments in your project life cycle,Datas importantes e compromissos em seu ciclo de vida do projeto
Imports,Importações
In Dialog,Em diálogo
In Filter,Em Filtro
In List View,Na exibição de lista
In Process,Em Processo
In Report Filter,No Relatório Filtro
In Store,Na loja
In Words,Em Palavras
In Words (Export),Em Palavras (Exportação)
In Words (Export) will be visible once you save the Delivery Note.,Em Palavras (Exportação) será visível quando você salvar a Nota de Entrega.
In Words (Import),Em Palavras (Import)
In Words will be visible once you save the Delivery Note.,Em Palavras será visível quando você salvar a Nota de Entrega.
In Words will be visible once you save the Purchase Invoice.,Em Palavras será visível quando você salvar a factura de compra.
In Words will be visible once you save the Purchase Order.,Em Palavras será visível quando você salvar a Ordem de Compra.
In Words will be visible once you save the Purchase Receipt.,Em Palavras será visível quando você salvar o recibo de compra.
In Words will be visible once you save the Quotation.,Em Palavras será visível quando você salvar a cotação.
In Words will be visible once you save the Sales Invoice.,Em Palavras será visível quando você salvar a nota fiscal de venda.
In Words will be visible once you save the Sales Order.,Em Palavras será visível quando você salvar a Ordem de Vendas.
In Words(Import),Em Palavras (Import)
In response to,Em resposta aos
"In the Permission Manager, click on the button in the 'Condition' column for the Role you want to restrict.","No Gerenciador de Permissão, clique no botão no &#39;Condição&#39; coluna para a função que deseja restringir."
Inactive,Inativo
Incentives,Incentivos
Incharge Name,Nome incharge
Income,Renda
Income Account,Conta Renda
Income Year to Date,Ano renda para Data
Incoming,Entrada
Incoming Mail Setting,Configuração de entrada de emails
Incoming Rate,Taxa de entrada
Incoming Time,Tempo de entrada
Incoming quality inspection.,Inspeção de qualidade de entrada.
Indent,Recuar
Index,Índice
Indicates that the package is a part of this delivery,Indica que o pacote é uma parte deste fornecimento
Individual,Individual
Individuals,Indivíduos
Industry,Indústria
Industry Type,Tipo indústria
Info,Informações
Insert After,Depois de inserir
Insert Code,Insira Código
Insert Style,Insira Estilo
Inspected By,Inspecionado por
Inspection Criteria,Critérios de inspeção
Inspection Required,Inspeção Obrigatório
Inspection Type,Tipo de Inspeção
Installation Date,Data de instalação
Installation Note,Nota de Instalação
Installation Note Item,Item Nota de Instalação
Installation Status,Status da instalação
Installation Time,O tempo de instalação
Installation record for a Serial No.,Registro de instalação de um n º de série
Installed Qty,Quantidade instalada
Institute / Conducted By,Instituto / conduzido por
Instructions,Instruções
Int,Int.
Interested,Interessado
Internal,Interno
Intro HTML,Intro HTML
Introduce your company to the website visitor.,Apresente sua empresa para o visitante do site.
Introduction,Introdução
Introductory information for the Contact Us Page,Informação introdutória para a página Fale Conosco
Invalid Email Address,Endereço de email inválido
Inventory,Inventário
Inverse,Inverso
Invoice Date,Data da fatura
Invoice Details,Detalhes da fatura
Invoice No,A factura n º
Invoice Period From Date,Período fatura do Data
Invoice Period To Date,Período fatura para Data
Is Active,É Ativo
Is Advance,É o avanço
Is Asset Item,É item de ativo
Is Cancelled,É cancelado
Is Carry Forward,É Carry Forward
Is Child Table,É tabela filho
Is Default,É Default
Is Encash,É cobrar
Is LWP,É LWP
Is Mandatory Field,É campo obrigatório
Is Opening,Está abrindo
Is PL Account,É Conta PL
Is POS,É POS
Is Primary Address,É o endereço primário
Is Primary Contact,É Contato Principal
Is Purchase Item,É item de compra
Is Sales Item,É item de vendas
Is Service Item,É item de serviço
Is Shipping Address,Endereço para envio é
Is Single,É único
Is Standard,É Padrão
Is Stock Item,É item de estoque
Is Sub Contracted Item,É item Contratado Sub
Is Subcontracted,É subcontratada
Is Submittable,É Submittable
Is it a Custom DocType created by you?,É um DocType personalizado criado por você?
Is this Tax included in Basic Rate?,É este imposto incluído na Taxa Básica?
Issue,Questão
Issue Date,Data de Emissão
Issue Details,Detalhes incidente
Item,Item
Item Advanced,Item Avançado
Item Barcode,Código de barras do item
Item Batch Nos,Lote n item
Item Classification,Classificação item
Item Code,Código do artigo
Item Customer Detail,Detalhe Cliente item
Item Description,Item Descrição
Item Desription,Desription item
Item Details,Item Detalhes
Item Group,Grupo Item
Item Group Name,Nome do Grupo item
Item Groups in Details,Grupos de itens em Detalhes
Item Image (if not slideshow),Imagem item (se não slideshow)
Item Name,Nome do item
Item Price,Item Preço
Item Prices,Preços de itens
Item Quality Inspection Parameter,Item Parâmetro de Inspeção de Qualidade
Item Serial No,No item de série
Item Serial Nos,Item n º s de série
Item Supplier,Fornecedor item
Item Supplier Details,Fornecedor Item Detalhes
Item Tax,Imposto item
Item Tax Amount,Valor do imposto item
Item Tax Rate,Taxa de Imposto item
Item Tax1,Item Tax1
Item To Manufacture,Item Para Fabricação
Item UOM,Item UOM
Item Website Specification,Especificação Site item
Item Website Specifications,Site Item Especificações
Item Wise Tax Detail ,Detalhe Imposto item Sábio
Item classification.,Item de classificação.
Item to be manufactured or repacked,Item a ser fabricados ou reembalados
Item will be saved by this name in the data base.,O artigo será salva por este nome na base de dados.
"Item, Warranty, AMC (Annual Maintenance Contract) details will be automatically fetched when Serial Number is selected.","Item, Garantia, AMC (Contrato Anual de Manutenção) detalhes serão automaticamente carregada quando o número de série é selecionado."
Item-Wise Price List,Item-Wise Lista de Preços
Item: ',Item: &#39;
Items,Itens
"Items to be requested which are ""Out of Stock"" considering all warehouses based on projected qty and minimum order qty","Os itens a serem solicitados que estão &quot;fora de estoque&quot;, considerando todos os armazéns com base no qty projetada e qty mínimo"
Items which do not exist in Item master can also be entered on customer's request,Itens que não existem no cadastro de itens também podem ser inseridos no pedido do cliente
Itemwise Discount,Desconto Itemwise
JSON,JSON
JV,JV
Javascript,Javascript
Javascript to append to the head section of the page.,Javascript para acrescentar à seção principal da página.
Job Applicant,Candidato a emprego
Job Opening,Abertura de emprego
Job Profile,Perfil trabalho
Job Title,Cargo
"Job profile, qualifications required etc.","Profissão de perfil, qualificações exigidas, etc"
Jobs Email Settings,E-mail Configurações de empregos
Journal Entries,Jornal entradas
Journal Entry,Journal Entry
Journal Voucher,Vale Jornal
Journal Voucher Detail,Jornal Detalhe Vale
Journal Voucher Detail No,Jornal Detalhe folha no
KRA,KRA
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Mantenha o controle de campanhas de vendas. Mantenha o controle de ligações, cotações, etc Vendas Ordem de Campanhas de medir retorno sobre o investimento."
Keep a track of all communications,Manter um controle de todas as comunicações
Keep a track of communication related to this enquiry which will help for future reference.,Mantenha uma faixa de comunicação relacionada a este inquérito que irá ajudar para referência futura.
Keep a track on communications regarding this Quotation. This will help you remember earlier communications in case the Customer comes back again,Manter um controle sobre as comunicações relativas a este Orçamento. Isso vai ajudar você a lembrar comunicações anteriores no caso de o cliente volta novamente
Key,Chave
Key Performance Area,Área Key Performance
Key Responsibility Area,Área de Responsabilidade chave
Knowledge Base,Base de Conhecimento
LEAD,LEAD
LEAD/10-11/,LEAD/10-11 /
LEAD/MUMBAI/,LEAD / MUMBAI /
LR Date,Data LR
LR No,Não LR
Label,Etiqueta
Label Help,Ajuda rótulo
Lacs,Lacs
Landed Cost Item,Item de custo Landed
Landed Cost Items,Desembarcaram itens de custo
Landed Cost Purchase Receipt,Recibo de compra Landed Cost
Landed Cost Purchase Receipts,Recibos de compra desembarcaram Custo
Landed Cost Wizard,Assistente de Custo Landed
Landing Page,Landing Page
Language,Linguagem
Language preference for user interface (only if available).,Preferência de idioma para interface de usuário (se disponível).
Last Contact Date,Data do último contato
Last IP,Última IP
Last Login,Último Login
Last Modified On,Última modificação em
Last Name,Sobrenome
Last Purchase Rate,Compra de última
Last Update,Atualização
Last Update By,Última atualização por
Latest Updates,Últimas Atualizações
Lato,Lato
Lead,Conduzir
Lead Details,Chumbo Detalhes
Lead Lost,Levar Perdido
Lead Name,Nome levar
Lead Owner,Levar Proprietário
Lead Ref,Chumbo Ref.
Lead Time Date,Chumbo Data Hora
Lead Time Days,Levar dias Tempo
Lead Time days is number of days by which this item is expected in your warehouse. This days is fetched in Purchase 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 Pedido de Compra quando você selecionar este item.
Lead Type,Chumbo Tipo
Leave Allocation,Deixe Alocação
Leave Allocation Tool,Deixe Ferramenta de Alocação
Leave Application,Deixe Aplicação
Leave Approver,Deixe Aprovador
Leave Balance Before Application,Deixe Equilíbrio Antes da aplicação
Leave Control Panel,Deixe Painel de Controle
Leave Encashed?,Deixe cobradas?
Leave Encashment Amount,Deixe Quantidade cobrança
Leave Setup,Deixe Setup
Leave Type,Deixar Tipo
Leave Type Name,Deixe Nome Tipo
Leave Without Pay,Licença sem vencimento
Leave allocations.,Deixe alocações.
Leave blank if considered for all branches,Deixe em branco se considerado para todos os ramos
Leave blank if considered for all departments,Deixe em branco se considerado para todos os departamentos
Leave blank if considered for all designations,Deixe em branco se considerado para todas as designações
Leave blank if considered for all employee types,Deixe em branco se considerado para todos os tipos de empregados
Leave blank if considered for all grades,Deixe em branco se considerado para todos os graus
"Leave can be approved by users with Role, ""Leave Approver""","A licença pode ser aprovado por usuários com papel, &quot;Deixe Aprovador&quot;"
Ledger,Livro-razão
Left,Esquerda
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Pessoa Jurídica / Subsidiária com um gráfico separado de Contas pertencentes à Organização.
Letter Head,Cabeça letra
Letter Head Image,Imagem Cabeça letra
Letter Head Name,Nome Cabeça letra
Letter heads for print,Cabeças de letra 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 de nível de documento, os níveis mais elevados de permissões de nível de campo."
Lft,Lft
Link,Link
Link to other pages in the side bar and next section,Link para outras páginas na barra lateral e seção seguinte
Linked With,Com ligados
List,Lista
List items that form the package.,Lista de itens que compõem o pacote.
"List of Item Groups to be shown in ""All Products"" menu - in the sequence wanted and with number of indents (left spacing to show a tree effect).",Lista de Grupos de itens a ser mostrado em &quot;todos os produtos&quot; menu - na seqüência queria e com o número de travessões (espaçamento esquerda para mostrar um efeito de árvore).
List of companies (not customers / suppliers),Lista das empresas (não clientes / fornecedores)
List of holidays.,Lista de feriados.
List of patches executed,Lista de patches executados
List of records in which this document is linked,Lista de registros em que este documento está ligado
List this Item in multiple groups on the website.,Lista este item em vários grupos no site.
Live Chat,Live Chat
Load Print View on opening of an existing form,Carregar Ver impressão na abertura de um formulário existente
Loading,Carregamento
Loading Report,Relatório de carregamento
Location,Localização
Log of Scheduler Errors,Registro de erros Scheduler
Login After,Após entrar
Login Before,Login antes
Login Id,Login ID
Login Page,Página de login
Logout,Sair
Long Text,Texto Longo
Lost Reason,Razão perdido
Low,Baixo
Lower Income,Baixa Renda
Lucida Grande,Lucida Grande
MIS Control,MIS Controle
MTN Details,Detalhes da MTN
Mail Footer,Rodapé correio
Mail Password,Mail Senha
Mail Port,Mail Port
Mail Server,Servidor de Correio
Main Reports,Relatórios principais
Main Section,Seção Principal
Maintain same rate throughout purchase cycle,Manter mesmo ritmo durante todo o ciclo de compra
Maintenance,Manutenção
Maintenance Date,Data de manutenção
Maintenance Details,Detalhes de manutenção
Maintenance Schedule,Programação de Manutenção
Maintenance Schedule Detail,Detalhe Programa de Manutenção
Maintenance Schedule Item,Item Programa de Manutenção
Maintenance Status,Estado de manutenção
Maintenance Time,Tempo de Manutenção
Maintenance Type,Tipo de manutenção
Maintenance Visit,Visita de manutenção
Maintenance Visit Purpose,Finalidade visita de manutenção
Major/Optional Subjects,Assuntos Principais / Opcional
Make Bank Voucher,Faça Vale Banco
Make Credit Note,Faça Nota de Crédito
Make Debit Note,Faça Nota de Débito
Make Difference Entry,Faça Entrada Diferença
Make Excise Invoice,Faça fatura Excise
Make Stock Entry,Faça entrada de material
Make a new,Faça um novo
Make sure that the transactions you want to restrict have a Link field 'territory' that maps to a 'Territory' master.,Certifique-se de que as operações que pretende restringir ter &quot;território&quot; de um campo Link que mapeia para um &quot;território&quot; mestre.
Male,Masculino
Manage cost of operations,Gerenciar custo das operações
Manage numbering series,Gerenciar numeração série
Manage sales or purchase returns,Gestão de vendas ou devoluções de compra
Mandatory,Obrigatório
"Mandatory if Stock Item is ""Yes""",Item de estoque é obrigatória se &quot;Sim&quot;
Manufacture against Sales Order,Fabricação contra a Ordem de Vendas
Manufacture/Repack,Fabricação / Repack
Manufactured Qty,Qtde fabricados
Manufactured quantity will be updated in this warehouse,Quantidade fabricada será atualizado neste armazém
Manufacturer,Fabricante
Manufacturer Part Number,Número da peça de fabricante
Manufacturing,Fabrico
Manufacturing Home,Início de fabricação
Manufacturing Quantity,Quantidade de fabricação
Map,Mapa
Margin,Margem
Marital Status,Estado civil
Markdown Reference,Referência Markdown
Market Segment,Segmento de mercado
Married,Casado
Mass Mailing,Divulgação em massa
Master,Mestre
Master Name,Nome mestre
Master Type,Master Classe
Masters,Mestres
Mat Detail No,Detalhe Mat Não
Match,Combinar
Match Id,ID da partida
Match non-linked Invoices and Payments.,Combinar não vinculados faturas e pagamentos.
Material Issue,Emissão de material
Material Receipt,Recebimento de materiais
Material Transfer,Transferência de Material
Materials,Materiais
Materials Required (Exploded),Materiais necessários (explodida)
Materials Requirement Planning (MRP),Materiais Requirement Planning (MRP)
Max Attachments,Anexos Max.
Max Days Leave Allowed,Dias Max Deixe admitidos
Max Discount (%),Max Desconto (%)
"Meaning of Submit, Cancel, Amend","Significado do Submit, Cancelar, Alterar"
Medium,Médio
Merge,Fundir
Merge Warehouses,Mesclar Armazéns
Merge With,Intercalar com
Message,Mensagem
Message Parameter,Parâmetro mensagem
Message greater than 160 character will be splitted into multiple mesage,Mensagem maior do que 160 caracteres vai ser dividido em mesage múltipla
Message when Cond. False,Mensagem quando Cond. Falso
Messages,Mensagens
Method,Método
Middle Income,Rendimento Médio
Middle Name (Optional),Nome do Meio (Opcional)
Milestone,Marco miliário
Milestone Date,Data Milestone
Milestones,Milestones
Milestones will be added as Events in the Calendar,Marcos será adicionado como eventos no calendário
Millions,Milhões
Min Order Qty,Min Qty Ordem
Minimum Order Qty,Qtde mínima
Misc,Variados
Misc Details,Detalhes Diversos
Miscellaneous,Diverso
Miscelleneous,Miscelleneous
Mobile No,No móvel
Mobile No.,Mobile No.
Mode of Payment,Modo de Pagamento
Modified Amount,Quantidade modificado
Modified by,Modificado por
Module,Módulo
Module Def,Módulo Def
Module Name,Nome do Módulo
Modules,Módulos
Modules Setup,Instalação Módulos
Monday,Segunda-feira
Month,Mês
Monthly,Mensal
Monthly salary statement.,Declaração salário mensal.
Monthly salary template.,Modelo de salário mensal.
More,Mais
More Details,Mais detalhes
More Info,Mais informações
More content for the bottom of the page.,Mais conteúdo para o fundo da página.
Moving Average,Média móvel
Moving Average Rate,Movendo Taxa Média
Mr,Sr.
Ms,Ms
Multi Ledger Report Detail,Detalhes do Relatório de multi Ledger
Multiple Item Prices,Vários preços de itens
Mupltiple Item prices.,Item preços Mupltiple.
My Company,Minha Empresa
My Settings,Minhas Configurações
NL-,NL-
Name,Nome
Name Case,Caso Nome
Name as entered in Sales Partner master,Nome como entrou em Vendas mestre Parceiro
Name of organization from where lead has come,Nome da organização de onde veio chumbo
Name of person or organization that this address belongs to.,Nome da pessoa ou organização que este endereço pertence.
Name of the Budget Distribution,Nome da Distribuição de Orçamento
Name of the entity who has requested for the Purchase Requisition,Nome da entidade que solicitou para a requisição de compra
Naming,Nomeando
Naming Series,Nomeando Series
Naming Series Options,Nomeando Série Opções
Negative balance is not allowed for account ,Saldo negativo não é permitido por conta
Net Pay,Pagamento Net
Net Pay (in words) will be visible once you save the Salary Slip.,Pagamento líquido (em palavras) será visível quando você salvar a folha de salário.
Net Total,Líquida Total
Net Total (Import),Total Líquido (Import)
Net Total*,* Total Net
Net Weight,Peso Líquido
Net Weight UOM,UOM Peso Líquido
Net Weight of each Item,Peso líquido de cada item
New,Novo
New BOM,Novo BOM
New Communications,New Communications
New Delivery Notes,Novas notas de entrega
New Enquiries,Consultas novo
New Leads,Nova leva
New Leaves Allocated,Nova Folhas alocado
New Leaves Allocated (In Days),Folhas novas atribuído (em dias)
New Name,Novo nome
New Password,Nova senha
New Projects,Novos Projetos
New Purchase Orders,Novas ordens de compra
New Purchase Receipts,Novos recibos de compra
New Purchase Requests,Novos pedidos de compra
New Quotations,Novas cotações
New Record,Novo Registro
New Sales Orders,Novos Pedidos de Vendas
New Stock Entries,Novas entradas em existências
New Stock UOM,Nova da UOM
New Supplier Quotations,Novas citações Fornecedor
New Support Tickets,Novos pedidos de ajuda
New Update,Nova Atualização
New Workplace,Novo local de trabalho
New value to be set,Novo valor a ser definido
Newsletter,Boletim informativo
Newsletter Content,Conteúdo boletim
Newsletter Status,Estado boletim
Next Communcation On,No próximo Communcation
Next Contact By,Contato Próxima Por
Next Contact Date,Data Contato próximo
Next Date,Data próxima
Next State,Estado próximo
Next actions,Próximas ações
Next email will be sent on:,Próximo e-mail será enviado em:
No,Não
No Action,Nenhuma ação
No Communication tagged with this ,Nenhuma comunicação marcados com esta
No Copy,Nenhuma cópia
No Permission,Nenhuma permissão
No Permission to ,Sem permissão para
No Permissions set for this criteria.,Sem permissões definidas para este critério.
No User Properties found.,Não Propriedades do usuário encontrado.
No of Requested SMS,No pedido de SMS
No of Sent SMS,N º de SMS enviados
No of Visits,N º de Visitas
No records tagged.,Não há registros marcados.
"No table is created for Single DocTypes, all values are stored in tabSingles as a tuple.","Nenhuma tabela é criada para DOCTYPEs simples, todos os valores são armazenados em tabSingles como uma tupla."
None: End of Workflow,Nenhum: Fim do fluxo de trabalho
Not,Não
Not Active,Não Ativo
Not Applicable,Não Aplicável
Not Billed,Não faturado
Not Delivered,Não entregue
Not Found,Não encontrado
Not Linked to any record.,Não relacionado a qualquer registro.
Not Permitted,Não Permitido
Not allowed,Não permitido
Not allowed for: ,Não é permitido para:
Not enough permission to see links.,Não permissão suficiente para ver os links.
Not in Use,Não está em uso
Not interested,Não está interessado
Not linked,Não ligados
Note: Email will not be sent to disabled users,Nota: e-mail não será enviado para utilizadores com deficiência
Note: Other permission rules may also apply,Nota: As regras de permissão Outros também se podem aplicar
Note: You Can Manage Multiple Address or Contacts via Addresses & Contacts,Nota: você pode gerenciar Endereço múltipla ou Contatos através de endereços e contatos
Note: maximum attachment size = 1mb,Nota: tamanho máximo do anexo = 1mb
Notes,Notas
Nothing to show,Nada para mostrar
Notice - Number of Days,Aviso - número de dias
Notification Control,Controle de Notificação
Notification Email Address,Endereço de email de notificação
Notify By Email,Notificar por e-mail
Notify by Email on Re-order,Notificar por e-mail no Re-vista
Number Format,Formato de número
O+,O +
O-,O-
OPPT,OPPT
Ocean,Oceano
Old Parent,Pai Velho
Old Style Reports,Antigo Relatórios Estilo
On,Em
On Net Total,Em Líquida Total
On Previous Row Amount,Quantidade em linha anterior
On Previous Row Total,No total linha anterior
"Once you have set this, the users will only be able access documents with that property.","Depois de ter definido isso, os usuários só acessar documentos capazes com essa propriedade."
One or multiple Sales Order no which generated this Purchase Requisition,Um ou nenhum Ordem múltipla de vendas que gerou esta requisição de compra
Only Allow Edit For,Somente permitir editar para
Only System Manager can create / edit reports,System Manager só pode criar / editar relatórios
Only leaf nodes are allowed in transaction,Nós folha apenas são permitidos em operação
Open,Abrir
Open Sans,Sans abertas
Open Tickets,Bilhetes abertas
Opening Date,Data de abertura
Opening Time,Tempo de abertura
Opening for a Job.,A abertura para um trabalho.
Operating Cost,Custo de Operação
Operation Description,Descrição da operação
Operation No,Nenhuma operação
Operation Time (mins),Tempo de Operação (minutos)
Operations,Operações
Operator,Operador
Opportunity,Oportunidade
Opportunity Date,Data oportunidade
Opportunity From,Oportunidade De
Opportunity Item,Item oportunidade
Opportunity Items,Itens oportunidade
Opportunity Lost,Oportunidade perdida
Opportunity No,Sem oportunidade
Opportunity Type,Tipo de Oportunidade
Options,Opções
Options Help,Opções Ajuda
Order Confirmed,Confirmado fim
Order Lost,Ordem Perdido
Order Type,Tipo de Ordem
Ordered Items To Be Billed,Itens ordenados a ser cobrado
Ordered Items To Be Delivered,Itens ordenados a ser entregue
Ordered Qty,Qtde ordenou
Ordered Quantity,Quantidade pedida
Orders released for production.,Ordens liberado para produção.
Organization,Organização
Original Message,Mensagem original
Other,Outro
Other Details,Outros detalhes
Other Income Detail,Detalhe Outras Receitas
Out going mail server and support ticket mailbox,Fora vai servidor de correio ea caixa de correio ticket de suporte
Out of AMC,Fora da AMC
Out of Warranty,Fora de Garantia
Outgoing,Cessante
Outgoing Mail Server,Outgoing Mail Server
Outgoing Mails,E-mails de saída
Outstanding Amount,Saldo em aberto
Outstanding cannot be less than zero. \				 	Please match exact outstanding.,Excelente não pode ser menor que zero. \ Por favor correspondência exata excelente.
Outstanding for Voucher ,Destaque para Vale
Over Heads,Mais Cabeças
Overhead,Despesas gerais
Overload Query,Consulta sobrecarga
Overwrite,Sobrescrever
Owned,Possuído
P.O. Date,Data PO
P.O. No,Não PO
PAN Number,Número PAN
PF No.,PF Não.
PF Number,Número PF
PI/2011/,PI/2011 /
PIN,PIN
PO,PO
PO Date,Data PO
PO No,Não PO
POP3 Mail Server,Servidor de correio POP3
POP3 Mail Server (e.g. pop.gmail.com),"POP3 Mail Server (por exemplo, pop.gmail.com)"
POP3 Mail Settings,Configurações de mensagens pop3
POP3 mail server (e.g. pop.gmail.com),POP3 servidor de correio (por exemplo pop.gmail.com)
POP3 server e.g. (pop.gmail.com),"Servidor POP3, por exemplo (pop.gmail.com)"
POS Setting,Definição POS
PR Detail,Detalhe PR
PRO,PRO
PS,PS
Package Item Details,Item Detalhes do pacote
Package Items,Itens do pacote
Package Weight Details,Peso Detalhes do pacote
Packed Quantity,Quantidade embalado
Packing Details,Detalhes da embalagem
Packing Detials,Detials embalagem
Packing List,Lista de embalagem
Packing Slip,Embalagem deslizamento
Packing Slip Item,Embalagem item deslizamento
Packing Slip Items,Embalagem Itens deslizamento
Page,Página
Page Break,Quebra de página
Page HTML,Página HTML
Page Len,Página Len
Page Name,Nome da Página
Page Role,Papel página
Page content,O conteúdo da página
Page not found,Página não encontrada
Page to show on the website,Página para mostrar no site
"Page url name (auto-generated) (add "".html"")",Nome da página url (gerado automaticamente) (adicione &quot;. Html&quot;)
Paid Amount,Valor pago
Parameter,Parâmetro
Parent Account,Conta pai
Parent BOM,BOM pai
Parent Cost Center,Centro de Custo pai
Parent Customer Group,Grupo de Clientes pai
Parent Detail docname,Docname Detalhe pai
Parent Doc Type,Tipo pai Doc
Parent Item,Item Pai
Parent Item Group,Grupo item pai
Parent Label,Etiqueta pai
Parent Sales Person,Vendas Pessoa pai
Parent Territory,Território pai
Parenttype,ParentType
Partially Completed,Parcialmente concluída
Participants,Participantes
Partly Billed,Parcialmente faturado
Partly Delivered,Entregue em parte
Partner,Parceiro
Partner Target Detail,Detalhe Alvo parceiro
Partner Type,Tipo de parceiro
Passport Number,Número do Passaporte
Password,Senha
Password Expires in (days),Senha expira em (dias)
Patch,Remendo
Patch Log,Log remendo
Pay To / Recd From,Para pagar / RECD De
Payables,Contas a pagar
Payables Group,Grupo de contas a pagar
Payment Entries,Entradas de pagamento
Payment Entry has been modified after you pulled it. 			Please pull it again.,"Entrada de pagamento foi modificada depois que você tirou isso. Por favor, puxe-o novamente."
Payment Reconciliation,Reconciliação de pagamento
Payment Terms,Condições de Pagamento
Payment days,Dia de pagamento
Payment to Invoice Matching Tool,Pagamento a ferramenta correspondente fatura
Payment to Invoice Matching Tool Detail,Pagamento a Detalhe Ferramenta fatura correspondente
Payments,Pagamentos
Payroll Setup,Configuração da folha de pagamento
Pending,Pendente
Pending Review,Revisão pendente
Percent,Por cento
Percent Complete,Porcentagem Concluída
Percentage Allocation,Alocação percentual
Percentage variation in quantity to be allowed while receiving or delivering this item.,Variação percentual na quantidade a ser permitido ao receber ou entregar este item.
Percentage you are allowed to receive or deliver more against the quantity ordered. <p>For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to receive 110 units</p>,"Percentagem que estão autorizados a receber ou entregar mais contra a quantidade encomendada. <p> Por exemplo: Se você encomendou 100 unidades. e seu subsídio é de 10%, então você está autorizada a receber 110 unidades </p>"
Performance appraisal.,Avaliação de desempenho.
Period Closing Voucher,Comprovante de Encerramento período
Periodicity,Periodicidade
Perm Level,Perm Nível
Permanent Accommodation Type,Tipo de Alojamento Permanente
Permanent Address,Endereço permanente
Permission Control,Controle de permissão
Permission Engine,Motor permissão
Permission Level,Nível de Permissão
Permission Levels,Níveis de Permissão
Permission Manager,Gerente de Permissão
Permission Rules,Regras de permissão
Permissions,Permissões
Permissions Settings,Configurações de permissões
Permissions are automatically translated to Standard Reports and Searches,As permissões são automaticamente traduzidos para Relatórios Padrão e Pesquisas
"Permissions are set on Roles and Document Types (called DocTypes) by restricting read, edit, make new, submit, cancel, amend and report rights.","As permissões são definidas em Funções e tipos de documentos (chamados DOCTYPEs) restringindo ler, editar, fazer novos, enviar, cancelar, alterar e denunciar direitos."
Permissions at higher levels are 'Field Level' permissions. All Fields have a 'Permission Level' set against them and the rules defined at that permissions apply to the field. This is useful incase you want to hide or make certain field read-only.,Permissões em níveis mais elevados são permissões &quot;nível de campo&quot;. Todos os campos têm um conjunto &#39;Nível de Permissão &quot;contra eles e as regras definidas em que as permissões se aplicam ao campo. Isto é útil no caso de você querer esconder ou fazer determinado campo somente leitura.
"Permissions at level 0 are 'Document Level' permissions, i.e. they are primary for access to the document.","Permissões no nível 0 são permissões &#39;Nível de Documento &quot;, ou seja, são primário para o acesso ao documento."
Permissions translate to Users based on what Role they are assigned,Permissões traduzir aos usuários com base em papel que são atribuídos
Permissions will be based on this DocType,Permissões será baseada neste DocType
Person,Pessoa
Person To Be Contacted,Pessoa a ser contatada
Personal Details,Detalhes pessoais
Personal Email,E-mail pessoal
Phone,Telefone
Phone No,N º de telefone
Phone No.,Não. telefone
Pick Columns,Escolha Colunas
Pin Code,Código PIN
Pincode,PINCODE
Place of Issue,Local de Emissão
Plan for scheduled maintenance contracts.,Plano para contratos de manutenção programados.
Planned Qty,Qtde planejada
Planned Quantity,Quantidade planejada
Please Enter Abbreviation or Short Name properly as it will be added as Suffix to all Account Heads.,Por favor insira Abreviação ou Nome Curto corretamente como ele será adicionado como sufixo a todos os chefes de Conta.
Please check,"Por favor, verifique"
Please click on another report from the menu.,"Por favor, clique em outro relatório a partir do menu."
Please enter Bill Date,Por favor insira Data Bill
Please enter valid ,Por favor insira válido
Please save the Newsletter before sending.,"Por favor, salve o boletim antes de enviar."
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,Por favor seleccione Carry Forward se você também quer incluir equilíbrio ano fiscal anterior deixa para este ano fiscal
Please select: ,Por favor seleccione:
Please specify Default Currency in Company Master \			and Global Defaults,"Por favor, especificar a moeda padrão na empresa MASTER \ e Padrões Globais"
Please specify a valid,"Por favor, especifique um válido"
Plot Control,Controle trama
Point of Sale,Ponto de Venda
Point-of-Sale Setting,Ponto-de-Venda Setting
Points,Pontos
Post Graduate,Pós-Graduação
Post Topic,Postar Tópico
Posting Date,Data da Publicação
Posting Time,Postagem Tempo
Potential Sales Deal,Negócio de Vendas
Potential opportunities for selling.,Oportunidades potenciais para a venda.
"Precision for Float fields (quantities, discounts, percentages etc) only for display. Floats will still be calculated up to 6 decimals.","Precisão para campos float (quantidade, descontos, etc percentuais) apenas para exibição. Flutua ainda será calculado até 6 casas decimais."
Prefix,Prefixo
Present,Apresentar
Prevdoc DocType,Prevdoc DocType
Prevdoc Doctype,Prevdoc Doctype
Preview,Visualização
Previous Work Experience,Experiência anterior de trabalho
Price List,Lista de Preços
Price List Currency,Hoje Lista de Preços
Price List Currency Conversion Rate,O preço de lista taxa de conversão
Price List Exchange Rate,Preço Lista de Taxa de Câmbio
Price List Master,Mestre Lista de Preços
Price List Name,Nome da lista de preços
Price List Rate,Taxa de Lista de Preços
Price List Rate*,Preço * Taxa de lista
Price List and Currency,Lista de Preços e Moeda
Price Lists and Rates,Listas de Preços e Tarifas
Primary,Primário
Print Format,Imprimir Formato
Print Heading,Imprimir título
Print Hide,Imprimir Ocultar
Print Width,Largura de impressão
Print Without Amount,Imprimir Sem Quantia
Priority,Prioridade
Private,Privado
Process,Processo
Process Payroll,Payroll processo
Produced Quantity,Quantidade produzida
Product,Produto
Product Categories,Categorias de Produtos
Product Category for website,Categoria de Produto para o site
Product Enquiry,Produto Inquérito
Product Group,Grupo de Produtos
"Product Groups that are listed on the website. The first product group from this list will be listed by default on the ""Products Page""",Grupos de produtos listados no site. O grupo primeiro produto desta lista serão listados por padrão na &quot;Página de Produtos&quot;
Product Settings,Configurações do produto
Production,Produção
Production Order,Ordem de Produção
Production Plan Item,Item do plano de produção
Production Plan Items,Plano de itens de produção
Production Plan Sales Order,Produção Plano de Ordem de Vendas
Production Plan Sales Orders,Vendas de produção do Plano de Ordens
Production Planning (MRP),Planejamento de Produção (MRP)
Production Planning Tool,Ferramenta de Planejamento da Produção
Products Settings,Configurações de produtos
"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Os produtos serão classificados por peso-idade em buscas padrão. Mais o peso-idade, maior o produto irá aparecer na lista."
Profile,Perfil
Profile Control,Controlo de perfil
Profile Defaults,Padrões de Perfil
Profile Represents a User in the system.,Perfil Representa um usuário no sistema.
Program / Seminar Title,Programa / Seminário Título
Project,Projeto
Project Activity,Projeto Atividade
Project Activity Update,Atualização do Projeto Atividade
Project Control,Projeto de Controle de
Project Costing,Project Costing
Project Details,Detalhes do projeto
Project Milestone,Projeto Milestone
Project Milestones,Etapas do Projeto
Project Name,Nome do projeto
Project Start Date,Data de início do projeto
Project Tasks,Tarefas do Projeto
Project Type,Tipo de projeto
Project Value,Valor do projeto
Project activity / task.,Atividade de projeto / tarefa.
Project master.,Projeto mestre.
Project will get saved and will be searchable with project name given,Projeto será salvo e poderão ser pesquisados ​​com o nome de determinado projeto
Projected Qty,Qtde Projetada
Projects,Projetos
Projects Home,Home Projetos
Prompt email sending to customers and suppliers,E-mail Prompt envio a clientes e fornecedores
Prompt for Email on Submission of,Solicitar-mail mediante a apresentação da
Properties,Propriedades
Property,Propriedade
Property Setter,Setter propriedade
Property Setter overrides a standard DocType or Field property,Setter propriedade substitui uma propriedade DocType ou Campo padrão
Property Type,Tipo de propriedade
Provide email id registered in company,Fornecer ID e-mail registrado na empresa
Public,Público
Published,Publicado
Pull Emails from the Inbox and attach them as Communication records (for known contacts).,Puxe-mails da caixa de entrada e anexá-los como registros de comunicação (por contatos conhecidos).
Pull Opportunity Detail,Puxe Detalhe da oportunidade
Pull Payment Entries,Puxe as entradas de pagamento
Pull Purchase Order Details,Puxe Detalhes do Pedido de Compra
Pull Quotation Items,Itens puxar cotação
Pull Sales Order Items,Puxe itens da ordem
Pull items from Sales Order mentioned in the above table.,Puxe itens da Ordem de Vendas mencionado na tabela acima.
Pull sales orders (pending to deliver) based on the above criteria,Puxe pedidos de vendas pendentes (de entregar) com base nos critérios acima
Pur Order,Ordem Pur
Pur Receipt,Recibo Pur
Purchase,Comprar
Purchase Analytics,Analytics compra
Purchase Common,Compre comum
Purchase Date,Data da compra
Purchase Details,Detalhes de compra
Purchase Discounts,Descontos de compra
Purchase Document No,Compra documento n
Purchase Document Type,Compra Tipo de Documento
Purchase Invoice,Compre Fatura
Purchase Invoice Advance,Compra Antecipada Fatura
Purchase Invoice Advances,Avanços comprar Fatura
Purchase Invoice Item,Comprar item Fatura
Purchase Order,Ordem de Compra
Purchase Order Date,Data da compra Ordem
Purchase Order Item,Comprar item Ordem
Purchase Order Item No,Comprar item Portaria n
Purchase Order Item Supplied,Item da ordem de compra em actualização
Purchase Order Items,Comprar Itens Encomendar
Purchase Order Items Supplied,Itens ordem de compra em actualização
Purchase Order Items To Be Received,Comprar itens para ser recebido
Purchase Order Message,Mensagem comprar Ordem
Purchase Order Required,Ordem de Compra Obrigatório
Purchase Order sent by customer,Ordem de Compra enviada pelo cliente
Purchase Orders given to Suppliers.,As ordens de compra dadas a fornecedores.
Purchase Receipt,Compra recibo
Purchase Receipt Item,Comprar item recepção
Purchase Receipt Item Supplied,Recibo de compra do item em actualização
Purchase Receipt Item Supplieds,Compre Supplieds item recepção
Purchase Receipt Items,Comprar Itens Recibo
Purchase Receipt Message,Mensagem comprar Recebimento
Purchase Receipt No,Compra recibo Não
Purchase Receipt Required,Recibo de compra Obrigatório
Purchase Request,Pedido de Compra
Purchase Request Date,Data da compra Pedido
Purchase Request Detail No,Detalhe comprar Pedido Não
Purchase Request For Warehouse,Pedidos de compra do Armazém
Purchase Request Item,Comprar item de solicitação
Purchase Request No,Compre Pedir Não
Purchase Requisition Details,Comprar Detalhes Requisição
Purchase Requisition No,Requisição de compra Não
Purchase Return,Voltar comprar
Purchase Returned,Compre Devolvido
Purchase Returns,Retorna compra
Purchase Taxes and Charges,Impostos e Encargos de compra
Purchase Taxes and Charges Master,Impostos de compra e Master Encargos
Purpose,Propósito
Purpose must be one of ,Finalidade deve ser um dos
QA Inspection,Inspeção QA
QA No,Não QA
QAI/11-12/,QAI/11-12 /
QTN,QTN
Qty,Qty
Qty Consumed Per Unit,Qtde consumida por unidade
Qty To Manufacture,Qtde Para Fabricação
Qty as per Stock UOM,Qtde como por Ação UOM
Qualification,Qualificação
Quality,Qualidade
Quality Inspection,Inspeção de Qualidade
Quality Inspection Parameters,Inspeção parâmetros de qualidade
Quality Inspection Reading,Leitura de Inspeção de Qualidade
Quality Inspection Readings,Leituras de inspeção de qualidade
Quantity,Quantidade
Quantity Requested for Purchase,Quantidade Solicitada para Compra
Quantity already manufactured,Quantidade já fabricados
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Quantidade do item obtido após a fabricação / reembalagem de determinadas quantidades de matérias-primas
Quantity should be equal to Manufacturing Quantity. ,Quantidade deve ser igual à quantidade de Fabricação.
Quarter,Trimestre
Quarterly,Trimestral
Query,Pergunta
Query Options,Opções de Consulta
Query Report,Query Report
Question,Pergunta
Quick Help for Setting Permissions,Ajuda rápida para definir permissões
Quick Help for User Properties,Ajuda rápida para Propriedades do usuário
Quotation,Citação
Quotation Date,Data citação
Quotation Item,Item citação
Quotation Items,Itens cotação
Quotation Lost Reason,Cotação Perdeu Razão
Quotation Message,Mensagem citação
Quotation No,Não citação
Quotation No.,Não. citação
Quotation Sent,Cotação enviada
Quotation To,Para citação
Quotation no against which this Sales Order is made ,Orçamento sem contra que esta Ordem de vendas é feita
Quotes to Leads or Customers.,Cotações para Leads ou Clientes.
Raise Exception,Levante Exceção
Raise Production Order,Levante Ordem de Produção
Raise Purchase Request,Levante Pedido de Compra
Raise Purchase Request when stock reaches re-order level,Levante Compra Pedido quando o estoque atinge novo pedido de nível
Raised By,Levantadas por
Raised By (Email),Levantadas por (e-mail)
Random,Acaso
Range,Alcance
Rate,Taxa
Rate ,Taxa
Rate Of Materials Based On,Taxa de materiais com base
Rate at which Customer Currency is converted to customer's base currency,Taxa em que moeda do cliente é convertido para a moeda base de cliente
Rate at which Price list currency is converted to company's base currency,Taxa em que moeda lista de preços é convertido para a moeda da empresa de base
Rate at which Price list currency is converted to customer's base currency,Taxa em que moeda lista de preços é convertido para a moeda base de cliente
Rate at which customer's currency is converted to company's base currency,Taxa na qual a moeda do cliente é convertido para a moeda da empresa de base
Rate at which supplier's currency is converted to company's base currency,Taxa na qual a moeda que fornecedor é convertido para a moeda da empresa de base
Rate at which this tax is applied,Taxa em que este imposto é aplicado
Rate*,* Taxa de
Raw Material Details,-Primas detalhes materiais
Raw Material Item Code,Item Código de matérias-primas
Raw Materials Supplied Cost,Matérias-primas fornecidas Custo
Re-Calculate Values,Re-calcular valores
Re-Order Level,Re Ordem Nível
Re-Order Qty,Re-Ordem Qtde
Read,Ler
Read Only,Somente leitura
Reading 1,Leitura 1
Reading 10,Leitura 10
Reading 2,Leitura 2
Reading 3,Leitura 3
Reading 4,Reading 4
Reading 5,Leitura 5
Reading 6,Leitura 6
Reading 7,Lendo 7
Reading 8,Leitura 8
Reading 9,Leitura 9
Reason,Razão
Reason for Leaving,Motivo da saída
Reason for Resignation,Motivo para Demissão
Recalculate,Recalcular
Recd Quantity,Quantidade RECD
Receivables,Recebíveis
Receivables Group,Grupo de recebíveis
Received Date,Data de recebimento
Received Qty,Qtde recebeu
Receiver List,Lista de receptor
Receiver Name,Nome receptor
Receiver Parameter,Parâmetro receptor
Recent,Recente
Recipient,Beneficiário
Recipients,Destinatários
Reconciliation Data,Dados de reconciliação
Reconciliation HTML,Reconciliação HTML
Reconciliation JSON,Reconciliação JSON
Recurring Id,Id recorrente
Recurring Invoice,Fatura recorrente
Recurring Type,Tipo recorrente
Ref Code,Ref Código
Ref Doc should be submitted?,Ref Doc deve ser apresentada?
Ref DocType,Ref DocType
Ref Name,Nome Ref
Ref Rate,Taxa de Ref
Ref Rate ,Taxa de Ref
Ref Rate*,* Taxa de Ref
Ref SQ,Ref ²
Ref Type,Tipo Ref
Reference,Referência
Reference Date,Data de Referência
Reference DocType Key,Referência DocType chave
Reference Docname Key,Referência docName chave
Reference Name,Nome de referência
Reference Number,Número de Referência
Reference Type,Tipo de referência
Refresh,Refrescar
Registration Details,Detalhes registro
Registration Info,Registo Informações
Reject HTML,Rejeitar HTML
Rejected,Rejeitado
Rejected Quantity,Quantidade rejeitado
Rejected Serial No,Rejeitado Não Serial
Rejected Warehouse,Armazém rejeitado
Related Page,Página Relacionada
Relation,Relação
Relieving Date,Aliviar Data
Remark,Observação
Remarks,Observações
Remove,Remover
Remove Bookmark,Remover Bookmark
Rename,Rebatizar
Rename Tool,Renomear Ferramenta
Rented,Alugado
Repeat on Day of Month,Repita no Dia do Mês
Replace,Substituir
Replace Item / BOM in all BOMs,Substituir item / BOM em todas as BOMs
"Replace a particular BOM in all other BOMs where it is used. It will replace the old BOM link, update cost and regenerate ""BOM Explosion Item"" table as per new BOM","Substituir um BOM particular em todas as BOMs outros onde ele é usado. Ele irá substituir o link BOM antigo, atualizar o custo e regenerar &quot;Explosão BOM Item&quot; tabela como por novo BOM"
Replied,Respondeu
Report,Relatório
Report Date,Relatório Data
Report Hide,Hide
Report Name,Nome do Relatório
Report Saved,Relatório salvo
Report Script,Script relatório
Report Server Script,Relatório Script Servidor
Report was not saved (there were errors),Relatório não foi salvo (houve erros)
Reports,Relatórios
Reports to,Relatórios para
Represents the states allowed in one document and role assigned to change the state.,Representa os estados permitidos em um documento e papel atribuído a alterações do estado.
Reqd,Reqd
Reqd By Date,Reqd Por Data
Request Type,Tipo de Solicitação
Request for Information,Pedido de Informação
Request for purchase.,Pedido de compra.
Requested By,Solicitado por
Required By,Exigido por
Required Date,Data Obrigatório
Required Qty,Quantidade requerida
Required only for sample item.,Necessário apenas para o item amostra.
Required raw materials issued to the supplier for producing a sub - contracted item.,Matérias-primas necessárias emitidos para o fornecedor para a produção de um sub - item contratado.
Reseller,Revendedor
Reserved Quantity,Quantidade reservados
Reserved Warehouse,Reservado Armazém
Resignation Letter Date,Data carta de demissão
Resolution,Resolução
Resolution Date,Data resolução
Resolution Details,Detalhes de Resolução
Resolved By,Resolvido por
Restrict IP,Restringir IP
Restrict submission rights based on amount,Restringir apresentação direitos com base na quantidade
Restrict user from this IP address only. Multiple IP addresses can be added by separating with commas. Also accepts partial IP addresses like (111.111.111),Restringir usuário a partir deste endereço IP. Vários endereços IP podem ser adicionados ao separar com vírgulas. Também aceita parciais endereços IP como (111.111.111)
Restricting By User,Restringir por usuário
Retailer,Varejista
Return Date,Data de regresso
Return Type,Tipo de retorno
Returned Qty,Qtde voltou
Review Date,Comente Data
Rgt,Rgt
Right,Direito
Role,Papel
Role Name,Nome da Função
Roles,Funções
Roles HTML,Funções HTML
Rounded Total,Total arredondado
Rounded Total (Export),Total arredondado (Exportação)
Row,Linha
Row #,Linha #
Row # ,Linha #
Rule Definition,Definição de regra
Rule Name,Nome da regra
Rule Priority,Prioridade regra
Rule Status,Estado regra
Rules defining transition of state in the workflow.,Regras que definem a transição de estado do fluxo de trabalho.
"Rules for how states are transitions, like next state and which role is allowed to change state etc.","Regras de como os estados são transições, como o próximo estado e que terá permissão para mudar de estado etc"
Run,Correr
SLE Exists,LES existe
SMS,SMS
SMS Center,SMS Center
SMS Control,SMS Controle
SMS Gateway URL,SMS Gateway de URL
SMS Log,SMS Log
SMS Parameter,Parâmetro SMS
SMS Parameters,SMS Parâmetros
SMS Receiver,SMS Receptor
SMS Sender Name,Nome do remetente SMS
SMS Settings,Definições SMS
SMTP Server (e.g. smtp.gmail.com),"SMTP Server (smtp.gmail.com, por exemplo)"
SO,SO
SO Date,SO Data
SO Detail ,SO Detalhe
SO Pending Qty,Está pendente de Qtde
SO/10-11/,SO/10-11 /
SO1112,SO1112
SQTN,SQTN
STE,STO
SUP,SUP
SUPP,SUPP
SUPP/10-11/,SUPP/10-11 /
Salary,Salário
Salary Information,Informação salário
Salary Manager,Gerente de salário
Salary Mode,Modo de salário
Salary Slip,Folha de salário
Salary Slip Deduction,Dedução folha de salário
Salary Slip Earning,Folha de salário Ganhando
Salary Structure,Estrutura Salarial
Salary Structure Deduction,Dedução Estrutura Salarial
Salary Structure Earning,Estrutura salarial Ganhando
Salary Structure Earnings,Estrutura Lucros Salário
Salary components.,Componentes salariais.
Sales,De vendas
Sales Analytics,Sales Analytics
Sales BOM,BOM vendas
Sales BOM Help,Vendas Ajuda BOM
Sales BOM Item,Vendas item BOM
Sales BOM Items,Vendas Itens BOM
Sales Browser,Navegador vendas
Sales Browser Control,Vendas controle de navegador
Sales Common,Vendas comuns
Sales Dashboard,Painel de vendas
Sales Details,Detalhes de vendas
Sales Discounts,Descontos de vendas
Sales Email Settings,Vendas Configurações de Email
Sales Extras,Extras de vendas
Sales Invoice,Fatura de vendas
Sales Invoice Advance,Vendas antecipadas Fatura
Sales Invoice Item,Vendas item Fatura
Sales Invoice Message,Vendas Mensagem Fatura
Sales Invoice No,Vendas factura n
Sales Order,Ordem de Vendas
Sales Order Date,Vendas Data Ordem
Sales Order Item,Vendas item Ordem
Sales Order Items,Vendas Itens Encomendar
Sales Order Message,Vendas Mensagem Ordem
Sales Order No,Vendas decreto n º
Sales Order Required,Ordem vendas Obrigatório
Sales Orders Pending To Be Delivered,Pedidos de Vendas pendentes a serem entregues
Sales Orders Pending to be Delivered,Pedidos de Vendas pendentes a serem entregues
Sales Partner,Parceiro de vendas
Sales Partner Details,Parceiro de vendas Detalhes
Sales Partner Name,Vendas Nome do parceiro
Sales Partner Target,Vendas Alvo Parceiro
Sales Person,Vendas Pessoa
Sales Person Name,Vendas Nome Pessoa
Sales Person Targets,Metas de vendas Pessoa
Sales Rate,Taxa de vendas
Sales Return,Vendas Retorno
Sales Returns,Retorna vendas
Sales Taxes and Charges,Vendas Impostos e Taxas
Sales Taxes and Charges Master,Vendas Impostos e Encargos mestre
Sales Team,Equipe de Vendas
Sales Team Details,Vendas Team Detalhes
Sales Team1,Vendas team1
Sales and Purchase,Vendas e Compras
Sales and Purchase Return Item,Vendas e item retorno de compra
Sales and Purchase Return Items,Vendas e itens de retorno de Compra
Sales and Purchase Return Tool,Ferramenta de vendas e retorno de compra
Sales campaigns,Campanhas de vendas
Sales persons and targets,Vendas pessoas e metas
Sales taxes template.,Impostos sobre as vendas do modelo.
Sales territories.,Os territórios de vendas.
Salutation,Saudação
Sample Size,Tamanho da amostra
Sanctioned Amount,Quantidade sancionada
Sandbox,Sandbox
Saturday,Sábado
Save,Salvar
Schedule,Programar
Scheduled,Programado
Scheduled Confirmation Date,Confirmação Data programada
Scheduled Date,Data prevista
Scheduler Log,Scheduler Log
School/University,Escola / Universidade
Score (0-5),Pontuação (0-5)
Score Earned,Pontuação Agregado
Scrap %,Sucata%
Script,Escrita
Script Type,Tipo de roteiro
Script to attach to all web pages.,Script para anexar a todas as páginas da web.
Search,Pesquisar
Search Criteria,Critérios da pesquisa
Search Fields,Campos de Pesquisa
Search Help,Procurar Ajuda
Seasonality for setting budgets.,Sazonalidade para definir orçamentos.
Section Break,Quebra de seção
Security Settings,Configurações de Segurança
Segment Name,Nome segmento
Select,Selecionar
"Select ""Yes"" for sub - contracting items",Selecione &quot;Sim&quot; para a sub - itens contratantes
"Select ""Yes"" if this item is to be sent to a customer or received from a supplier as a sample. Delivery notes and Purchase Receipts will update stock levels but there will be no invoice against this item.","Selecione &quot;Sim&quot; se este item é para ser enviado para um cliente ou recebidas de um fornecedor como amostra. Notas de entrega e recibos de compra irá atualizar os níveis de estoque, mas não haverá fatura contra este item."
"Select ""Yes"" if this item is used for some internal purpose in your company.",Selecione &quot;Sim&quot; se este item é usado para alguma finalidade interna na sua empresa.
"Select ""Yes"" if this item represents some work like training, designing, consulting etc.","Selecione &quot;Sim&quot; se esse item representa algum trabalho como treinamento, design, consultoria etc"
"Select ""Yes"" if you are maintaining stock of this item in your Inventory.",Selecione &quot;Sim&quot; se você está mantendo estoque deste item no seu inventário.
"Select ""Yes"" if you supply raw materials to your supplier to manufacture this item.",Selecione &quot;Sim&quot; se você fornecer matérias-primas para o seu fornecedor para fabricar este item.
Select All,Selecionar tudo
Select Attachments,Selecione Anexos
Select Budget Distribution to unevenly distribute targets across months.,Selecione distribuição do orçamento para distribuir desigualmente alvos em todo mês.
"Select Budget Distribution, if you want to track based on seasonality.","Selecione distribuição do orçamento, se você quiser acompanhar baseado em sazonalidade."
Select Customer,Selecione Cliente
Select Digest Content,Selecione o conteúdo Digest
Select DocType,Selecione DocType
Select Document Type,Selecione Tipo de Documento
Select Document Type or Role to start.,Selecione tipo de documento ou papel para começar.
Select Form,Selecione Formulário
Select Items from Delivery Note,Selecione itens da Nota de Entrega
Select Items from Purchase Order,Selecione itens da Ordem de Compra
Select Items from Purchase Receipt,Selecione itens de Recibo de compra
Select Items from Sales Order,Selecione itens da Ordem de Vendas
Select PR,Selecionar PR
Select Print Format,Selecione Formato de Impressão
Select Print Heading,Selecione Imprimir título
Select Purchase Request,Selecione Pedido de Compra
Select Report Name,Selecione Nome do Relatório
Select Role,Selecione Papel
Select Sales Orders,Selecione Pedidos de Vendas
Select Sales Orders from which you want to create Production Orders.,Selecione Ordens de venda a partir do qual você deseja criar ordens de produção.
Select Shipping Address,Selecione Endereço para envio
Select Supplier Quotation,Selecione cotação Fornecedor
Select Terms and Conditions,Selecione Termos e Condições
Select Transaction,Selecione Transação
Select Type,Selecione o Tipo
Select User or Property to start.,Selecione Usuário ou propriedade para começar.
Select account head of the bank where cheque was deposited.,Selecione cabeça conta do banco onde cheque foi depositado.
Select company name first.,Selecione o nome da empresa em primeiro lugar.
Select name of Customer to whom project belongs,Selecione o nome do cliente a quem pertence projeto
Select template from which you want to get the Goals,Selecione o modelo a partir do qual você deseja obter as Metas
Select the Employee for whom you are creating the Appraisal.,Selecione o funcionário para quem você está criando a Avaliação.
Select the currency in which price list is maintained,Selecione a moeda na qual a lista de preços é mantida
Select the label after which you want to insert new field.,Selecione o rótulo após o qual você deseja inserir novo campo.
Select the period when the invoice will be generated automatically,Selecione o período em que a factura será gerado automaticamente
"Select the price list as entered in ""Price List"" master. This will pull the reference rates of items against this price list as specified in ""Item"" master.","Selecione a lista de preços como entrou em master &quot;Preço de lista&quot;. Isso vai puxar as taxas de referência de itens contra esta lista de preços, conforme especificado no &quot;Item&quot; mestre."
Select the relevant company name if you have multiple companies,"Selecione o nome da empresa em questão, se você tem várias empresas"
Select the relevant company name if you have multiple companies.,"Selecione o nome da empresa em questão, se você tem várias empresas."
Select who you want to send this newsletter to,Selecione para quem você deseja enviar esta newsletter para
Selected Attendance date will comes in the attendance template.,Data de comparecimento selecionado vem no modelo de atendimento.
"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","Selecionando &quot;Sim&quot; vai permitir que este item deve aparecer na Ordem de Compra, Recibo de Compra."
"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","Selecionando &quot;Sim&quot; vai permitir que este item para figurar na Ordem de Vendas, Nota de Entrega"
"Selecting ""Yes"" will allow you to create Bill of Material showing raw material and operational costs incurred to manufacture this item.",Selecionando &quot;Sim&quot; permitirá a você criar Bill of Material mostrando matérias-primas e os custos operacionais incorridos para fabricar este item.
"Selecting ""Yes"" will allow you to make a Production Order for this item.",Selecionando &quot;Sim&quot; vai permitir que você faça uma ordem de produção para este item.
"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.",Selecionando &quot;Sim&quot; vai dar uma identidade única para cada entidade deste item que pode ser visto no mestre Número de ordem.
Selling,Vendendo
Selling Home,Venda de casa
Send,Enviar
Send Autoreply,Enviar Autoreply
Send Email,Enviar E-mail
Send From,Enviar de
Send Me A Copy,Envie-me uma cópia
"Send Newsletters to your contacts, leads.","Enviar Newsletters aos seus contatos, leva."
Send SMS,Envie SMS
Send To,Enviar para
"Send an email to users of role ""Material Manager"" and ""Purchase Manager"" when re-order level is crossed.",Enviar um e-mail para os usuários do papel &quot;Gerenciador de Material&quot; e &quot;Gerente de Compras&quot; quando reordenar nível é cruzado.
Send automatic emails to Contacts on Submitting transactions.,Enviar e-mails automáticos para Contatos no Submetendo transações.
"Send bulk SMS to leads, customers, contacts","Enviar SMS em massa para leads, clientes, contatos"
Send mass SMS to your contacts,Enviar SMS em massa para seus contatos
Send regular summary reports via Email.,Enviar relatórios resumidos regulares via e-mail.
Send to this list,Enviar para esta lista
Sender,Remetente
Sender Name,Nome do remetente
"Sending newsletters is not allowed for Trial users, \				to prevent abuse of this feature.","Envio de newsletters não é permitido para usuários experimentais, \ para evitar o abuso deste recurso."
Sent Mail,E-mails enviados
Sent On,Enviado em
Sent Quotation,Cotação enviada
Separate production order will be created for each finished good item.,Ordem de produção separado será criado para cada item acabado.
Serial No,N º de Série
Serial No Details,Serial Detalhes Nenhum
Serial No Service Contract Expiry,N º de Série Vencimento Contrato de Serviço
Serial No Status,No Estado de série
Serial No Warranty Expiry,Caducidade Não Serial Garantia
Serialized Item: ',Item serializado: &#39;
Series,Série
Series Detail,Detalhe série
Series List for this Transaction,Lista de séries para esta transação
Series Options,Opções de Série
Server,Servidor
Server Script,Script servidor
Service Address,Serviço Endereço
Service Person,Pessoa de serviço
Session Expired. Logging you out,Sessão expirada. Deslogar você
Session Expires in (time),Expira em sessão (tempo)
Session Expiry,Caducidade sessão
Session Expiry in Hours e.g. 06:00,"Caducidade sessão em Horas, por exemplo 06:00"
Set From Image,Definir Da imagem
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,"Definir item Group-wise orçamentos sobre este território. Você também pode incluir sazonalidade, definindo a distribuição."
Set Login and Password if authentication is required.,Set Login e Senha se é necessária autenticação.
Set New Password,Definir nova senha
Set Value,Definir valor
"Set a new password and ""Save""",Definir uma nova senha e &quot;Save&quot;
Set default values for entry,Definir valores padrão para entrada
Set default values for users (also used for permissions).,Definir valores padrão para os usuários (também usado para permissões).
Set multiple numbering series for transactions,Definir série de numeração múltipla para transações
Set permissions on transactions / masters,Definir permissões em transações / mestres
Set prefix for numbering series on your transactions,Definir prefixo para numeração de série em suas transações
Set targets Item Group-wise for this Sales Person.,Estabelecer metas item Group-wise para este Vendas Pessoa.
Set the POP3 email settings to pull emails directly from a mailbox and create Support Tickets,Definir as configurações de e-mail POP3 para puxar e-mails diretamente a partir de uma caixa de correio e criar tickets de suporte
Set workflow rules.,Definir regras de 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 SMTP de envio de correio aqui. Todo o sistema gerou notificações, e-mails vai a partir deste servidor de correio. Se você não tem certeza, deixe este campo em branco para usar servidores ERPNext (e-mails ainda serão enviadas a partir do seu ID e-mail) ou entre em contato com seu provedor de e-mail."
Setting Account Type helps in selecting this Account in transactions.,Tipo de conta Definir ajuda na seleção desta conta em transações.
Settings for About Us Page.,Sobre as definições para nós página.
Settings for Contact Us Page,Configurações para Contacte-nos Página
Settings for Contact Us Page.,Configurações para página Fale conosco.
Settings for Product Catalog on the website,Configurações para Catálogo de Produtos no site
Settings for Product Catalog on the website.,Configurações para Catálogo de Produtos no site.
Settings for the About Us Page,Definições para a página Sobre nós
"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""","Definições para extrair os candidatos a emprego a partir de um &quot;jobs@example.com&quot; caixa de correio, por exemplo"
Setup,Instalação
Setup Control,Controle de configuração
Setup Series,Série de configuração
Setup of fonts and background.,Instalação de fontes e de fundo.
"Setup of top navigation bar, footer and logo.","Configuração de topo barra de navegação do rodapé, e logotipo."
Setup outgoing SMS via your bulk SMS provider,Configurar SMS enviadas 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 de e-mail de apoio
Ship To,Enviar Para
Shipping Address,Endereço para envio
Shipping Address Name,Nome Endereço para envio
Shipping Details,Detalhes de envio
Short biography for website and other publications.,Breve biografia para o site e outras publicações.
Shortcut,Atalho
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Show &quot;Em Stock&quot; ou &quot;não em estoque&quot;, baseado em stock disponível neste armazém."
Show / Hide Modules,Show / Hide Módulos
Show Details,Ver detalhes
Show Filters,Mostrar Filtros
Show Price in Website (if set),Mostrar Preço em Website (se definido)
Show Print First,Mostrar Primeira Impressão
Show a slideshow at the top of the page,Ver uma apresentação de slides no topo da página
Show in Website,Show em site
Show rows with zero values,Mostrar as linhas com valores zero
Show this slideshow at the top of the page,Mostrar esta slideshow no topo da página
"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 anexado no final de cada e-mail
Simplify entry forms by disabling features,Simplificar os formulários de entrada pela desativação de recursos
Single,Único
Single unit of an Item.,Única unidade de um item.
Sky,Céu
Slideshow,Slideshow
Slideshow Items,Itens slideshow
Slideshow Name,Nome slideshow
Slideshow like display for the website,Slideshow como display para o site
Small Text,Texto Pequeno
Snow,Neve
Solid background color (default light gray),Cor sólida (cinza claro padrão)
Sorry we were unable to find what you were looking for.,"Desculpe, não foram capazes de encontrar o que você estava procurando."
Sorry you are not permitted to view this page.,"Desculpe, você não tem permissão para visualizar esta página."
Sorry! We can only allow upto 100 rows for Stock Reconciliation.,Desculpe! Nós só podemos permitir que até 100 linhas para Reconciliação Stock.
Sort By,Classificar por
Sort Order,Ordem
Source,Fonte
Source Warehouse,Armazém fonte
Source and Target Warehouse cannot be same,Fonte e armazém de destino não pode ser igual
Source of th,Fonte do th
"Source of the lead. If via a campaign, select ""Campaign""","Fonte do chumbo. Se através de uma campanha, selecione &quot;Campanha&quot;"
Special Page Settings,Especiais Configurações da página
Specification Details,Detalhes especificação
Split Delivery Note into packages.,Nota de Entrega dividir em pacotes.
Standard,Padrão
Standard Rate,Taxa normal
"Standard Terms and Conditions that can be added to Sales and Purchases.Examples:1. Validity of the offer.1. Payment Terms (In Advance, On Credit, part advance etc).1. What is extra (or payable by the Customer).1. Safety / usage warning.1. Warranty if any.1. Returns Policy.1. Terms of shipping, if applicable.1. Ways of addressing disputes, indemnity, liability, etc.1. Address and Contact of your Company.","Termos e Condições Padrão que pode ser adicionado para Vendas e Purchases.Examples: 1. Validade do offer.1. Condições de pagamento (adiantado, no crédito etc antecedência, parte) 0,1. O que é muito (ou a pagar pelo Cliente) .1. Segurança / uso warning.1. Garantia se any.1. Retorna Policy.1. Condições de entrega, se applicable.1. Formas de disputas de endereçamento, indenização, responsabilidade, etc.1. Endereço e contato da sua empresa."
"Standard tax template that can be applied to all Purchase Transactions. This template can contain list of tax heads and also other expense heads like ""Shipping"", ""Insurance"", ""Handling"" etc.#### NoteThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.#### Description of Columns1. Calculation Type:     - This can be on **Net Total** (that is the sum of basic amount).    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.    - **Actual** (as mentioned).2. Account Head: The Account ledger under which this tax will be booked3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.4. Description: Description of the tax (that will be printed in invoices / quotes).5. Rate: Tax rate.6. Amount: Tax amount.7. Total: Cumulative total to this point.8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).9. Consider Tax or Charge for: In this section you can specify if the tax / charge is only for valuation (not a part of total) or only for total (does not add value to the item) or for both.10. Add or Deduct: Whether you want to add or deduct the tax.","Modelo imposto padrão que pode ser aplicado a todas as operações de compra. Este modelo pode conter lista de cabeças de impostos e também chefes de despesas outras como &quot;Frete&quot;, &quot;Seguro&quot;, &quot;Manipulação&quot;, etc taxa de imposto # # # # ObservaçãoO você definir aqui será a taxa normal do IVA para todos os itens ** ** . Se houver ** ** Itens que têm taxas diferentes, eles devem ser adicionados no Imposto item ** ** tabela no item ** ** mestre. # # # # Descrição do Columns1. Tipo de Cálculo: - Isto pode ser em ** Total Líquida ** (que é a soma do valor de base). - ** Na linha anterior Total / Montante ** (para impostos cumulativos ou encargos). Se você selecionar esta opção, o imposto será aplicado como um percentual da linha anterior (na tabela do imposto) ou montante total. - ** Real ** (como mencionado) .2. Chefe da conta: O livro conta em que este imposto será booked3. Custo Center: Se o imposto / carga é uma renda (como o transporte) ou despesa que precisa ser contabilizadas a um Custo Center.4. Descrição: Descrição do imposto (que será impresso nas faturas / cotações) .5. Taxa: Imposto rate.6. Quantidade: Imposto amount.7. Total: total acumulado a este point.8. Digite Row: Se com base em &quot;Total linha anterior&quot; você pode escolher o número da linha que será tomado como base para este cálculo (o padrão é a linha anterior) .9. Considere imposto ou encargo para: Nesta seção, você pode especificar se o imposto / carga é apenas para avaliação (não uma parte do total) ou apenas para total (não adiciona valor ao produto) ou para both.10. Adicionar ou Deduzir: Se você quiser adicionar ou deduzir o imposto."
"Standard tax template that can be applied to all Sales Transactions. This template can contain list of tax heads and also other expense / income heads like ""Shipping"", ""Insurance"", ""Handling"" etc.#### NoteThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.#### Description of Columns1. Calculation Type:     - This can be on **Net Total** (that is the sum of basic amount).    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.    - **Actual** (as mentioned).2. Account Head: The Account ledger under which this tax will be booked3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.4. Description: Description of the tax (that will be printed in invoices / quotes).5. Rate: Tax rate.6. Amount: Tax amount.7. Total: Cumulative total to this point.8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).9. Is this Tax included in Basic Rate?: If you check this, it means that this tax will not be shown below the item table, but will be included in the Basic Rate in your main item table. This is useful where you want give a flat price (inclusive of all taxes) price to customers.","Modelo imposto padrão que pode ser aplicado a todas as suas vendas. Este modelo pode conter lista de cabeças de impostos e também outras despesas / receitas cabeças como &quot;Frete&quot;, &quot;Seguro&quot;, &quot;Manipulação&quot;, etc taxa de imposto # # # # ObservaçãoO você definir aqui será a taxa normal do IVA para todos os itens ** . ** Se houver ** ** Itens que têm taxas diferentes, eles devem ser adicionados no Imposto item ** ** tabela no item ** ** mestre. # # # # Descrição do Columns1. Tipo de Cálculo: - Isto pode ser em ** Total Líquida ** (que é a soma do valor de base). - ** Na linha anterior Total / Montante ** (para impostos cumulativos ou encargos). Se você selecionar esta opção, o imposto será aplicado como um percentual da linha anterior (na tabela do imposto) ou montante total. - ** Real ** (como mencionado) .2. Chefe da conta: O livro conta em que este imposto será booked3. Custo Center: Se o imposto / carga é uma renda (como o transporte) ou despesa que precisa ser contabilizadas a um Custo Center.4. Descrição: Descrição do imposto (que será impresso nas faturas / cotações) .5. Taxa: Imposto rate.6. Quantidade: Imposto amount.7. Total: total acumulado a este point.8. Digite Row: Se com base em &quot;Total linha anterior&quot; você pode escolher o número da linha que será tomado como base para este cálculo (o padrão é a linha anterior) .9. É este imposto incluído na tarifa básica:? Se você verificar isso, significa que este imposto não será mostrado abaixo da tabela item, mas será incluída na taxa básica em sua mesa principal item. Isso é útil quando você quer dar um preço fixo (incluindo todos os impostos) preço aos clientes."
Start Date,Data de Início
Start Report For,Para começar Relatório
Start date of current invoice's period,A data de início do período de fatura atual
Startup,Startup
State,Estado
State Name,Nome Estado
States,Estados
Static Parameters,Parâmetros estáticos
Status,Estado
Status must be one of ,Estado deve ser um dos
Statutory info and other general information about your Supplier,Informações legais e outras informações gerais sobre o seu Fornecedor
Stock,Estoque
Stock Ageing,Envelhecimento estoque
Stock Analytics,Analytics ações
Stock Balance,Balanço de estoque
Stock Entry,Entrada estoque
Stock Entry Detail,Detalhe Entrada estoque
Stock Frozen Upto,Fotografia congelada Upto
Stock Home,Início
Stock Ledger,Estoque Ledger
Stock Ledger Entry,Entrada da Razão
Stock Level,Nível de estoque
Stock Qty,Qtd
Stock Queue (FIFO),Da fila (FIFO)
Stock Reconciliation,Da Reconciliação
Stock Reconciliation file not uploaded,Da Reconciliação arquivo não carregou
Stock UOM,Estoque UOM
Stock UOM Replace Utility,Utilitário da Substituir UOM
Stock Uom,Estoque Uom
Stock Value,Valor da
"Stock level frozen up to this date, nobody can do / modify entry except authorized person","Nível de estoque congelado até a presente data, ninguém pode fazer / modificar entrada, exceto pessoa autorizada"
Stop,Pare
Stop users from making Leave Applications on following days.,Pare de usuários de fazer aplicações deixam nos dias seguintes.
Stopped,Parado
Structure cost centers for budgeting.,Estrutura centros de custo para orçamentação.
Structure of books of accounts.,Estrutura de livros de contas.
Style,Estilo
Style Settings,Settings
"Style represents the button color: Success - Green, Danger - Red, Inverse - Black, Primary - Dark Blue, Info - Light Blue, Warning - Orange","Estilo representa a cor do botão: Sucesso - Verde, Perigo - vermelho, Inverse - Preto, Primário - Dark Info, azul - azul claro, Aviso - Orange"
"Sub-currency. For e.g. ""Cent""",Sub-moeda. Para &quot;Cent&quot; por exemplo
Sub-domain provided by erpnext.com,Sub-domínio fornecido pelo erpnext.com
Subcontract,Subcontratar
Subdomain,Subdomínio
Subject,Assunto
Submit,Submeter
Submit Salary Slip,Enviar folha de salário
Submit all salary slips for the above selected criteria,Submeter todas as folhas de salários para os critérios acima selecionados
Submitted,Enviado
Success,Sucesso
Suggestion,Sugestão
Suggestions,Sugestões
Sunday,Domingo
Sunny,Ensolarado
Supplier,Fornecedor
Supplier (vendor) name as entered in supplier master,"Nome do fornecedor (fornecedor), inscritos no cadastro de fornecedores"
Supplier Address,Endereço do Fornecedor
Supplier Details,Detalhes fornecedor
Supplier Intro,Intro fornecedor
Supplier Master created by ,Mestre Fornecedor criado por
Supplier Name,Nome do Fornecedor
Supplier Part Number,Número da peça de fornecedor
Supplier Quotation,Cotação fornecedor
Supplier Quotation Item,Cotação do item fornecedor
Supplier Reference,Referência fornecedor
Supplier Type,Tipo de fornecedor
Supplier Warehouse,Armazém fornecedor
Supplier classification.,Classificação fornecedor.
Supplier database.,Banco de dados de fornecedores.
Supplier of Goods or Services.,Fornecedor de bens ou serviços.
Supplier warehouse where you have issued raw materials for sub - contracting,Armazém do fornecedor onde você emitiu matérias-primas para a sub - contratação
Supplier's currency,Moeda fornecedor
Support,Apoiar
Support Analytics,Analytics apoio
Support Email,Suporte E-mail
Support Email Id,Suporte E-mail Id
Support Home,Início Suporte
Support Password,Senha de
Support Ticket,Ticket de Suporte
Support Ticket Mail Settings,Suporte Configurações de Mensagens de ingressos
Support queries from customers via email or website.,Suporte a consultas de clientes via e-mail ou site.
Symbol,Símbolo
Sync Inbox,Sincronização Caixa de Entrada
Sync Support Mails,Sincronizar e-mails de apoio
System,Sistema
System Console,Sistema de Console
System Defaults,Padrões do sistema
System User,Usuário do Sistema
"System User (login) ID. If set, it will become default for all HR forms.","Sistema de identificação do usuário (login). Se for definido, ele vai se tornar padrão para todas as formas de RH."
System generated mails will be sent from this email id.,Mails gerados pelo sistema serão enviados a partir deste ID de e-mail.
Table,Tabela
Table Field,Campos da Tabela
Table Mapper Detail,Detalhe Mapper tabela
Table Mapper Details,Mapper Detalhes Mesa
Table for Item that will be shown in Web Site,Tabela para Item que será mostrado no site
Tag,Etiqueta
Tag Name,Nome tag
Tags,Etiquetas
Tahoma,Tahoma
Target,Alvo
Target  Amount,Valor Alvo
Target Detail,Detalhe alvo
Target Details,Detalhes alvo
Target Details1,Alvo Details1
Target Distribution,Distribuição alvo
Target Qty,Qtde alvo
Target Warehouse,Armazém alvo
Task,Tarefa
Task Details,Detalhes da tarefa
Task Id,Tarefa Id
Task Name,Nome da Tarefa
Tasks,Tarefas
Tasks belonging to this Project.,Tarefas pertencentes a este projecto.
Tax,Imposto
Tax Amount,Valor do imposto
Tax Calculation,Cálculo do imposto
Tax Rate,Taxa de Imposto
Tax Template for Purchase,Modelo de impostos para compra
Tax Template for Sales,Modelo de imposto para vendas
Tax and other salary deductions.,Fiscais e deduções salariais outros.
Tax detail table fetched from item master as a string and stored in this field.Used for Taxes and Charges,Tabela de detalhes fiscal obtido a partir do cadastro de itens como uma string e armazenada neste field.Used dos Impostos e Encargos
Taxable,Tributável
Taxes,Impostos
Taxes and Charges,Impostos e Encargos
Taxes and Charges Added,Impostos e Encargos Adicionado
Taxes and Charges Added (Import),Impostos e Encargos Adicionado (Import)
Taxes and Charges Calculation,Impostos e Encargos de Cálculo
Taxes and Charges Deducted,Impostos e Encargos Deduzidos
Taxes and Charges Deducted (Import),Impostos e Encargos Deduzido (Import)
Taxes and Charges Total,Impostos e encargos totais
Taxes and Charges Total*,Impostos e Encargos Total *
Taxes and Charges1,Impostos e Charges1
Team Members,Membros da Equipe
Team Members Heading,Membros da Equipe título
Template for employee performance appraisals.,Modelo para avaliação de desempenho dos funcionários.
Template of terms or contract.,Modelo de termos ou contratos.
Term Details,Detalhes prazo
Terms and Conditions,Termos e Condições
Terms and Conditions Content,Termos e Condições conteúdo
Terms and Conditions Details,Termos e Condições Detalhes
Terms and Conditions HTML,Termos e Condições HTML
Terms and Conditions Template,Termos e Condições de modelo
Terms and Conditions1,Termos e Conditions1
Territory,Território
Territory Manager,Territory Manager
Territory Name,Nome território
Territory Targets,Metas território
TerritoryHelp,TerritoryHelp
Test,Teste
Test Data,Dados de Teste
Test Date,Data do Teste
Test Email Id,Email Id teste
Test Link,Testar Link
Test Select,Teste Selecione
Test Text,Texto de teste
Test the Newsletter,Teste a Newsletter
Text,Texto
Text Align,Alinhar texto
Text Editor,Editor de Texto
"The ""Web Page"" that is the website home page","A &quot;Página Web&quot;, que é a página inicial do site"
The BOM which will be replaced,O BOM que será substituído
"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""",O item que representa o pacote. Este item deve ter &quot;é o item da&quot; como &quot;Não&quot; e &quot;é o item de vendas&quot; como &quot;Sim&quot;
The account to which you will pay (have paid) the money to.,A conta para a qual você vai pagar (paguei) o dinheiro.
The date at which current entry is corrected in the system.,A data em que a entrada actual é corrigido no sistema.
The date at which current entry is made in system.,A data em que a entrada actual é feita no sistema.
The date at which current entry will get or has actually executed.,A data em que a entrada de corrente vai ter ou tem realmente executado.
The date on which next invoice will be generated. It is generated on submit.,A data em que próxima fatura será gerada. Ele é gerado em enviar.
The date on which recurring invoice will be stop,A data em que fatura recorrente será parar
"The day of the month on which auto invoice will be generated e.g. 05, 28 etc ","O dia do mês em que factura automática será gerada por exemplo, 05, 28 etc"
The gross weight of the package. Usually net weight + packaging material weight. (for print),O peso bruto do pacote. Normalmente peso líquido + peso do material de embalagem. (Para impressão)
The name of your company / website as you want to appear on browser title bar. All pages will have this as the prefix to the title.,O nome da sua empresa / site como você quer que apareça na barra de título do navegador. Todas as páginas vão ter isso como o prefixo para o título.
The net weight of this package. (calculated automatically as sum of net weight of items),O peso líquido do pacote. (Calculado automaticamente como soma de peso líquido dos itens)
The new BOM after replacement,O BOM novo após substituição
The quantity for the Purchase Request when the stock goes below re-order level.,A quantidade para a solicitação de compra quando o estoque vai abaixo reordenar nível.
The rate at which Bill Currency is converted into company's base currency,A taxa na qual a moeda que Bill é convertida em moeda empresa de base
"The system provides pre-defined roles, but you can <a href='#List/Role'>add new roles</a> to set finer permissions","O sistema fornece papéis pré-definidos, mas você pode <a href='#List/Role'>adicionar novas funções</a> para definir as permissões mais finos"
"The system will generate a Purchase Request automatically when stock quantity goes below re-order level in warehouse of type ""Stores"" or ""Reserved Warehouse"".",O sistema irá gerar um pedido de compra automaticamente quando a quantidade de ações vai abaixo reordenar nível no armazém do tipo &quot;Lojas&quot; ou &quot;Armazém Reservado&quot;.
The unique id for tracking all recurring invoices. It is generated on submit.,O ID único para acompanhar todas as facturas recorrentes. Ele é gerado em enviar.
Theme,Tema
Then By (optional),"Em seguida, por (opcional)"
These properties are Link Type fields from all Documents.,Estas propriedades são campos tipo de ligação de todos os documentos.
"These properties can also be used to 'assign' a particular document, whose property matches with the User's property to a User. These can be set using the <a href='#permission-manager'>Permission Manager</a>","Essas propriedades também podem ser usados ​​para &quot;atribuir&quot; um documento particular, cuja propriedade coincide com a propriedade do usuário para um usuário. Estes podem ser definidos usando o <a href='#permission-manager'>Gerente de Permissão</a>"
These properties will appear as values in forms that contain them.,Estas propriedades aparecerá como valores em formas que os contêm.
These values will be automatically updated in transactions and also will be useful to restrict permissions for this user on transactions containing these values.,Esses valores serão atualizados automaticamente em transações e também será útil para restringir as permissões para este usuário em operações que contenham esses valores.
"This Item Group represents ""products.html""",Este Grupo item representa &quot;products.html&quot;
This Price List will be selected as default for all Customers under this Group.,Esta lista de preços será selecionado como padrão para todos os clientes sob este grupo.
This currency will get fetched in Purchase transactions of this supplier,Essa moeda vai ser buscado em transações de compra deste fornecedor
This currency will get fetched in Sales transactions of this customer,Essa moeda vai ser buscado em transações de vendas deste cliente
"This feature is for merging duplicate warehouses. It will replace all the links of this warehouse by ""Merge With"" 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;Intercalar com&quot; armazém. Após a fusão você pode excluir este armazém, como nível de estoque para este armazém vai ser zero."
This field will appear only if the fieldname defined here has value OR the rules are true (examples): <br>myfieldeval:doc.myfield=='My Value'<br>eval:doc.age>18,Este campo só aparece se o nome do campo definido aqui tem valor ou as regras são verdadeiras (exemplos): <br> myfieldeval: doc.myfield == &#39;o meu valor&#39; <br> eval: doc.age&gt; 18
This goes above the slideshow.,Isto vai acima do slideshow.
This is PERMANENT action and you cannot undo. Continue?,Esta é uma ação permanente e você não pode desfazer. Continuar?
This is permanent action and you cannot undo. Continue?,Esta é uma ação permanente e você não pode desfazer. Continuar?
This is the number of the last created transaction with this prefix,Este é o número da última transacção criados com este prefixo
This tool helps you to update or fix the quantity and valuation of stock in the system. It is typically used to synchronise the system values and what actually exists in your warehouses.,Esta ferramenta ajuda a atualizar ou corrigir a quantidade ea valorização do estoque no sistema. Ele é geralmente usado para sincronizar os valores do sistema eo que realmente existe em seus armazéns.
This will be used for setting rule in HR module,Isso será usado para fixação de regras no módulo HR
Thread HTML,Tópico HTML
Thursday,Quinta-feira
Time,Tempo
Time Zone,Fuso horário
Time Zones,Time Zones
Time and Budget,Tempo e Orçamento
Time at which items were delivered from warehouse,Hora em que itens foram entregues a partir de armazém
Time at which materials were received,Momento em que os materiais foram recebidos
Timesheet,Quadro de Horários
Timesheet By,Por Timesheet
Timesheet Date,Data Timesheet
Timesheet Detail,Detalhe de quadro de horários
Timesheet Details,Detalhes quadro de horários
Timesheet for tasks.,Quadro de Horários para as tarefas.
Title,Título
Title / headline of your page,Título / manchete de sua página
Title Case,Caso título
Title Prefix,Prefixo título
To,Para
To Date,Conhecer
To Discuss,Para Discutir
To Do,Que fazer
To DocType,Para DOCTYPE
To Field,Para Campo
To PR Date,Data de PR
To Package No.,Para empacotar Não.
To Reply,Para Responder
To Table,A Tabela
To Warehouse,Para Armazém
"To add a tag, open the document and click on ""Add Tag"" on the sidebar","Para adicionar uma marca, abra o documento e clique em &quot;Adicionar marca&quot; no sidebar"
"To assign this issue, use the ""Assign"" button in the sidebar.","Para atribuir esse problema, use o botão &quot;Atribuir&quot; na barra lateral."
"To automatically create Support Tickets from your incoming mail, set your POP3 settings here. You must ideally create a separate email id for the erp system so that all emails will be synced into the system from that mail id. If you are not sure, please contact your EMail Provider.","Para criar automaticamente pedidos de ajuda de seu correio de entrada, definir as configurações de POP3 aqui. Você deve, idealmente, criar um ID de e-mail separado para o sistema ERP para que todos os e-mails serão sincronizados para o sistema de que e-mail id. Se você não tiver certeza, entre em contato com seu provedor de e-mail."
"To create Quotation against Opportunity, Select Opportunity No. and click on 'Pull Opportunity Details' ","Para criar cotação contra o Opportunity, selecione Não. Oportunidade e clique em &#39;Detalhes Pull oportunidade &quot;"
"To create an Account Head under a different company, select the company and save customer.","Para criar uma conta, sob Cabeça uma empresa diferente, selecione a empresa e salvar cliente."
To enable <b>Point of Sale</b> features,Para habilitar o <b>Ponto de Venda</b> características
"To fetch items again, click on 'Get Items' button \						or update the Quantity manually.","Para buscar itens novamente, clique em &quot;Obter itens &#39;botão \ ou atualizar a quantidade manualmente."
"To further restrict permissions based on certain values in a document, use the 'Condition' settings.","Para restringir ainda mais permissões com base em determinados valores em um documento, use a &#39;condição&#39; definições."
To get Item Group in details table,Para obter Grupo item na tabela de detalhes
"To import attendance data, click on ""Add"" button, select the saved CSV file and click on ""Upload"".Select the date format as attendance date format in CSV file.Click on ""Import"".","Para importar dados de atendimento, clique no botão &quot;Adicionar&quot;, selecione o arquivo CSV salvo e clique em &quot;Upload&quot;. Selecione o formato de data no formato de data em atendimento CSV file.Click em &quot;Importar&quot;."
To manage multiple series please go to Setup > Manage Series,"Para gerenciar várias séries por favor, vá para Configuração&gt; Gerenciar Series"
To restrict a User of a particular Role to documents that are explicitly assigned to them,Para restringir um usuário de um papel especial a documentos que são explicitamente atribuídos a eles
To restrict a User of a particular Role to documents that are only self-created.,Para restringir um usuário de um papel especial a documentos que são apenas auto-criado.
"To set user roles, just go to <a href='#List/Profile'>Setup > Users</a> and click on the user to assign roles.","Para definir funções de usuário, basta ir a <a href='#List/Profile'>Configuração&gt; Usuários</a> e clique sobre o usuário para atribuir funções."
To track any installation or commissioning related work after sales,Para rastrear qualquer instalação ou comissionamento trabalho relacionado após vendas
"To track brand name in the following documents<br>Delivery Note, Enuiry, Purchase 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, Pedido de Compra, Item, Ordem de Compra, comprovante de compra, recebimento Comprador, cotação, nota fiscal de venda, BOM Vendas, Ordem de Vendas, N º de Série"
To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.,Para acompanhar o item em documentos de vendas e de compras com base em seus números de ordem. Este é também pode ser usada para rastrear detalhes sobre a garantia do produto.
To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,Para controlar os itens de vendas e documentos de compra com lotes n º s <br> <b>Indústria preferido: etc Chemicals</b>
To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.,Para rastrear itens usando código de barras. Você será capaz de inserir itens na nota de entrega e nota fiscal de venda pela digitalização de código de barras do item.
"To update your HTML from attachment, click here","Para atualizar seu código HTML anexo, clique aqui"
ToDo,ToDo
Tools,Ferramentas
Top Bar,Top Bar
Top Bar Background,Fundo da barra superior
Top Bar Item,Item da barra de topo
Top Bar Items,Top Bar Itens
Total,Total
Total (sum of) points distribution for all goals should be 100.,Total (soma de) distribuição de pontos para todos os objetivos deve ser 100.
Total +Tax,Total + Impostos
Total Advance,Antecipação total
Total Amount,Valor Total
Total Amount To Pay,Valor total a pagar
Total Amount in Words,Valor Total em Palavras
Total Claimed Amount,Montante reclamado total
Total Commission,Total Comissão
Total Cost,Custo Total
Total Credit,Crédito Total
Total Debit,Débito total
Total Deduction,Dedução Total
Total Earning,Ganhar total
Total Experience,Experiência total
Total Hours (Actual),Total de Horas (Real)
Total Hours (Expected),Total de Horas (esperado)
Total Invoiced Amount,Valor total faturado
Total Leave Days,Total de dias de férias
Total Leaves Allocated,Folhas total atribuído
Total Operating Cost,Custo Operacional Total
Total Points,Total de pontos
Total Raw Material Cost,Custo total das matérias-primas
Total SMS Sent,SMS total enviado
Total Sanctioned Amount,Valor total Sancionada
Total Score (Out of 5),Pontuação total (em 5)
Total Tax,Total de impostos
Total Tax Amount,Valor do imposto total
Total Tax*,* Total de impostos
Total Taxes and Charges,Total Impostos e Encargos
Total days in month,Total de dias no mês
Total in words,Total em palavras
Totals,Totais
Track Quotations received from Suppliers.,Acompanhar cotações recebidos dos fornecedores.
Track separate Income and Expense for product verticals or divisions.,Localizar renda separado e Despesa para verticais de produtos ou divisões.
Track this Delivery Note against any Project,Acompanhar este Nota de Entrega contra qualquer projeto
Track this Sales Invoice against any Project,Acompanhar este factura de venda contra qualquer projeto
Track this Sales Order against any Project,Acompanhar este Ordem de vendas contra qualquer projeto
Transaction,Transação
Transaction Date,Data Transação
Transfer stock from one warehouse to another.,Transferir o estoque de um depósito para outro.
Transition Rules,Regras de transição
Transporter Info,Informações Transporter
Transporter Name,Nome Transporter
Transporter lorry number,Número caminhão transportador
Trash,Lixo
Trash Control,Controle de lixo
Trash Reason,Razão lixo
Tree of item classification,Árvore de classificação de itens
Trend Analyzer,Analisador de tendência
Trend Analyzer Control,Controlo Analyzer tendência
Trial Balance,Balancete
Tropic,Trópico
Tuesday,Terça-feira
Type,Tipo
Type of employment master.,Tipo de mestre emprego.
"Type of leaves like casual, sick etc.","Tipo de folhas como etc, casual doente"
Types of Expense Claim.,Tipos de reembolso de despesas.
Types of activities for Time Sheets,Tipos de atividades para folhas de tempo
Types of warehouse,Tipos de armazém
UOM,UOM
UOM Conversion Detail,UOM Detalhe Conversão
UOM Conversion Details,Conversão Detalhes UOM
UOM Conversion Factor,UOM Fator de Conversão
UOM Details,Detalhes UOM
UOM Name,Nome UOM
UOM Replace Utility,UOM Utility Substituir
UPPER CASE,MAIÚSCULAS
URL,URL
Unable to complete request: ,Não foi possível concluir pedido:
Under AMC,Sob AMC
Under Graduate,Sob graduação
Under Warranty,Sob Garantia
Unit of Measure,Unidade de Medida
"Unit of measurement of this item (e.g. Kg, Unit, No, Pair).","Unidade de medida do item (por exemplo kg Unidade, não, par)."
Units/Hour,Unidades / hora
Units/Shifts,Unidades / Turnos
Unmatched Amount,Quantidade incomparável
Unread Messages,Mensagens não lidas
Unscheduled,Sem marcação
Unsubscribe,Anular
Unsubscribed,Inscrição cancelada
Update,Atualizar
Update Clearance Date,Atualize Data Liquidação
Update Delivery Date,Atualize data de entrega
Update Field,Atualizar campo
Update PR,Atualização PR
Update Sales Order,Atualize Ordem de Vendas
Update Series,Atualização Series
Update Series Number,Atualização de Número de Série
Update Stock,Actualização de stock
Update Value,Atualize Valor
"Update allocated amount in the above table and then click ""Allocate"" button",Atualize montante atribuído no quadro acima e clique em &quot;alocar&quot; botão
Update bank payment dates with journals.,Atualização de pagamento bancário com data revistas.
Updates,Atualizações
Updates HTML,Atualizações HTML
Upload Attachment,Envie anexos
Upload Attendance Data,Carregar dados do comparecimento
Upload HTML,Carregar HTML
Upload a file,Enviar um arquivo
Upload attendance,Carregar atendimento
Upload attendance from a .csv file,Carregar atendimento de um arquivo CSV.
Upload stock balance via csv.,Carregar saldo de estoque via csv.
Upper Income,Renda superior
Urgent,Urgente
Use Multi-Level BOM,Utilize Multi-Level BOM
Use SSL,Use SSL
User,Usuário
User Cannot Create,Usuário não pode criar
User Cannot Search,O usuário não pode pesquisar
User ID,ID de usuário
User Image,Imagem do usuário
User Name,Nome de usuário
User Properties,Propriedades do usuário
User Remark,Observação de usuário
User Remark will be added to Auto Remark,Observação usuário será adicionado à observação Auto
User Tags,Etiquetas de usuários
User Type,Tipo de Usuário
User must always select,O usuário deve sempre escolher
User not allowed entry in the Warehouse,Entrada do usuário não é permitido no Armazém
UserRole,UserRole
Username,Nome de Utilizador
Users,Usuários
Users Voted,Votado usuários
Users with this role are allowed to do / modify accounting entry before frozen date,Usuários com esta função estão autorizados a fazer / modificar a entrada de contabilidade antes da data congelado
Users with this role are allowed to do / modify stock entry before frozen date,Usuários com esta função estão autorizados a fazer / modificar entrada de material congelado antes da data
Utilities,Utilitários
Utility,Utilidade
Valid Upto,Válido Upto
Validation Logic,Lógica de Validação
Valuation,Avaliação
Valuation Control,Controle de valorização
Valuation Method,Método de Avaliação
Valuation Rate,Taxa de valorização
Valuation and Total,Avaliação e Total
Value,Valor
Verdana,Verdana
Verified By,Verified By
Visit,Visitar
Visit report for maintenance call.,Relatório de visita para a chamada manutenção.
Voucher Detail No,Detalhe folha no
Voucher ID,ID comprovante
Voucher Import Tool,Ferramenta de Importação de comprovante
Voucher No,Não vale
Voucher Type,Tipo comprovante
WIP Monitor,WIP monitor
Waiting for Customer,À espera de cliente
Walk In,Walk In
Warehouse,Armazém
Warehouse Contact Info,Armazém Informações de Contato
Warehouse Detail,Detalhe Armazém
Warehouse Name,Nome Armazém
Warehouse Type,Tipo de armazém
Warehouse User,Usuário Armazém
Warehouse Users,Usuários do Warehouse
Warehouse where you are maintaining stock of rejected items,Armazém onde você está mantendo estoque de itens rejeitados
Warn,Avisar
Warning,Aviso
Warranty / AMC Details,Garantia / AMC Detalhes
Warranty / AMC Status,Garantia / AMC Estado
Warranty Expiry Date,Data de validade da garantia
Warranty Period (Days),Período de Garantia (Dias)
Warranty Period (in days),Período de Garantia (em dias)
Web Content,Conteúdo da Web
Web Page,Página Web
Webforms,Webforms
Website,Site
Website Description,Descrição do site
Website Home,Início Site
Website Item Group,Grupo Item site
Website Item Groups,Item Grupos site
Website Overall Settings,Configurações do site em geral
Website Price List,Lista de Preços website
Website Product Categories,Produto Website Categorias
Website Product Category,Categoria de Produto site
Website Script,Script site
Website Settings,Configurações do site
Website Slideshow,Slideshow site
Website Slideshow Item,Item Slideshow site
Website Warehouse,Armazém site
Wednesday,Quarta-feira
Weekly,Semanal
Weekly Off,Weekly Off
Weight UOM,Peso UOM
Weightage,Weightage
Weightage (%),Weightage (%)
"When any of the checked transactions are ""Submitted"", an email pop-up automatically opened to send an email to the associated ""Contact"" in that transaction, with the transaction as an attachment. The user may or may not send the email.","Quando qualquer uma das operações verificadas estão &quot;Enviado&quot;, um e-mail pop-up aberta automaticamente para enviar um e-mail para o associado &quot;Contato&quot;, em que a transação, com a transação como um anexo. O usuário pode ou não enviar o e-mail."
"When you <b>Amend</b> a document after cancel and save it, it will get a new number that is a version of the old number.","Quando você <b>alterar</b> um documento depois de cancelar e salvá-lo, ele vai ter um novo número que é uma versão do número antigo."
Where items are stored.,Onde os itens são armazenados.
Where manufacturing operations are carried out.,Sempre que as operações de fabricação são realizadas.
White,Branco
Widowed,Viúva
Width,Largura
Will be calculated automatically when you enter the details,Será calculado automaticamente quando você digitar os detalhes
Will be fetched from Customer,Será obtido a partir Cliente
With Operations,Com Operações
Work Done,Trabalho feito
Work In Progress,Trabalho em andamento
Workflow,Fluxo de trabalho
Workflow Action,Ação de fluxo de trabalho
Workflow Action Detail,Detalhe Ação de fluxo de trabalho
Workflow Action Details,Detalhes da Ação de fluxo de trabalho
Workflow Action Master,Mestre ação de fluxo de trabalho
Workflow Action Name,Nome da ação de fluxo de trabalho
Workflow Document State,Estado Documento de fluxo de trabalho
Workflow Document States,Fluxo de trabalho Documento Estados
Workflow Engine,Workflow Engine
Workflow Name,Nome de fluxo de trabalho
Workflow Rule,Regra de fluxo de trabalho
Workflow Rule Detail,Detalhe regra de fluxo de trabalho
Workflow Rule Details,Detalhes do fluxo de trabalho Regra
Workflow State,Estado de fluxo de trabalho
Workflow State Field,Campo do Estado de fluxo de trabalho
Workflow State Name,Nome Estado fluxo de trabalho
Workflow Transition,Transição de fluxo de trabalho
Workflow Transitions,Transições de fluxo de trabalho
Workflow state represents the current state of a document.,Estado de fluxo de trabalho representa o estado atual de um documento.
Workflow will start after saving.,Fluxo de trabalho terá início após a poupança.
Workfow,Workfow
Working,Trabalhando
Workstation,Estação de trabalho
Workstation Name,Nome da Estação de Trabalho
Write,Escrever
Write Off Account,Escreva Off Conta
Write Off Amount,Escreva Off Quantidade
Write Off Amount <=,Escreva Off Valor &lt;=
Write Off Based On,Escreva Off Baseado em
Write Off Cost Center,Escreva Off Centro de Custos
Write Off Outstanding Amount,Escreva Off montante em dívida
Write Off Voucher,Escreva voucher
Year,Ano
Year Closed,Ano Encerrado
Year Name,Nome Ano
Year Start Date,Data de início do ano
Year of Passing,Ano de Passagem
Yearly,Anual
Yes,Sim
Yesterday,Ontem
You are not authorized to do/modify back dated entries before ,Você não está autorizado a fazer / modificar volta entradas datadas antes
You can create more earning and deduction type from Setup --> HR,Você pode criar mais salário e tipo de dedução do Setup -&gt; HR
You can enter any date manually,Você pode entrar em qualquer data manualmente
You can enter the minimum quantity of this item to be ordered.,Você pode inserir a quantidade mínima deste item a ser ordenada.
You can make a delivery note from multiple sales orders. Select sales orders one by one and click on the button below.,"Você pode fazer uma nota de entrega de vários pedidos de vendas. Selecione ordens de venda, um por um e clique no botão abaixo."
You can make a purchase order from multiple Purchase Requests. Select Purchase Requests one by one and click on the button below.,"Você pode fazer uma ordem de compra de pedidos de compras múltiplas. Selecione pedidos de compra, um por um e clique no botão abaixo."
You can make a purchase order from multiple Supplier Quotations. Select Supplier Quotations one by one and click on the button below.,"Você pode fazer uma ordem de compra de Citações Fornecedor múltiplos. Selecione Quotations Fornecedor, um por um e clique no botão abaixo."
You can make a purchase receipt from multiple purchase orders. Select purchase orders one by one and click on the button below.,"Você pode fazer um recibo de compra de várias ordens de compra. Selecione as ordens de compra, um por um e clique no botão abaixo."
You can set various 'properties' to Users to set default values and apply permission rules based on the value of these properties in various forms.,Você pode definir vários &#39;propriedades&#39; para usuários para definir os valores padrão e aplicar regras de permissão com base no valor dessas propriedades em várias formas.
You can use <a href='#Form/Customize Form'>Customize Form</a> to set levels on fields.,Você pode usar <a href='#Form/Customize Form'>Personalizar Formulário</a> para definir os níveis em campos.
You cannot apply for a leave on the following date because it is blocked,Você não pode aplicar para uma licença na seguinte data porque está bloqueado
Your Customer's TAX registration numbers (if applicable) or any general information,Seu cliente FISCAIS números de inscrição (se aplicável) ou qualquer outra informação geral
"Your download is being built, this may take a few moments...","O seu download está sendo construída, isso pode demorar alguns instantes ..."
Your letter head content in HTML.,Seu conteúdo cabeça carta em HTML.
Your sales person who will contact the customer in future,Sua pessoa de vendas que entrará em contato com o cliente no futuro
Your sales person who will contact the lead in future,Sua pessoa de vendas que entrará em contato com a liderança no futuro
Your sales person will get a reminder on this date to contact the customer,Seu vendedor receberá um lembrete sobre esta data para contato com o cliente
Your sales person will get a reminder on this date to contact the lead,Seu vendedor receberá um lembrete nesta data em contato com o chumbo
Your support email id - must be a valid email - this is where your emails will come!,O seu ID e-mail de apoio - deve ser um email válido - este é o lugar onde seus e-mails virão!
[],[]
add your own CSS (careful!),adicionar seu próprio CSS (cuidado!)
adjust,ajustar
align-center,alinhar-centro
align-justify,alinhar-justificar
align-left,alinhar-esquerda
align-right,alinhar à direita
and,e
arrow-down,seta para baixo
arrow-left,seta para a esquerda
arrow-right,seta para a direita
arrow-up,seta para cima
asterisk,asterisco
backward,para trás
ban-circle,proibição de círculo
barcode,código de barras
bell,sino
bold,negrito
book,livro
bookmark,marcar
briefcase,pasta
bullhorn,megafone
calendar,calendário
camera,câmera
cancel,cancelar
certificate,certidão
check,verificar
chevron-down,chevron-down
chevron-left,chevron-esquerda
chevron-right,Chevron-direito
chevron-up,chevron-up
circle-arrow-down,círculo de seta para baixo
circle-arrow-left,círculo de seta para a esquerda
circle-arrow-right,círculo de seta à direita
circle-arrow-up,círculo de seta para cima
cog,roda dentada
comment,comentário
create a Custom Field of type Link (Profile) and then use the 'Condition' settings to map that field to the Permission rule.,Criar um campo personalizado de ligação tipo (perfil) e depois usar as configurações de &#39;condição&#39; para mapear o campo para a regra de permissão.
dashboard,painel de instrumentos
dd-mm-yyyy,dd-mm-aaaa
dd/mm/yyyy,dd / mm / aaaa
deactivate,desativar
does not belong to BOM: ,não pertence ao BOM:
download,baixar
download-alt,download-alt
"e.g. 0.5, 2.5 etc","por exemplo, 0,5, 2,5, etc"
"e.g. Bank, Cash, Credit Card","por exemplo Banco, Dinheiro, cartão de crédito"
"e.g. Kg, Unit, Nos, m","kg por exemplo, Unidade, n, m"
"e.g. Office, Billing, Shipping","Escritório por exemplo, Faturamento, Envio"
edit,editar
eg. Cheque Number,por exemplo. Número de cheques
eject,ejetar
english,Inglês
envelope,envelope
equal,igual
español,español
exclamation-sign,exclamação sinal-
eye-close,olho-
eye-open,olho-aberto
facetime-video,facetime vídeo
fast-backward,rápido para trás
fast-forward,avançar
file,arquivo
film,filme
filter,filtrar
fire,fogo
flag,bandeira
folder-close,pasta close-
folder-open,pasta-aberto
font,fonte
forward,para a frente
français,français
fullscreen,fullscreen
gift,dom
glass,vidro
globe,globo
greater than,maior do que
greater than equal,maior ou igual
hand-down,mão-down
hand-left,mão esquerda
hand-right,mão direita
hand-up,mão-
has been entered atleast twice,foi inserido pelo menos duas vezes
hdd,hdd
headphones,fones de ouvido
heart,coração
home,casa
inbox,caixa de entrada
indent-left,travessão esquerdo
indent-right,travessão direito
info-sign,Informações sinal-
is a cancelled Item,é um item cancelado
is not a Stock Item,não é um item de estoque
is not allowed.,não é permitido.
italic,itálico
leaf,folha
less than,menor que
less than equal,menor ou igual
lft,lft
list,lista
list-alt,lista de alt-
lock,trancar
magnet,ímã
map-marker,mapa marcador
minus,menos
minus-sign,sinal de menos-
mm-dd-yyyy,mm-dd-aaaa
mm/dd/yy,dd / mm / aa
mm/dd/yyyy,dd / mm / aaaa
move,mover
music,música
nederlands,nederlands
not equal,não igual
not within Fiscal Year,não dentro de Ano Fiscal
of type Link,Tipo de Link
off,fora
ok,ok
ok-circle,ok círculo
ok-sign,ok-sinal
old_parent,old_parent
or,ou
pause,pausa
pencil,lápis
picture,quadro
plane,avião
play,jogar
play-circle,jogo-círculo
plus,mais
plus-sign,plus-assinar
português,português
print,imprimir
qrcode,QRCode
question-sign,pergunta sinal-
question-view,pergunta-view
questions,perguntas
random,acaso
reached its end of life on,chegou ao fim da vida na
refresh,refrescar
remove,remover
remove-circle,remove-círculo
remove-sign,remover-assinar
repeat,repetir
resize-full,redimensionamento completo
resize-horizontal,redimensionamento horizontal
resize-small,redimensionamento pequeno
resize-vertical,redimensionamento vertical
retweet,retwitar
rgt,rgt
road,estrada
screenshot,tela
search,pesquisar
share,ação
share-alt,partes alt-
shopping-cart,carrinho de compras
signal,sinalizar
star,estrela
star-empty,estrelas vazio
step-backward,passo para trás-
step-forward,passo-
stop,parar
tag,etiqueta
tags,etiquetas
"target = ""_blank""",target = &quot;_blank&quot;
tasks,tarefas
text-height,texto de altura
text-width,texto de largura
th,ª
th-large,ª-grande
th-list,ª-lista
thumbs-down,polegares para baixo
thumbs-up,polegar para cima
time,tempo
tint,matiz
to,para
to be dropped,de ser abandonada
trash,lixo
upload,carregar
user,usuário
user_image_show,user_image_show
values and dates,valores e as datas
volume-down,volume baixo
volume-off,volume de off-
volume-up,volume-
warning-sign,sinal de alerta-
website page link,link da página site
wrench,chave inglesa
yyyy-mm-dd,aaaa-mm-dd
zoom-in,zoom-in
zoom-out,zoom-out
српски,српски
العربية,العربية
हिंदी,हिंदी
தமிழ்,தமிழ்
