"""Customer Provided Item"" cannot be Purchase Item also",&quot;Item Fornecido pelo Cliente&quot; não pode ser Item de Compra também,
"""Customer Provided Item"" cannot have Valuation Rate",&quot;Item Fornecido pelo Cliente&quot; não pode ter Taxa de Avaliação,
"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","""É Ativo Fixo"" não pode ser desmarcado se já existe um registro de Ativo relacionado ao item",
'Based On' and 'Group By' can not be same,'Baseado em' e 'Agrupar por' não podem ser o mesmo,
'Days Since Last Order' must be greater than or equal to zero,'Dias desde a última Ordem' deve ser maior ou igual a zero,
'Entries' cannot be empty,'Entradas' não pode estar vazio,
'From Date' is required,'Informe a 'Data Inicial',
'From Date' must be after 'To Date',A 'Data Final' deve ser posterior a 'Data Inicial',
'Has Serial No' can not be 'Yes' for non-stock item,'Tem Número Serial' não pode ser confirmado para itens sem controle de estoque,
'Opening','Abrindo',
'To Case No.' cannot be less than 'From Case No.','Número do Caso Final' não pode ser menor que o 'Número do Caso Inicial',
'To Date' is required,'Data Final' é necessária,
'Total',';Total';,
'Update Stock' can not be checked because items are not delivered via {0},'Atualização do Estoque' não pode ser verificado porque os itens não são entregues via {0},
'Update Stock' cannot be checked for fixed asset sale,'Atualizar Estoque' não pode ser selecionado para venda de ativo fixo,
1 exact match.,1 correspondência exata.,
90-Above,Acima de 90,
A Customer Group exists with same name please change the Customer name or rename the Customer Group,Existe um grupo de clientes com o mesmo nome por favor modifique o nome do cliente ou renomeie o grupo de clientes,
A Default Service Level Agreement already exists.,Um contrato de nível de serviço padrão já existe.,
A Lead requires either a person's name or an organization's name,Um Lead requer o nome de uma pessoa ou o nome de uma organização,
A customer with the same name already exists,Um cliente com o mesmo nome já existe,
A question must have more than one options,Uma pergunta deve ter mais de uma opção,
A qustion must have at least one correct options,Uma questão deve ter pelo menos uma opção correta,
A4,A4,
API Endpoint,API Endpoint,
API Key,Chave da API,
Abbr can not be blank or space,Abbr não pode estar em branco ou espaço,
Abbreviation already used for another company,Abreviatura já utilizado para outra empresa,
Abbreviation cannot have more than 5 characters,Abreviatura não pode ter mais de 5 caracteres,
Abbreviation is mandatory,Abreviatura é obrigatória,
About the Company,Sobre a Empresa,
About your company,Sobre a sua empresa,
Above,Acima,
Academic Term,Período Letivo,
Academic Term: ,Período Acadêmico:,
Academic Year,Ano Letivo,
Academic Year: ,Ano Acadêmico:,
Accepted + Rejected Qty must be equal to Received quantity for Item {0},A qtde Aceita + Rejeitada deve ser igual a quantidade recebida para o item {0},
Access Token,Token de Acesso,
Accessable Value,Valor Acessível,
Account,Conta,
Account Number,Número da Conta,
Account Number {0} already used in account {1},Número de conta {0} já utilizado na conta {1},
Account Pay Only,Só Conta de Pagamento,
Account Type,Tipo de Conta,
Account Type for {0} must be {1},O Tipo de Conta para {0} deverá ser {1},
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","O saldo já está em crédito, você não tem a permissão para definir 'saldo deve ser' como 'débito'",
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","O saldo já está em débito, você não tem permissão para definir 'saldo deve ser' como 'crédito'",
Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,O número da conta da conta {0} não está disponível. <br> Configure seu Plano de Contas corretamente.,
Account with child nodes cannot be converted to ledger,Contas com nós filhos não podem ser convertidas em um livro-razão,
Account with child nodes cannot be set as ledger,Conta com nós filho não pode ser definido como contabilidade,
Account with existing transaction can not be converted to group.,Contas com a transações existentes não pode ser convertidas em um grupo.,
Account with existing transaction can not be deleted,Contas com transações existentes não pode ser excluídas,
Account with existing transaction cannot be converted to ledger,Contas com transações existentes não pode ser convertidas em livro-razão,
Account {0} does not belong to company: {1},A Conta {0} não pertence à Empresa: {1},
Account {0} does not belongs to company {1},Conta {0} não pertence à empresa {1},
Account {0} does not exist,A Conta {0} não existe,
Account {0} does not exists,Conta {0} não existe,
Account {0} does not match with Company {1} in Mode of Account: {2},A conta {0} não coincide com a Empresa {1} no Modo de Conta: {2},
Account {0} has been entered multiple times,A Conta {0} foi inserida várias vezes,
Account {0} is added in the child company {1},Conta {0} é adicionada na empresa filha {1},
Account {0} is frozen,A Conta {0} está congelada,
Account {0} is invalid. Account Currency must be {1},Conta {0} é inválido. Conta de moeda deve ser {1},
Account {0}: Parent account {1} can not be a ledger,Conta {0}: a Conta Superior {1} não pode ser um livro-razão,
Account {0}: Parent account {1} does not belong to company: {2},Conta {0}: a Conta Superior {1} não pertence à empresa: {2},
Account {0}: Parent account {1} does not exist,Conta {0}: a Conta Superior {1} não existe,
Account {0}: You can not assign itself as parent account,Conta {0}: Você não pode definir a própria conta como uma conta superior,
Account: {0} can only be updated via Stock Transactions,Conta: {0} só pode ser atualizado via transações de ações,
Account: {0} with currency: {1} can not be selected,A Conta: {0} com moeda: {1} não pode ser selecionada,
Accountant,Contador,
Accounting,Contabilidade,
Accounting Entry for Asset,Entrada Contábil de Ativo,
Accounting Entry for Stock,Lançamento Contábil de Estoque,
Accounting Entry for {0}: {1} can only be made in currency: {2},Contabilidade de entrada para {0}: {1} só pode ser feito em moeda: {2},
Accounting Ledger,Registro Contábil,
Accounting journal entries.,Lançamentos no livro Diário.,
Accounts,Contas,
Accounts Manager,Gerente de Contas,
Accounts Payable,Contas a Pagar,
Accounts Payable Summary,Resumo do Contas a Pagar,
Accounts Receivable,Contas a Receber,
Accounts Receivable Summary,Resumo do Contas a Receber,
Accounts User,Usuário de Contas,
Accounts table cannot be blank.,Tabela de Contas não pode estar vazia.,
Accumulated Depreciation,Depreciação Acumulada,
Accumulated Depreciation Amount,Total de Depreciação Acumulada,
Accumulated Depreciation as on,Depreciação Acumulada Como Em,
Accumulated Monthly,Acumulada Mensalmente,
Accumulated Values,Valores Acumulados,
Accumulated Values in Group Company,Valores Acumulados na Empresa do Grupo,
Achieved ({}),Alcançado ({}),
Action,Ação,
Action Initialised,Ação Inicializada,
Actions,Ações,
Active,Ativo,
Activity Cost exists for Employee {0} against Activity Type - {1},Já existe um custo da atividade para o colaborador {0} relacionado ao tipo de atividade - {1},
Activity Cost per Employee,Custo da Atividade Por Colaborador,
Activity Type,Tipo de Atividade,
Actual Cost,Custo Real,
Actual Delivery Date,Data de Entrega Real,
Actual Qty,Qtde Real,
Actual Qty is mandatory,Qtde Real é obrigatória,
Actual Qty {0} / Waiting Qty {1},Qtd Real {0} / Qtd de Espera {1},
Actual Qty: Quantity available in the warehouse.,Atual Qtde: Quantidade existente no armazém.,
Actual qty in stock,Quantidade real em estoque,
Actual type tax cannot be included in Item rate in row {0},Tipo de imposto real não pode ser incluído na tarifa do item na linha {0},
Add,Adicionar,
Add / Edit Prices,Adicionar / Editar Preços,
Add Comment,Adicionar Comentário,
Add Customers,Adicionar Clientes,
Add Employees,Adicionar Colaboradores,
Add Item,Adicionar Item,
Add Items,Adicionar Itens,
Add Leads,Adicionar Leads,
Add Multiple Tasks,Adicionar Várias Tarefas,
Add Row,Adicionar Linha,
Add Sales Partners,Adicionar Parceiros de Vendas,
Add Serial No,Adicionar Serial No,
Add Students,Adicionar Alunos,
Add Suppliers,Adicionar Fornecedores,
Add Time Slots,Adicionar Intervalos de Tempo,
Add Timesheets,Adicionar Registo de Horas,
Add Timeslots,Adicionar Timeslots,
Add Users to Marketplace,Adicionar Usuários Ao Mercado,
Add a new address,Adicione um novo endereço,
Add cards or custom sections on homepage,Adicione cartões ou seções personalizadas na página inicial,
Add more items or open full form,Adicionar mais itens ou abrir formulário inteiro,
Add notes,Adicione notas,
Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,Adicione o resto de sua organização como seus usuários. Você também pode adicionar clientes convidados ao seu portal adicionando-os de Contatos,
Add/Remove Recipients,Adicionar / Remover Destinatários,
Added,Adicionado,
Added {0} users,Adicionados {0} usuários,
Additional Salary Component Exists.,Componente Salarial Adicional Existente.,
Address,Endereço,
Address Line 2,Complemento,
Address Name,Nome do Endereço,
Address Title,Título do Endereço,
Address Type,Tipo de Endereço,
Administrative Expenses,Despesas Administrativas,
Administrative Officer,Escritório Administrativo,
Administrator,Administrador,
Admission,Admissão,
Admission and Enrollment,Admissão e Inscrição,
Admissions for {0},Admissões Para {0},
Admit,Admitem,
Admitted,Admitido/a,
Advance Amount,Valor Adiantado,
Advance Payments,Adiantamentos,
Advance account currency should be same as company currency {0},A moeda da conta avançada deve ser igual à moeda da empresa {0},
Advance amount cannot be greater than {0} {1},O valor do adiantamento não pode ser maior do que {0} {1},
Advertising,Publicidade,
Aerospace,Aeroespacial,
Against,Contra,
Against Account,Contra À Conta,
Against Journal Entry {0} does not have any unmatched {1} entry,Contra Journal Entry {0} não tem qualquer {1} entrada incomparável,
Against Journal Entry {0} is already adjusted against some other voucher,Contra Journal Entry {0} já é ajustado contra algum outro comprovante,
Against Supplier Invoice {0} dated {1},Relacionado à nota fiscal do fornecedor nº {0} emitida em {1},
Against Voucher,Contra o Comprovante,
Against Voucher Type,Contra o Tipo de Comprovante,
Age,Idade,
Age (Days),Idade (dias),
Ageing Based On,Envelhecimento Baseado Em,
Ageing Range 1,Faixa Envelhecimento 1,
Ageing Range 2,Faixa Envelhecimento 2,
Ageing Range 3,Faixa de Envelhecimento 3,
Agriculture,Agricultura,
Agriculture (beta),Agricultura (beta),
Airline,Companhia Aérea,
All Accounts,Todas as Contas,
All Addresses.,Todos os Endereços.,
All Assessment Groups,Todos os Grupos de Avaliação,
All BOMs,Todas as LDMs,
All Contacts.,Todos os Contatos.,
All Customer Groups,Todos os Grupos de Clientes,
All Day,Dia Inteiro,
All Departments,Todos os Departamentos,
All Healthcare Service Units,Todas as Unidades de Serviço de Saúde,
All Item Groups,Todos os Grupos de Itens,
All Products,Todos os Produtos,
All Products or Services.,Todos os Produtos Ou Serviços.,
All Student Admissions,Todas Admissões de Alunos,
All Supplier Groups,Todos os Grupos de Fornecedores,
All Supplier scorecards.,Todos os scorecards do fornecedor.,
All Territories,Todos os Territórios,
All Warehouses,Todos os Armazéns,
All communications including and above this shall be moved into the new Issue,Todas as comunicações incluindo e acima serão transferidas para o novo problema.,
All items have already been transferred for this Work Order.,Todos os itens já foram transferidos para esta Ordem de Serviço.,
All other ITC,Todos os outros ITC,
All the mandatory Task for employee creation hasn't been done yet.,Todas as Tarefas obrigatórias para criação de funcionários ainda não foram concluídas.,
Allocate Payment Amount,Atribuir Valor do Pagamento,
Allocated Amount,Quantidade Atribuída,
Allocating leaves...,Alocando as folhas...,
Already record exists for the item {0},Já existe registro para o item {0},
"Already set default in pos profile {0} for user {1}, kindly disabled default","Já definiu o padrão no perfil pos {0} para o usuário {1}, desabilitado gentilmente por padrão",
Alternate Item,Item Alternativo,
Alternative item must not be same as item code,Item alternativo não deve ser igual ao código do item,
Amended From,Alterado De,
Amount,Montante,
Amount After Depreciation,Montante Após Depreciação,
Amount of Integrated Tax,Quantidade de Imposto Integrado,
Amount of TDS Deducted,Quantidade de TDS Deduzida,
Amount should not be less than zero.,O valor não deve ser menor que zero.,
Amount to Bill,Valor a Ser Faturado,
Amount {0} {1} against {2} {3},Quantidade {0} {1} em {2} {3},
Amount {0} {1} deducted against {2},Montante {0} {1} deduzido em {2},
Amount {0} {1} transferred from {2} to {3},Montante {0} {1} transferido de {2} para {3},
Amount {0} {1} {2} {3},Total {0} {1} {2} {3},
Amt,Total,
"An Item Group exists with same name, please change the item name or rename the item group","Um grupo de itens existe com o mesmo nome, por favor, mude o nome do item ou mude o nome do grupo de itens",
An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,"Já existe um prazo académico com este""Ano Lectivo"" {0} e ""Nome do Prazo"" {1}. Por favor, altere estes registos e tente novamente.",
An error occurred during the update process,Ocorreu um erro durante o processo de atualização,
"An item exists with same name ({0}), please change the item group name or rename the item","Um item existe com o mesmo nome ( {0}) , por favor, altere o nome do grupo de itens ou renomeie o item",
Analyst,Analista,
Analytics,Análise,
Annual Billing: {0},Faturação Anual: {0},
Anonymous,Anônimo,
Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Outro registro de orçamento ';{0}'; já existe contra {1} ';{2}'; e conta ';{3}'; para o ano fiscal {4},
Another Period Closing Entry {0} has been made after {1},Outra entrada no Período de Encerramento {0} foi feita após {1},
Another Sales Person {0} exists with the same Employee id,Outro Vendedor {0} existe com o mesmo ID de Colaborador,
Antibiotic,Antibiótico,
Apparel & Accessories,Vestuário e Acessórios,
Applicable For,Aplicável,
"Applicable if the company is SpA, SApA or SRL","Aplicável se a empresa for SpA, SApA ou SRL",
Applicable if the company is a limited liability company,Aplicável se a empresa for uma sociedade de responsabilidade limitada,
Applicable if the company is an Individual or a Proprietorship,Aplicável se a empresa é um indivíduo ou uma propriedade,
Application of Funds (Assets),Aplicação de Recursos (ativos),
Applied,Aplicado,
Appointment Confirmation,Confirmação de Compromisso,
Appointment Duration (mins),Duração da Consulta (min.),
Appointment Type,Tipo de Compromisso,
Appointment {0} and Sales Invoice {1} cancelled,Compromisso {0} e fatura de vendas {1} cancelados,
Appointments and Encounters,Nomeações e Encontros,
Appointments and Patient Encounters,Nomeações e Encontros Com Pacientes,
Appraisal {0} created for Employee {1} in the given date range,Avaliação {0} criada para o Colaborador {1} no intervalo de datas informado,
Approving Role cannot be same as role the rule is Applicable To,Função Aprovadora não pode ser a mesmo função da regra é Aplicável a,
Approving User cannot be same as user the rule is Applicable To,Usuário Aprovador não pode ser o mesmo usuário da regra é Aplicável a,
"Apps using current key won't be able to access, are you sure?","Aplicativos que usam a chave atual não poderão acessar, tem certeza?",
Are you sure you want to cancel this appointment?,Tem certeza de que deseja cancelar esse compromisso?,
Arrear,Atrasado,
As Examiner,Como Examinador,
As On Date,Como na Data,
As Supervisor,Como Supervisor,
As per rules 42 & 43 of CGST Rules,Conforme as regras 42 e 43 das Regras CGST,
As per section 17(5),Conforme seção 17 (5),
Assessment,Avaliação,
Assessment Criteria,Critérios de Avaliação,
Assessment Group,Grupo de Avaliação,
Assessment Group: ,Grupo de Avaliação:,
Assessment Plan,Plano de Avaliação,
Assessment Plan Name,Nome do Plano de Avaliação,
Assessment Report,Relatório de Avaliação,
Assessment Reports,Relatórios de Avaliação,
Assessment Result,Resultado da Avaliação,
Assessment Result record {0} already exists.,Avaliação do registro de resultados {0} já existe.,
Asset,Ativo,
Asset Category,Categoria de Ativos,
Asset Category is mandatory for Fixed Asset item,É obrigatório colocar a Categoria Ativo para um item de Ativo Imobilizado,
Asset Maintenance,Manutenção de Ativos,
Asset Movement,Movimentação de Ativos,
Asset Movement record {0} created,Registro de Movimentação de Ativos {0} criado,
Asset Name,Nome do Ativo,
Asset Received But Not Billed,Ativo Recebido Mas Não Faturado,
Asset Value Adjustment,Ajuste do Valor do Ativo,
"Asset cannot be cancelled, as it is already {0}","Activo não podem ser canceladas, como já é {0}",
Asset scrapped via Journal Entry {0},Ativo excluído através do Lançamento Contabilístico {0},
"Asset {0} cannot be scrapped, as it is already {1}","Activo {0} não pode ser descartado, uma vez que já é {1}",
Asset {0} does not belong to company {1},O ativo {0} não pertence à empresa {1},
Asset {0} must be submitted,O Ativo {0} deve ser enviado,
Assets,Ativos,
Assign To,Atribuir A,
Associate,Associado,
At least one mode of payment is required for POS invoice.,É necessário pelo menos um modo de pagamento para a fatura POS.,
Atleast one item should be entered with negative quantity in return document,Pelo menos um item deve ser inserido com quantidade negativa no documento de devolução,
Atleast one of the Selling or Buying must be selected,Pelo menos um dos Vendedores ou Compradores deve ser selecionado,
Atleast one warehouse is mandatory,Pelo menos um armazém é obrigatório,
Attach Logo,Anexar Logo,
Attachment,Anexo,
Attachments,Anexos,
Attendance can not be marked for future dates,Comparecimento não pode ser marcado para datas futuras,
Attendance date can not be less than employee's joining date,Data de presença não pode ser inferior á data de admissão do funcionário,
Attendance for employee {0} is already marked,Comparecimento para o colaborador {0} já está marcado,
Attendance has been marked successfully.,A presença foi registada com sucesso.,
Attendance not submitted for {0} as {1} on leave.,Participação não enviada para {0} como {1} de licença.,
Attribute table is mandatory,A tabela de atributos é obrigatório,
Attribute {0} selected multiple times in Attributes Table,Atributo {0} selecionada várias vezes na tabela de atributos,
Author,Autor,
Authorized Signatory,Signatário Autorizado,
Auto Material Requests Generated,Requisições de Material Geradas Automaticamente,
Auto Repeat,Repetição Automática,
Auto repeat document updated,Auto repetir documento atualizado,
Automotive,Automotivo,
Available,Disponível,
Available Leaves,Folhas Disponíveis,
Available Qty,Qtde Disponível,
Available Selling,Venda Disponível,
Available for use date is required,Disponível para data de uso é obrigatório,
Available slots,Slots disponíveis,
Available {0},Disponível {0},
Available-for-use Date should be after purchase date,A data disponível para uso deve ser posterior à data de compra,
Average Age,Idade Média,
Average Rate,Taxa Média,
Avg Daily Outgoing,Média Diária de Saída,
Avg. Buying Price List Rate,Valor Médio de Lista de Preços de Compra,
Avg. Selling Price List Rate,Valor Médio na Lista de Preços de Venda,
Avg. Selling Rate,Valor Médio de Venda,
BOM,LDM,
BOM Browser,Navegador de LDM,
BOM No,Nº da LDM,
BOM Rate,Valor na LDM,
BOM Stock Report,Relatório de Estoque Por LDM,
BOM and Manufacturing Quantity are required,A LDM e a Quantidade para Fabricação são necessários,
BOM does not contain any stock item,LDM não contém nenhum item de estoque,
BOM {0} does not belong to Item {1},A LDM {0} não pertencem ao Item {1},
BOM {0} must be active,LDM {0} deve ser ativa,
BOM {0} must be submitted,LDM {0} deve ser enviada,
Balance,Balanço,
Balance (Dr - Cr),Equilíbrio (Dr - Cr),
Balance ({0}),Equilíbrio ({0}),
Balance Qty,Qtde Balanço,
Balance Sheet,Balanço,
Balance Value,Valor Patrimonial,
Balance for Account {0} must always be {1},Saldo da Conta {0} deve ser sempre {1},
Bank,Banco,
Bank Account,Conta Bancária,
Bank Accounts,Contas Bancárias,
Bank Draft,Cheque Administrativo,
Bank Name,Nome do Banco,
Bank Overdraft Account,Conta Bancária Garantida,
Bank Reconciliation,Conciliação Bancária,
Bank Reconciliation Statement,Extrato Bancário Conciliado,
Bank Statement,Extrato Bancário,
Bank Statement Settings,Configurações do Extrato Bancário,
Bank Statement balance as per General Ledger,Extrato bancário de acordo com o livro razão,
Bank account cannot be named as {0},A conta bancária não pode ser nomeada como {0},
Bank/Cash transactions against party or for internal transfer,Transações Bancárias/Dinheiro de terceiros ou de transferências internas,
Banking,Bancos,
Banking and Payments,Bancos e Pagamentos,
Barcode {0} already used in Item {1},Código de barras {0} já utilizado em item {1},
Barcode {0} is not a valid {1} code,O código de barras {0} não é um código {1} válido,
Base URL,URL Base,
Based On,Baseado Em,
Based On Payment Terms,Baseado Em Termos de Pagamento,
Basic,Básico,
Batch,Lote,
Batch Entries,Entradas de Lote,
Batch ID is mandatory,O ID do lote é obrigatório,
Batch Inventory,Inventário Por Lote,
Batch Name,Nome de Lote,
Batch No,Nº do Lote,
Batch number is mandatory for Item {0},Número do lote é obrigatória para item {0},
Batch {0} of Item {1} has expired.,Lote {0} de {1} item expirou.,
Batch {0} of Item {1} is disabled.,Lote {0} do item {1} está desativado.,
Batch: ,Lote:,
Batches,Lotes,
Become a Seller,Torne-se Um Vendedor,
Bill,Fatura,
Bill Date,Data de Faturamento,
Bill No,Nota Nº,
Bill of Materials,Lista de Materiais,
Bill of Materials (BOM),Lista de Materiais (LDM),
Billable Hours,Horas Faturáveis,
Billed,Faturado,
Billed Amount,Total Faturado,
Billing,Faturamento,
Billing Address,Endereço de Faturamento,
Billing Address is same as Shipping Address,O endereço de cobrança é o mesmo do endereço de entrega,
Billing Amount,Total Para Faturamento,
Billing Status,Status do Faturamento,
Billing currency must be equal to either default company's currency or party account currency,A moeda de faturamento deve ser igual à moeda da empresa padrão ou à moeda da conta do parceiro,
Bills raised by Suppliers.,Contas criadas por Fornecedores.,
Bills raised to Customers.,Faturas emitidas para Clientes.,
Biotechnology,Biotecnologia,
Black,Preto,
Blanket Orders from Costumers.,Pedidos de cobertores de clientes.,
Block Invoice,Bloquear Fatura,
Boms,LDMs,
Both Trial Period Start Date and Trial Period End Date must be set,A data de início do período de avaliação e a data de término do período de avaliação devem ser definidas,
Both Warehouse must belong to same Company,Ambos Armazéns devem pertencer a mesma empresa,
Branch,Filial,
Broadcasting,Radio-difusão,
Brokerage,Corretagem,
Browse BOM,Navegar LDM,
Budget Against,Orçamento Em,
Budget List,Lista de Orçamentos,
Budget Variance Report,Relatório de Variação de Orçamento,
Budget cannot be assigned against Group Account {0},Orçamento não pode ser atribuído contra a conta de grupo {0},
"Budget cannot be assigned against {0}, as it's not an Income or Expense account","Orçamento não pode ser atribuído contra {0}, pois não é uma conta de renda ou despesa",
Buildings,Edifícios,
Bundle items at time of sale.,Empacotar itens no momento da venda.,
Business Development Manager,Gerente de Desenvolvimento de Negócios,
Buy,Comprar,
Buying,Compras,
Buying Amount,Valor de Compra,
Buying Price List,Lista de Preços de Compra,
Buying Rate,Taxa de Compra,
"Buying must be checked, if Applicable For is selected as {0}","Compra deve ser verificada, se for caso disso nos items selecionados como {0}",
By {0},Por {0},
Bypass credit check at Sales Order ,Ignorar verificação de crédito na ordem do cliente,
C-Form records,Registros C-Form,
C-form is not applicable for Invoice: {0},C-forma não é aplicável para a fatura: {0},
CEO,CEO,
CESS Amount,Quantidade CESS,
CGST Amount,Quantidade CGST,
CRM,CRM,
CWIP Account,Conta do CWIP,
Calculated Bank Statement balance,Saldo calculado do extrato bancário,
Campaign,Campanha,
Can be approved by {0},Pode ser aprovado por {0},
"Can not filter based on Account, if grouped by Account","Não é possível filtrar com base em conta , se agrupados por Conta",
"Can not filter based on Voucher No, if grouped by Voucher","Não é possível filtrar com base no Comprovante Não, se agrupados por voucher",
"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Não é possível marcar o Inpatient Record Discharged, há Faturas Não Faturadas {0}",
Can only make payment against unbilled {0},Só pode fazer o pagamento contra a faturar {0},
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',Pode se referir linha apenas se o tipo de acusação é 'On Anterior Valor Row ' ou ' Previous Row Total',
"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","Não é possível alterar o método de avaliação, uma vez que há transações contra alguns itens que não tem seu próprio método de avaliação",
Can't create standard criteria. Please rename the criteria,Não é possível criar critérios padrão. Renomeie os critérios,
Cancel,Cancelar,
Cancel Material Visit {0} before cancelling this Warranty Claim,Anular Material de Visita {0} antes de cancelar esta solicitação de garantia,
Cancel Material Visits {0} before cancelling this Maintenance Visit,Cancelar Materiais Visitas {0} antes de cancelar este Manutenção Visita,
Cancel Subscription,Cancelar Assinatura,
Cancel the journal entry {0} first,Cancelar a entrada do diário {0} primeiro,
Canceled,Cancelado,
"Cannot Submit, Employees left to mark attendance","Não é possível enviar, funcionários deixados para marcar presença",
Cannot be a fixed asset item as Stock Ledger is created.,Não pode ser um item de ativos fixos pois o Ledger de estoque é criado.,
Cannot cancel because submitted Stock Entry {0} exists,Não pode cancelar por causa da entrada submetido {0} existe,
Cannot cancel transaction for Completed Work Order.,Não é possível cancelar a transação para a ordem de serviço concluída.,
Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},Não é possível cancelar {0} {1} porque o número de série {2} não pertence ao depósito {3},
Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,Não é possível alterar os Atributos após a transação do estoque. Faça um novo Item e transfira estoque para o novo Item,
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Não é possível alterar o Ano Fiscal Data de Início e Data de Fim Ano Fiscal uma vez que o Ano Fiscal é salvo.,
Cannot change Service Stop Date for item in row {0},Não é possível alterar a Data de Parada do Serviço para o item na linha {0},
Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,Não é possível alterar as propriedades da Variante após a transação de estoque. Você terá que fazer um novo item para fazer isso.,
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","Não é possível alterar a moeda padrão da empresa, porque existem operações existentes. Transações devem ser canceladas para alterar a moeda padrão.",
Cannot change status as student {0} is linked with student application {1},Não é possível alterar o status pois o aluno {0} está relacionado à candidatura à vaga de estudo {1},
Cannot convert Cost Center to ledger as it has child nodes,Não é possível converter Centro de Custo de contabilidade uma vez que tem nós filhos,
Cannot covert to Group because Account Type is selected.,Não é possível converter para o Grupo pois o tipo de conta é selecionado.,
Cannot create Retention Bonus for left Employees,Não é possível criar bônus de retenção para funcionários da esquerda,
Cannot create a Delivery Trip from Draft documents.,Não é possível criar uma viagem de entrega a partir de documentos de rascunho.,
Cannot deactivate or cancel BOM as it is linked with other BOMs,Não é possível desativar ou cancelar BOM vez que está associada com outras BOMs,
"Cannot declare as lost, because Quotation has been made.","Não se pode declarar como perdido , porque foi realizado um Orçamento.",
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',Não pode deduzir quando é para categoria ' Avaliação ' ou ' Avaliação e Total',
Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',"Não pode deduzir quando a categoria é para ""Estimativa"" ou ""Estimativa e Total""",
"Cannot delete Serial No {0}, as it is used in stock transactions","Não é possível excluir Serial no {0}, como ele é usado em transações de ações",
Cannot enroll more than {0} students for this student group.,Não é possível inscrever mais de {0} alunos neste grupo de alunos.,
Cannot produce more Item {0} than Sales Order quantity {1},Não é possível produzir mais item {0} do que a quantidade no Pedido de Venda {1},
Cannot promote Employee with status Left,Não é possível promover funcionários com status,
Cannot refer row number greater than or equal to current row number for this Charge type,Não é possível consultar número da linha superior ou igual ao número da linha atual para este tipo de carga,
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,"Não é possível selecionar o tipo de carga como "" Valor Em linha anterior ' ou ' On Anterior Row Total ' para a primeira linha",
Cannot set as Lost as Sales Order is made.,Não é possível definir como Perdido uma vez que foi feito um Pedido de Venda,
Cannot set authorization on basis of Discount for {0},Não é possível definir a autorização com base em desconto para {0},
Cannot set multiple Item Defaults for a company.,Não é possível definir vários padrões de item para uma empresa.,
Cannot set quantity less than delivered quantity,Não é possível definir quantidade menor que a quantidade fornecida,
Cannot set quantity less than received quantity,Não é possível definir quantidade menor que a quantidade recebida,
Cannot set the field <b>{0}</b> for copying in variants,Não é possível definir o campo <b>{0}</b> para copiar em variantes,
Cannot transfer Employee with status Left,Não é possível transferir o funcionário com status,
Cannot {0} {1} {2} without any negative outstanding invoice,Não é possível {0} {1} {2} sem qualquer fatura pendente,
Capital Equipments,Bens de Capital,
Capital Stock,Capital Social,
Capital Work in Progress,Trabalho de Capital Em Progresso,
Cart,Carrinho,
Cart is Empty,Seu Carrinho Está Vazio,
Case No(s) already in use. Try from Case No {0},Processo n º (s) já está em uso. Tente de Processo n {0},
Cash,Dinheiro,
Cash Flow Statement,Demonstrativo de Fluxo de Caixa,
Cash Flow from Financing,Fluxo de Caixa de Financiamento,
Cash Flow from Investing,Fluxo de Caixa de Investimentos,
Cash Flow from Operations,Fluxo de Caixa das Operações,
Cash In Hand,Dinheiro na Mão,
Cash or Bank Account is mandatory for making payment entry,Dinheiro ou conta bancária é obrigatória para a tomada de entrada de pagamento,
Cashier Closing,Fechamento do Caixa,
Category,Categoria,
Category Name,Nome da Categoria,
Caution,Cuidado,
Central Tax,Imposto Central,
Certification,Certificação,
Cess,Cobrança,
Change Amount,Troco,
Change Item Code,Alterar o Código do Item,
Change Release Date,Alterar Data de Liberação,
Change Template Code,Código de Modelo de Mudança,
Changing Customer Group for the selected Customer is not allowed.,A alteração do grupo de clientes para o cliente selecionado não é permitida.,
Chapter,Capítulo,
Chapter information.,Informações do capítulo.,
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Charge do tipo ' real ' na linha {0} não pode ser incluído no item Taxa,
Chargeble,Chargeble,
Charges are updated in Purchase Receipt against each item,Encargos são atualizados em Recibo de compra para cada item,
"Charges will be distributed proportionately based on item qty or amount, as per your selection","Encargos serão distribuídos proporcionalmente com base na qtde de itens ou valor, conforme sua seleção",
Chart of Cost Centers,Plano de Centros de Custo,
Check all,Marcar Todos,
Checkout,Finalizar Compra,
Chemical,Químico,
Cheque,Cheque,
Cheque/Reference No,Nr. de Cheque/referência,
Cheques Required,Cheques Necessários,
Cheques and Deposits incorrectly cleared,Cheques e depósitos apagados incorretamente,
Child Task exists for this Task. You can not delete this Task.,Tarefa infantil existe para esta Tarefa. Você não pode excluir esta Tarefa.,
Child nodes can be only created under 'Group' type nodes,"Os Subgrupos só podem ser criados sob os ramos do tipo ""Grupo""",
Child warehouse exists for this warehouse. You can not delete this warehouse.,Existe um armazém secundário para este armazém. Não pode eliminar este armazém.,
Circular Reference Error,Erro de Referência Circular,
City,Cidade,
City/Town,Cidade,
Clay,Argila,
Clear filters,Limpar filtros,
Clear values,Limpar valores,
Clearance Date,Data de Liberação,
Clearance Date not mentioned,Apuramento data não mencionada,
Clearance Date updated,Data de Liquidação atualizada,
Client,Cliente,
Client ID,ID do Cliente,
Client Secret,Segredo do Cliente,
Clinical Procedure,Procedimento Clínico,
Clinical Procedure Template,Modelo de Procedimento Clínico,
Close Balance Sheet and book Profit or Loss.,Fechar Balanço e livro ou perda.,
Close Loan,Fechar Empréstimo,
Close the POS,Feche o PDV,
Closed,Fechado,
Closed order cannot be cancelled. Unclose to cancel.,ordem fechada não pode ser cancelada. Unclose para cancelar.,
Closing (Cr),Fechamento (cr),
Closing (Dr),Fechamento (dr),
Closing (Opening + Total),Fechamento (Abertura + Total),
Closing Account {0} must be of type Liability / Equity,Fechando Conta {0} deve ser do tipo de responsabilidade / Patrimônio Líquido,
Closing Balance,Saldo Final,
Code,Código,
Collapse All,Recolher Todos,
Color,Cor,
Colour,Cor,
Combined invoice portion must equal 100%,A fração da fatura combinada deve ser igual a 100%,
Commercial,Comercial,
Commission,Comissão,
Commission Rate %,Taxa de Comissão %,
Commission on Sales,Comissão Sobre Vendas,
Commission rate cannot be greater than 100,Percentual de comissão não pode ser maior do que 100,
Community Forum,Forum da Comunidade,
Company (not Customer or Supplier) master.,Cadastro da Empresa (não Cliente nem Fornecedor),
Company Abbreviation,Abreviação da Empresa,
Company Abbreviation cannot have more than 5 characters,Abreviação da Empresa não pode ter mais de 5 caracteres,
Company Name,Nome da Empresa,
Company Name cannot be Company,Nome da empresa não pode ser Empresa,
Company currencies of both the companies should match for Inter Company Transactions.,As moedas da empresa de ambas as empresas devem corresponder às transações da empresa.,
Company is manadatory for company account,Empresa é mandatório para conta da empresa,
Company name not same,Nome da empresa não o mesmo,
Company {0} does not exist,A Empresa {0} não existe,
Compensatory leave request days not in valid holidays,Dias de solicitação de licença compensatória não em feriados válidos,
Complaint,Queixa,
Completion Date,Data de Conclusão,
Computer,Computador,
Condition,Condição,
Configure,Configurar,
Configure {0},Configure {0},
Confirmed orders from Customers.,Pedidos confirmados de clientes.,
Connect Amazon with ERPNext,Conecte-se à Amazon com o ERPNext,
Connect Shopify with ERPNext,Conecte o Shopify com o ERPNext,
Connect to Quickbooks,Conecte-se a Quickbooks,
Connected to QuickBooks,Conectado Ao Quickbooks,
Connecting to QuickBooks,Conectando-se Ao Quickbooks,
Consultation,Consulta,
Consultations,Consultas,
Consulting,Consultoria,
Consumable,Consumíveis,
Consumed,Consumido,
Consumed Amount,Quantidade Consumida,
Consumed Qty,Qtde Consumida,
Consumer Products,Produtos Para o Consumidor,
Contact,Contato,
Contact Details,Detalhes do Contato,
Contact Us,Contate-nos,
Content,Conteúdo,
Content Masters,Mestres de Conteúdo,
Content Type,Tipo de Conteúdo,
Continue Configuration,Continue a Configuração,
Contract,Contrato,
Contract End Date must be greater than Date of Joining,Data de Encerramento do Contrato deve ser maior que Data de Inicio,
Contribution %,Contribuição%,
Contribution Amount,Contribuição Total,
Conversion factor for default Unit of Measure must be 1 in row {0},Fator de conversão de unidade de medida padrão deve ser 1 na linha {0},
Conversion rate cannot be 0 or 1,A taxa de conversão não pode ser 0 ou 1,
Convert to Group,Converter Em Grupo,
Convert to Non-Group,Converter Para Não-grupo,
Cosmetics,Cosméticos,
Cost Center,Centro de Custos,
Cost Center Number,Número do Centro de Custo,
Cost Center and Budgeting,Centro de Custo e Orçamento,
Cost Center is required in row {0} in Taxes table for type {1},Centro de Custo é necessária na linha {0} no Imposto de mesa para o tipo {1},
Cost Center with existing transactions can not be converted to group,Centro de custo com as operações existentes não podem ser convertidos em grupo,
Cost Center with existing transactions can not be converted to ledger,Centro de custo com as operações existentes não podem ser convertidos em registro,
Cost Centers,Centros de Custo,
Cost Updated,Custo Atualizado,
Cost as on,Custo Como Em,
Cost of Delivered Items,Custo de Produtos Entregues,
Cost of Goods Sold,Custo Dos Produtos Vendidos,
Cost of Issued Items,Custo Dos Produtos Enviados,
Cost of New Purchase,Custo da Nova Compra,
Cost of Purchased Items,Custo de Produtos Comprados,
Cost of Scrapped Asset,Custo do Ativo Sucateado,
Cost of Sold Asset,Custo do Ativo Vendido,
Cost of various activities,Custo das diferentes actividades,
"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again",Não foi possível criar uma nota de crédito automaticamente. Desmarque a opção &quot;Emitir nota de crédito&quot; e envie novamente,
Could not generate Secret,Não foi possível gerar Segredo,
Could not retrieve information for {0}.,Não foi possível recuperar informações para {0}.,
Could not solve criteria score function for {0}. Make sure the formula is valid.,Não foi possível resolver a função de pontuação dos critérios para {0}. Verifique se a fórmula é válida.,
Could not solve weighted score function. Make sure the formula is valid.,Não foi possível resolver a função de pontuação ponderada. Verifique se a fórmula é válida.,
Could not submit some Salary Slips,Não foi possível enviar alguns recibos de salário,
"Could not update stock, invoice contains drop shipping item.","Não foi possível atualizar estoque, fatura contém gota artigo do transporte.",
Country wise default Address Templates,Modelos de Endereços Padronizados por País,
Course Code: ,Código do Curso:,
Course Enrollment {0} does not exists,O enrollment do curso {0} não existe,
Course Schedule,Agenda do Curso,
Course: ,Curso:,
Cr,Cr,
Create,Criar,
Create BOM,Criar Lista Técnica,
Create Delivery Trip,Criar Viagem de Entrega,
Create Employee,Criar Empregado,
Create Employee Records,Criar Registros de Colaboradores,
"Create Employee records to manage leaves, expense claims and payroll","Criar registos de funcionários para gerir faltas, declarações de despesas e folha de salários",
Create Fee Schedule,Criar Tabela de Taxas,
Create Fees,Criar Taxas,
Create Inter Company Journal Entry,Criar Entrada de Diário Entre Empresas,
Create Invoice,Criar Recibo,
Create Invoices,Criar Faturas,
Create Job Card,Criar Cartão de Trabalho,
Create Journal Entry,Criar Entrada de Diário,
Create Lead,Criar Lead,
Create Leads,Criar Leads,
Create Maintenance Visit,Criar Visita de Manutenção,
Create Material Request,Criar Pedido de Material,
Create Multiple,Criar Múltiplo,
Create Opening Sales and Purchase Invoices,Criar Vendas de Abertura e Faturas de Compra,
Create Payment Entries,Criar Entradas de Pagamento,
Create Payment Entry,Criar Entrada de Pagamento,
Create Print Format,Criar Formato de Impressão,
Create Purchase Order,Criar Pedido,
Create Purchase Orders,Criar Pedidos de Compra,
Create Quotation,Criar Cotação,
Create Sales Invoice,Criar Fatura de Vendas,
Create Sales Order,Criar Pedido de Venda,
Create Sales Orders to help you plan your work and deliver on-time,Criar pedidos de vendas para ajudá-lo a planejar seu trabalho e entregar dentro do prazo,
Create Sample Retention Stock Entry,Criar Entrada de Estoque de Retenção de Amostra,
Create Student,Criar Aluno,
Create Student Batch,Criar Lote de Alunos,
Create Student Groups,Criar Grupos de Alunos,
Create Supplier Quotation,Criar Cotação de Fornecedor,
Create Tax Template,Criar Modelo de Imposto,
Create Timesheet,Criar Quadro de Horários,
Create User,Criar Usuário,
Create Users,Criar Usuários,
Create Variant,Criar Variante,
Create Variants,Criar Variantes,
"Create and manage daily, weekly and monthly email digests.","Cria e configura as regras de recebimento de emails, como diário, semanal ou mensal.",
Create customer quotes,Criar orçamentos de clientes,
Create rules to restrict transactions based on values.,Criar regras para restringir operações com base em valores.,
Created {0} scorecards for {1} between: ,Criou {0} scorecards para {1} entre:,
Creating Company and Importing Chart of Accounts,Criando Empresa e Importando Plano de Contas,
Creating Fees,Criando Taxas,
Creating student groups,Criando grupos de alunos,
Creating {0} Invoice,Criando Fatura de {0},
Credit,Crédito,
Credit ({0}),Crédito ({0}),
Credit Account,Conta de Crédito,
Credit Balance,Saldo Credor,
Credit Card,Cartão de Crédito,
Credit Days cannot be a negative number,Days Credit não pode ser um número negativo,
Credit Limit,Limite de Crédito,
Credit Note,Nota de Crédito,
Credit Note Amount,Valor da Nota de Crédito,
Credit Note Issued,Nota de Crédito Emitida,
Credit Note {0} has been created automatically,A nota de crédito {0} foi criada automaticamente,
Credit limit has been crossed for customer {0} ({1}/{2}),O limite de crédito foi cruzado para o cliente {0} ({1} / {2}),
Creditors,Credores,
Criteria weights must add up to 100%,Os pesos dos critérios devem somar até 100%,
Crop Cycle,Ciclo de Colheita,
Crops & Lands,Culturas e Terras,
Currency Exchange must be applicable for Buying or for Selling.,Câmbio deve ser aplicável para compra ou venda.,
Currency can not be changed after making entries using some other currency,Moeda não pode ser alterada depois de fazer entradas usando alguma outra moeda,
Currency exchange rate master.,Cadastro de Taxa de Câmbio,
Currency for {0} must be {1},A moeda para {0} deve ser {1},
Currency is required for Price List {0},É necessário informar a Moeda na Lista de Preço {0},
Currency of the Closing Account must be {0},Moeda da Conta de encerramento deve ser {0},
Currency of the price list {0} must be {1} or {2},Moeda da lista de preços {0} deve ser {1} ou {2},
Currency should be same as Price List Currency: {0},A moeda deve ser a mesma que a Moeda da lista de preços: {0},
Current Assets,Ativo Circulante,
Current BOM and New BOM can not be same,A LDM Atual e a Nova LDM não podem ser as mesmas,
Current Liabilities,Passivo Circulante,
Current Qty,Qtde Atual,
Current invoice {0} is missing,A fatura atual {0} está faltando,
Custom HTML,Html Personalizado,
Custom?,Personalizado?,
Customer,Cliente,
Customer Addresses And Contacts,Endereços e Contatos do Cliente,
Customer Contact,Contato do Cliente,
Customer Database.,Banco de Dados de Clientes,
Customer Group,Grupo de Clientes,
Customer LPO,LPO do Cliente,
Customer LPO No.,Cliente Número LPO,
Customer Name,Nome do Cliente,
Customer POS Id,ID do PD do Cliente,
Customer Service,Atendimento Ao Cliente,
Customer and Supplier,Clientes e Fornecedores,
Customer is required,O Cliente é obrigatório,
Customer isn't enrolled in any Loyalty Program,O cliente não está inscrito em nenhum programa de fidelidade,
Customer required for 'Customerwise Discount',Necessário para ' Customerwise Discount ' Cliente,
Customer {0} does not belong to project {1},Cliente {0} não pertence ao projeto {1},
Customer {0} is created.,O cliente {0} foi criado.,
Customers in Queue,Clientes na Fila,
Customize Homepage Sections,Personalizar Seções da Página Inicial,
Customizing Forms,Personalização de Formulários,
Daily Project Summary for {0},Resumo Diário do Projeto Para {0},
Daily Reminders,Lembretes Diários,
Data Import and Export,Importação e Exportação de Dados,
Data Import and Settings,Importação de Dados,
Database of potential customers.,Banco de dados de clientes potenciais.,
Date Format,Formato de Data,
Date Of Retirement must be greater than Date of Joining,Data da aposentadoria deve ser maior que Data de Contratação,
Date of Birth,Data de Nascimento,
Date of Birth cannot be greater than today.,Data de nascimento não pode ser maior do que hoje.,
Date of Commencement should be greater than Date of Incorporation,A data de início deve ser maior que a data de incorporação,
Date of Joining,Data da Contratação,
Date of Joining must be greater than Date of Birth,Data de Contratação deve ser maior do que a Data de Nascimento,
Date of Transaction,Data da Transação,
Datetime,Data e Hora,
Day,Dia,
Debit,Débito,
Debit ({0}),Débito ({0}),
Debit Account,Conta de Débito,
Debit Note,Nota de Débito,
Debit Note Amount,Valor da Nota de Débito,
Debit Note Issued,Nota de Débito Emitida,
Debit To is required,Para Débito é necessária,
Debit and Credit not equal for {0} #{1}. Difference is {2}.,O Débito e Crédito não são iguais para {0} # {1}. a diferença é de {2}.,
Debtors,Devedores,
Debtors ({0}),Devedores ({0}),
Declare Lost,Declarar Perdido,
Default Activity Cost exists for Activity Type - {0},Existe Atividade Custo Padrão para o Tipo de Atividade - {0},
Default BOM ({0}) must be active for this item or its template,LDM Padrão ({0}) precisa estar ativo para este item ou o seu modelo,
Default BOM for {0} not found,Não foi encontrado a LDM Padrão para {0},
Default BOM not found for Item {0} and Project {1},Lista de materiais padrão não encontrada para Item {0} e Projeto {1},
Default Letter Head,Cabeçalho Padrão,
Default Tax Template,Modelo de Imposto Padrão,
Default Unit of Measure for Item {0} cannot be changed directly because you have already made some transaction(s) with another UOM. You will need to create a new Item to use a different Default UOM.,Unidade de medida padrão para item {0} não pode ser alterado diretamente porque você já fez alguma transação (s) com outra Unidade de Medida. Você precisará criar um novo item para usar uma Unidade de Medida padrão diferente.,
Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',A unidade de medida padrão para a variante '{0}' deve ser o mesmo que no modelo '{1}',
Default settings for buying transactions.,As configurações padrão para a compra de transações.,
Default settings for selling transactions.,Configuração padrão para transações de vendas.,
Default tax templates for sales and purchase are created.,Os modelos de imposto padrão para vendas e compra são criados.,
Defaults,Padrões,
Defense,Defesa,
Define Project type.,Defina tipo de projeto.,
Define budget for a financial year.,Defina orçamento para um ano fiscal.,
Define various loan types,Defina vários tipos de empréstimos,
Del,Del,
Delay in payment (Days),Atraso no Pagamento (Dias),
Delete all the Transactions for this Company,Apagar todas as transações para esta empresa,
Deletion is not permitted for country {0},A exclusão não está permitida para o país {0},
Delivered,Entregue,
Delivered Amount,Quantia Entregue,
Delivered Qty,Qtde Entregue,
Delivered: {0},Entregue: {0},
Delivery,Entrega,
Delivery Date,Data de Entrega,
Delivery Note,Guia de Remessa,
Delivery Note {0} is not submitted,A Guia de Remessa {0} não foi enviada,
Delivery Note {0} must not be submitted,A Guia de Remessa {0} não deve ser enviada,
Delivery Notes {0} must be cancelled before cancelling this Sales Order,A Guia de Remessa {0} deve ser cancelada antes de cancelar este Pedido de Venda,
Delivery Notes {0} updated,Notas de entrega {0} atualizadas,
Delivery Status,Status da Entrega,
Delivery Trip,Viagem de Entrega,
Delivery warehouse required for stock item {0},Armazém de entrega necessário para item do estoque {0},
Department,Departamento,
Department Stores,Lojas de Departamento,
Depreciation,Depreciação,
Depreciation Amount,Valor de Depreciação,
Depreciation Amount during the period,Total de Depreciação durante o período,
Depreciation Date,Data da Depreciação,
Depreciation Eliminated due to disposal of assets,A Depreciação foi Eliminada devido à alienação de ativos,
Depreciation Entry,Lançamento de Depreciação,
Depreciation Method,Método de Depreciação,
Depreciation Row {0}: Depreciation Start Date is entered as past date,Linha de depreciação {0}: a data de início da depreciação é entrada como data anterior,
Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Linha de depreciação {0}: o valor esperado após a vida útil deve ser maior ou igual a {1},
Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Linha de depreciação {0}: a próxima data de depreciação não pode ser anterior à data disponível para uso,
Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Linha de depreciação {0}: a próxima data de depreciação não pode ser anterior à data de compra,
Designer,Designer,
Detailed Reason,Razão Detalhada,
Details,Detalhes,
Details of Outward Supplies and inward supplies liable to reverse charge,Detalhes de suprimentos externos e suprimentos internos sujeitos a reversão de carga,
Details of the operations carried out.,Os detalhes das operações realizadas.,
Diagnosis,Diagnóstico,
Did not find any item called {0},Não havia nenhuma item chamado {0},
Diff Qty,Dif Qtd,
Difference Account,Conta Diferença,
"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Conta diferença deve ser uma conta de tipo ativo / passivo, uma vez que este da reconciliação é uma entrada de Abertura",
Difference Amount,Total da Diferença,
Difference Amount must be zero,O Valor da Diferença deve ser zero,
Different UOM for items will lead to incorrect (Total) Net Weight value. Make sure that Net Weight of each item is in the same UOM.,UDM diferente para itens gerará um Peso Líquido (Total ) incorreto. Certifique-se de que o peso líquido de cada item está na mesma UDM.,
Direct Expenses,Despesas Diretas,
Direct Income,Receita Direta,
Disable,Desativar,
Disabled template must not be default template,O modelo desativado não pode ser o modelo padrão,
Disburse Loan,Desembolsar Empréstimo,
Disbursed,Desembolsado,
Disc,Disco,
Discharge,Descarga,
Discount,Desconto,
Discount Percentage can be applied either against a Price List or for all Price List.,Percentual de desconto pode ser aplicado contra uma lista de preços ou para todos Lista de Preços.,
Discount must be less than 100,Desconto deve ser inferior a 100,
Diseases & Fertilizers,Doenças e Fertilizantes,
Dispatch,Expedição,
Dispatch Notification,Notificação de Despacho,
Dispatch State,Estado de Despacho,
Distance,Distância,
Distribution,Distribuição,
Distributor,Distribuidor,
Dividends Paid,Dividendos Pagos,
Do you really want to restore this scrapped asset?,Você realmente deseja restaurar este ativo descartado?,
Do you really want to scrap this asset?,Você realmente quer se desfazer deste ativo?,
Do you want to notify all the customers by email?,Deseja notificar todos os clientes por e-mail?,
Doc Date,Data do Doc,
Doc Name,Nome do Documento,
Doc Type,Tipo do Documento,
Docs Search,Pesquisa do Documentos,
Document Name,Nome do Documento,
Document Type,Tipo de Documento,
Domain,Domínio,
Domains,Domínios,
Done,Feito,
Donor,Doador,
Donor Type information.,Informação do tipo de doador.,
Donor information.,Informação do doador.,
Download JSON,Baixar JSON,
Draft,Rascunho,
Drop Ship,Drop Ship,
Drug,Droga,
Due / Reference Date cannot be after {0},Vencimento / Data de Referência não pode ser depois de {0},
Due Date cannot be before Posting / Supplier Invoice Date,A data de vencimento não pode ser antes da data da remessa / da fatura do fornecedor,
Due Date is mandatory,A data de vencimento é obrigatória,
Duplicate Entry. Please check Authorization Rule {0},Duplicar entrada. Por favor verifique Regra de Autorização {0},
Duplicate Serial No entered for Item {0},Duplicar Serial Não entrou para item {0},
Duplicate customer group found in the cutomer group table,Foi encontrado um grupo de clientes duplicado na tabela de grupo do cliente,
Duplicate entry,Duplicar lançamento,
Duplicate item group found in the item group table,Foi encontrado um grupo item duplicado na tabela de grupo de itens,
Duplicate roll number for student {0},Número de rolo duplicado para o estudante {0},
Duplicate row {0} with same {1},Linha duplicada {0} com o mesmo {1},
Duplicate {0} found in the table,Duplicar {0} encontrado na tabela,
Duration in Days,Duração Em Dias,
Duties and Taxes,Impostos e Contribuições,
E-Invoicing Information Missing,Informações de Faturamento Eletrônico Ausentes,
ERPNext Demo,Demo do ERPNext,
ERPNext Settings,Configurações do ERPNext,
Earliest,Mais Antigas,
Earnest Money,Sinal/garantia Em Dinheiro,
Edit,Editar,
Edit Publishing Details,Editar Detalhes de Publicação,
"Edit in full page for more options like assets, serial nos, batches etc.","Edite em página inteira para obter mais opções, como ativos, números de série, lotes etc.",
Education,Educação,
Either location or employee must be required,Qualquer local ou funcionário deve ser necessário,
Either target qty or target amount is mandatory,Meta de qtde ou valor da meta são obrigatórios,
Either target qty or target amount is mandatory.,Meta de qtde ou valor da meta são obrigatórios.,
Electrical,Elétrico,
Electronic Equipments,Equipamentos Eletrônicos,
Electronics,Eletrônica,
Eligible ITC,ITC Elegível,
Email Account,Conta de Email,
Email Address,Endereço de Email,
"Email Address must be unique, already exists for {0}","O ID de Email deve ser único, já existe para {0}",
Email Digest: ,Email de Resumo:,
Email Reminders will be sent to all parties with email contacts,Lembretes de e-mail serão enviados a todas as partes com contatos de e-mail,
Email Sent,Email Enviado,
Email Template,Modelo de Email,
Email not found in default contact,E-mail não encontrado em contato padrão,
Email sent to {0},E-mail enviado para {0},
Employee,Colaborador,
Employee Advances,Avanços do Funcionário,
Employee ID,ID do Empregado,
Employee Lifecycle,Ciclo de Vida do Funcionário,
Employee Name,Nome do Colaborador,
Employee Promotion cannot be submitted before Promotion Date ,A promoção de funcionários não pode ser enviada antes da data da promoção,
Employee Transfer cannot be submitted before Transfer Date ,Transferência de Empregados não pode ser submetida antes da Data de Transferência,
Employee cannot report to himself.,Colaborador não pode denunciar a si mesmo.,
Employee {0} has already applied for {1} between {2} and {3} : ,O empregado {0} já aplicou {1} entre {2} e {3}:,
Employee {0} of grade {1} have no default leave policy,Empregado {0} da nota {1} não tem política de licença padrão,
Enable,Permitir,
Enable / disable currencies.,Ativar / Desativar moedas.,
Enabled,Ativado,
"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Ao ativar a ""Utilização para Carrinho de Compras"", o Carrinho de Compras ficará ativado e deverá haver pelo menos uma Regra de Impostos para o Carrinho de Compras",
End Date,Data Final,
End Date can not be less than Start Date,Data final não pode ser inferior a data de início,
End Date cannot be before Start Date.,A data de término não pode ser anterior à data de início.,
End Year,Ano Final,
End Year cannot be before Start Year,O ano final não pode ser antes do ano de início,
End on,Término Em,
Ends On date cannot be before Next Contact Date.,As datas finais não podem ser anteriores à data do contato.,
Energy,Energia,
Engineer,Engenheiro,
Enough Parts to Build,Peças Suficientes Para Construir,
Enroll,Matricular,
Enrolling student,estudante de inscrição,
Enrolling students,Inscrição de alunos,
Enter depreciation details,Insira detalhes de depreciação,
Enter the Bank Guarantee Number before submittting.,Digite o número da garantia bancária antes de enviar.,
Enter the name of the Beneficiary before submittting.,Digite o nome do beneficiário antes de enviar.,
Enter the name of the bank or lending institution before submittting.,Digite o nome do banco ou instituição de empréstimo antes de enviar.,
Enter value betweeen {0} and {1},Digite o valor entre {0} e {1},
Entertainment & Leisure,Entretenimento & Lazer,
Entertainment Expenses,Despesas Com Entretenimento,
Equity,Patrimônio Líquido,
Error Log,Log de Erro,
Error evaluating the criteria formula,Erro ao avaliar a fórmula de critérios,
Error in formula or condition: {0},Erro na fórmula ou condição: {0},
Error: Not a valid id?,Erro: Não é um ID válido?,
Estimated Cost,Custo Estimado,
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Mesmo se houver várias regras de preços com maior prioridade, então seguintes prioridades internas são aplicadas:",
Event,Evento,
Exchange Gain/Loss,Ganho/perda Com Câmbio,
Exchange Rate Revaluation master.,Mestre de Reavaliação da Taxa de Câmbio.,
Exchange Rate must be same as {0} {1} ({2}),Taxa de câmbio deve ser o mesmo que {0} {1} ({2}),
Excise Invoice,Guia de Recolhimento de Tributos,
Execution,Execução,
Executive Search,Executive Search,
Expand All,Expandir Todos,
Expected Delivery Date,Data Prevista de Entrega,
Expected Delivery Date should be after Sales Order Date,Data de entrega esperada deve ser após a data da ordem de venda,
Expected End Date,Data Prevista de Término,
Expected Hrs,Horas Esperadas,
Expected Start Date,Data Prevista de Início,
Expense,Despesa,
Expense / Difference account ({0}) must be a 'Profit or Loss' account,Despesa conta / Diferença ({0}) deve ser um 'resultados' conta,
Expense Account,Conta de Despesas,
Expense Claim,Pedido de Reembolso de Despesas,
Expense Claims,Relatórios de Despesas,
Expense account is mandatory for item {0},Conta de despesa é obrigatória para item {0},
Expenses,Despesas,
Expenses Included In Asset Valuation,Despesas Incluídas na Avaliação de Imobilizado,
Expenses Included In Valuation,Despesas Incluídas na Avaliação,
Expired Batches,Lotes Expirados,
Expires On,Expira Em,
Expiring On,Expirando Em,
Expiry (In Days),Vencimento (em Dias),
Explore,Explorar,
Export E-Invoices,Exportar Faturas Eletrônicas,
Extra Large,Extra Grande,
Extra Small,Muito Pequeno,
Fail,Falha,
Failed,Falhou,
Failed to create website,Falha ao criar o site,
Failed to install presets,Falha na instalação de predefinições,
Failed to login,Falha ao fazer o login,
Failed to setup company,Falha na configuração da empresa,
Failed to setup defaults,Falha ao configurar os padrões,
Failed to setup post company fixtures,Falha ao configurar dispositivos móveis da empresa postal,
Fax,Fax,
Fee,Taxa,
Fee Created,Fee Created,
Fee Creation Failed,Fee Creation Failed,
Fee Creation Pending,Criação de Taxa Pendente,
Fee Records Created - {0},Registos de Taxas Criados - {0},
Feedback,Comentários,
Fees,Taxas,
Female,Feminino,
Fetch Data,Buscar Dados,
Fetch Subscription Updates,Buscar Atualizações de Assinatura,
Fetch exploded BOM (including sub-assemblies),Buscar LDM explodida (incluindo sub-conjuntos ),
Fetching records......,Buscando registros......,
Field Name,Nome do Campo,
Fieldname,Nome do Campo,
Fields,Campos,
"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Filtrar Campos Linha # {0}: o campo Nome <b>{1}</b> deve ser do tipo &quot;Link&quot; ou &quot;MultiSelecionar Tabela&quot;,
Filter Total Zero Qty,Qtd Total de Zero do Filtro,
Finance Book,Livro Contábil,
Financial / accounting year.,Ano Financeiro / Exercício.,
Financial Services,Serviços Financeiros,
Financial Statements,Demonstrativos Financeiros,
Financial Year,Ano Financeiro,
Finish,Finalizar,
Finished Good,Bem Acabado,
Finished Good Item Code,Código de Item Acabado,
Finished Goods,Produtos Acabados,
Finished Item {0} must be entered for Manufacture type entry,O Item finalizado {0} deve ser digitado para a o lançamento de tipo de fabricação,
Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,Quantidade de produto finalizada <b>{0}</b> e para Quantidade <b>{1}</b> não pode ser diferente,
First Name,Nome,
"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","Regime Fiscal é obrigatório, gentilmente definir o regime fiscal na empresa {0}",
Fiscal Year,Exercício Fiscal,
Fiscal Year End Date should be one year after Fiscal Year Start Date,A data final do ano fiscal deve ser de um ano após a data de início do ano fiscal,
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Ano Fiscal Data de Início e Término do Exercício Social Data já estão definidos no ano fiscal de {0},
Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,A data de início do exercício fiscal deve ser um ano antes da data final do exercício fiscal.,
Fiscal Year {0} does not exist,Ano Fiscal {0} não existe,
Fiscal Year {0} is required,Ano Fiscal {0} é necessário,
Fixed Asset,Ativo Imobilizado,
Fixed Asset Item must be a non-stock item.,O Item Ativo Imobilizado deve ser um item não inventariado.,
Fixed Assets,Ativos Imobilizados,
Following Material Requests have been raised automatically based on Item's re-order level,As seguintes Requisições de Material foram criadas automaticamente com base no nível de reposição do item,
Following accounts might be selected in GST Settings:,As seguintes contas podem ser selecionadas nas Configurações de GST:,
Following course schedules were created,Seguiram os horários dos cursos criados,
Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,O item seguinte {0} não está marcado como item {1}. Você pode ativá-los como um item {1} do seu mestre de itens,
Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Os itens seguintes {0} não estão marcados como item {1}. Você pode ativá-los como um item {1} do seu mestre de itens,
"Food, Beverage & Tobacco","Alimentos, Bebidas e Fumo",
For,Para,
"For 'Product Bundle' items, Warehouse, Serial No and Batch No will be considered from the 'Packing List' table. If Warehouse and Batch No are same for all packing items for any 'Product Bundle' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","Para os itens dos ""Pacote de Produtos"", o Armazém e Nr. de Lote serão considerados a partir da tabela de ""Lista de Empacotamento"". Se o Armazém e o Nr. de Lote forem os mesmos para todos os itens empacotados para qualquer item dum ""Pacote de Produto"", esses valores podem ser inseridos na tabela do Item principal, e os valores serão copiados para a tabela da ""Lista de Empacotamento'"".",
For Quantity (Manufactured Qty) is mandatory,Para Quantidade (qtde fabricada) é obrigatório,
For Supplier,Para Fornecedor,
For Warehouse,Para Armazém,
For Warehouse is required before Submit,Armazém de destino necessário antes de enviar,
"For an item {0}, quantity must be negative number","Para um item {0}, a quantidade deve ser um número negativo",
"For an item {0}, quantity must be positive number","Para um item {0}, a quantidade deve ser um número positivo",
"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry","Para o cartão de trabalho {0}, você só pode fazer a entrada de estoque do tipo ';Transferência de material para produção';",
"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","Para linha {0} em {1}. Para incluir {2} na taxa de Item, linhas {3} também devem ser incluídos",
For row {0}: Enter Planned Qty,Para a Linha {0}: Digite a Quantidade Planejada,
"For {0}, only credit accounts can be linked against another debit entry","Por {0}, apenas as contas de crédito pode ser ligado contra outro lançamento de débito",
"For {0}, only debit accounts can be linked against another credit entry","Por {0}, apenas as contas de débito pode ser ligado contra outra entrada crédito",
Forum Activity,Atividade do Fórum,
Free item code is not selected,Código de item livre não selecionado,
Freight and Forwarding Charges,Frete e Encargos de Envio,
Frequency,Frequência,
Friday,Sexta-feira,
From,De,
From Address 1,Do Endereço 1,
From Address 2,Do Endereço 2,
From Currency and To Currency cannot be same,De Moeda e Para Moeda não pode ser o mesmo,
From Date and To Date lie in different Fiscal Year,De data e até a data estão em diferentes anos fiscais,
From Date cannot be greater than To Date,A partir de data não pode ser maior que a Data,
From Date must be before To Date,A Data de deve ser anterior à Data A,
From Date should be within the Fiscal Year. Assuming From Date = {0},A partir de data deve estar dentro do ano fiscal. Assumindo de Date = {0},
From Datetime,A Partir da Data e Hora,
From Delivery Note,De Nota de Entrega,
From Fiscal Year,A Partir do Ano Fiscal,
From GSTIN,De GSTIN,
From Party Name,Do Parceiro,
From Pin Code,Do código PIN,
From Place,Do Lugar,
From Range has to be less than To Range,De Gama tem de ser inferior à gama,
From State,Do Estado,
From Time,Do Horário,
From Time Should Be Less Than To Time,Do Tempo Deve Ser Menor Que o Tempo,
From Time cannot be greater than To Time.,O Tempo de não pode ser após o Tempo Para.,
"From a supplier under composition scheme, Exempt and Nil rated","De um fornecedor sob esquema de composição, Isento e Nulo",
From and To dates required,De e datas necessárias,
From value must be less than to value in row {0},Do valor deve ser menor do que o valor na linha {0},
From {0} | {1} {2},A Partir de {0} | {1} {2},
Fulfillment,Realização,
Full,Cheio,
Full Name,Nome Completo,
Fully Depreciated,Depreciados Totalmente,
Furnitures and Fixtures,Móveis e Utensílios,
"Further accounts can be made under Groups, but entries can be made against non-Groups","Outras contas podem ser feitas em Grupos, mas as entradas podem ser feitas contra os Não-Grupos",
Further cost centers can be made under Groups but entries can be made against non-Groups,Mais centros de custo podem ser feitos em grupos mas as entradas podem ser feitas contra os Não-Grupos,
Further nodes can be only created under 'Group' type nodes,Outros nós só podem ser criados dentro dos nós do tipo 'Grupo',
GSTIN,GSTIN,
GSTR3B-Form,GSTR3B-Form,
Gain/Loss on Asset Disposal,Ganho/perda no Descarte de Ativo,
Gantt Chart,Gráfico de Gantt,
Gantt chart of all tasks.,Gráfico de Gantt de todas as tarefas.,
Gender,Sexo,
General,Geral,
General Ledger,Livro Razão,
Generate Material Requests (MRP) and Work Orders.,Gerar Solicitações de Materiais (mrp) e Ordens de Serviço.,
Generate Secret,Gerar Segredo,
Get Invocies,Receba Invocies,
Get Invoices,Obter Faturas,
Get Invoices based on Filters,Obter faturas com base em filtros,
Get Items from BOM,Obter itens da LDM,
Get Items from Healthcare Services,Obter itens de serviços de saúde,
Get Items from Prescriptions,Obter itens de prescrições,
Get Items from Product Bundle,Obter Itens do Pacote de Produtos,
Get Suppliers,Obter Fornecedores,
Get Suppliers By,Obter Provedores Por,
Get Updates,Receber Notícias,
Get customers from,Obtenha clientes de,
Get from Patient Encounter,Obter do Encontro do Paciente,
Getting Started,Começando,
GitHub Sync ID,Github Sync ID,
Global settings for all manufacturing processes.,As configurações globais para todos os processos de fabricação.,
Go to the Desktop and start using ERPNext,Vá para o ambiente de trabalho e começar a usar ERPNext,
GoCardless SEPA Mandate,Mandato SEPA GoCardless,
GoCardless payment gateway settings,Configurações do gateway de pagamento GoCardless,
Goal and Procedure,Objetivo e Procedimento,
Goals cannot be empty,Objetivos não podem estar em branco,
Goods In Transit,Mercadorias Em Trânsito,
Goods Transferred,Mercadorias Transferidas,
Goods and Services Tax (GST India),Imposto sobre Bens e Serviços (GST India),
Goods are already received against the outward entry {0},As mercadorias já são recebidas contra a entrada de saída {0},
Government,Governo,
Grand Total,Total Geral,
Grant,Conceder,
Grant Application,Solicitação de Subsídio,
Grant Leaves,Grant Leaves,
Grant information.,Conceda informações.,
Grocery,Mercearia,
Gross Profit,Lucro Bruto,
Gross Profit %,Lucro Bruto %,
Gross Profit / Loss,Lucro / Prejuízo Bruto,
Gross Purchase Amount,Valor Bruto de Compra,
Gross Purchase Amount is mandatory,Valor Bruto de Compra é obrigatório,
Group by Account,Agrupar Por Conta,
Group by Party,Agrupar Por Parceiro,
Group by Voucher,Agrupar Por Comprovante,
Group by Voucher (Consolidated),Grupo Por Vale (consolidado),
Group node warehouse is not allowed to select for transactions,Não é permitido selecionar o subgrupo de armazém para as transações,
Group to Non-Group,Grupo Para Não-grupo,
Group your students in batches,Grupo seus alunos em lotes,
Groups,Grupos,
Guardian1 Email ID,E-mail Guardian1,
Guardian1 Mobile No,Celular Guardian1,
Guardian1 Name,Nome Guardian1,
Guardian2 Email ID,E-mail Guardian2,
Guardian2 Mobile No,Celular Guardian2,
Guardian2 Name,Nome Guardian2,
HR Manager,Gerente de RH,
HSN,HSN,
HSN/SAC,HSN/SAC,
Half Yearly,Semestral,
Half-Yearly,Semestralmente,
Hardware,Ferramentas,
Head of Marketing and Sales,Diretor de Marketing e Vendas,
Health Care,Plano de Saúde,
Healthcare,Serviço de Saúde,
Healthcare (beta),Serviço de Saúde (beta),
Healthcare Practitioner,Praticante de Saúde,
Healthcare Practitioner not available on {0},Profissional de Saúde não disponível em {0},
Healthcare Practitioner {0} not available on {1},Praticante de Assistência Médica {0} não disponível em {1},
Healthcare Service Unit,Unidade de Atendimento de Saúde,
Healthcare Service Unit Tree,Árvore da Unidade de Serviços de Saúde,
Healthcare Service Unit Type,Tipo de Unidade de Serviço de Saúde,
Healthcare Services,Serviços de Saúde,
Healthcare Settings,Configurações de Serviço de Saúde,
Help Results for,Resultados da Ajuda Para,
High,Alto,
High Sensitivity,Alta Sensibilidade,
Hold,Segurar,
Hold Invoice,Segurar Fatura,
Holiday,Feriado,
Holiday List,Lista de Feriados,
Hotel Rooms of type {0} are unavailable on {1},Hotel os quartos do tipo {0} estão indisponíveis no {1},
Hotels,Hotéis,
Hourly,De Hora Em Hora,
Hours,Horas,
How Pricing Rule is applied?,Como regra de preços é aplicada?,
Hub Category,Categoria Hub,
Hub Sync ID,Identificação da Sincronização do Hub,
Human Resource,Recursos Humanos,
Human Resources,Recursos Humanos,
IFSC Code,Código IFSC,
IGST Amount,Valor IGST,
IP Address,Endereço de Ip,
ITC Available (whether in full op part),ITC disponível (seja na parte operacional completa),
ITC Reversed,ITC Invertido,
Identifying Decision Makers,Identificando os Tomadores de Decisão,
"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Se a opção Aceitação automática estiver marcada, os clientes serão automaticamente vinculados ao Programa de fidelidade em questão (quando salvo)",
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Se várias regras de preços continuam a prevalecer, os usuários são convidados a definir a prioridade manualmente para resolver o conflito.",
"If selected Pricing Rule is made for 'Rate', it will overwrite Price List. Pricing Rule rate is the final rate, so no further discount should be applied. Hence, in transactions like Sales Order, Purchase Order etc, it will be fetched in 'Rate' field, rather than 'Price List Rate' field.","Se a Regra de preços selecionada for feita para ';Taxa';, ela substituirá a Lista de preços. a taxa de tarifa de preços é a taxa final, portanto, nenhum desconto adicional deve ser aplicado. Assim, em transações como Ordem de Vendas, Ordem de Compra, etc., será buscado no campo &quot;Taxa&quot;, em vez do campo &quot;Taxa de Lista de Preços&quot;.",
"If two or more Pricing Rules are found based on the above conditions, Priority is applied. Priority is a number between 0 to 20 while default value is zero (blank). Higher number means it will take precedence if there are multiple Pricing Rules with same conditions.","Se forem encontradas duas ou mais Regras de Fixação de Preços baseadas nas condições acima, é aplicada a Prioridade. a Prioridade é um número entre 0 a 20, enquanto que o valor padrão é zero (em branco). Um número maior significa que terá prioridade se houver várias Regras de Fixação de Preços com as mesmas condições.",
"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Se a expiração for ilimitada para os Pontos de Lealdade, mantenha a Duração de Expiração vazia ou 0.",
"If you have any questions, please get back to us.","Se você tem alguma pergunta, por favor nos contate.",
Ignore Existing Ordered Qty,Ignorar Quantidade Pedida Existente,
Image,Imagem,
Image View,Visualização de Imagem,
Import Data,Importar Dados,
Import Day Book Data,Importar Dados do Livro Diário,
Import Log,Log de Importação,
Import Master Data,Importar Dados Mestre,
Import in Bulk,Importação Em Massa,
Import of goods,Importação de mercadorias,
Import of services,Importação de serviços,
Importing Items and UOMs,Importando Itens e UDMs,
Importing Parties and Addresses,Importando Partes e Endereços,
In Maintenance,Em Manutenção,
In Production,Em Produção,
In Qty,Qtde Entrada,
In Stock Qty,Quantidade no Estoque,
In Stock: ,No Estoque:,
In Value,Valor Entrada,
"In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","No caso do programa multicamadas, os Clientes serão atribuídos automaticamente ao nível em questão de acordo com o gasto",
Inactive,Inativo,
Incentives,Incentivos,
Include Default Book Entries,Incluir Entradas de Livro Padrão,
Include Exploded Items,Incluir Itens Explodidos,
Include POS Transactions,Incluir Transações PDV,
Include UOM,Incluir UDM,
Included in Gross Profit,Incluído no Lucro Bruto,
Income,Receita,
Income Account,Conta de Receitas,
Income Tax,Imposto de Renda,
Incoming,Entrada,
Incoming Rate,Valor de Entrada,
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Número incorreto de General Ledger Entries encontrado. Talvez você tenha selecionado uma conta de errado na transação.,
Increment cannot be 0,Incremento não pode ser 0,
Increment for Attribute {0} cannot be 0,Atributo incremento para {0} não pode ser 0,
Indirect Expenses,Despesas Indiretas,
Indirect Income,Receita Indireta,
Individual,Pessoa Física,
Ineligible ITC,ITC Não Elegível,
Initiated,Iniciada,
Inpatient Record,Registro de Internamento,
Insert,Inserir,
Installation Note,Nota de Instalação,
Installation Note {0} has already been submitted,A nota de instalação {0} já foi enviada,
Installation date cannot be before delivery date for Item {0},Data de instalação não pode ser anterior à data de entrega de item {0},
Installing presets,Instalando predefinições,
Institute Abbreviation,Abreviação do Instituto,
Institute Name,Nome do Instituto,
Instructor,Instrutor,
Insufficient Stock,Estoque Insuficiente,
Insurance Start date should be less than Insurance End date,A data de início da cobertura do seguro deve ser inferior a data de término da cobertura,
Integrated Tax,Imposto Integrado,
Inter-State Supplies,Suprimentos Interestaduais,
Interests,Juros,
Internet Publishing,Publishing Internet,
Intra-State Supplies,Suprimentos Intra-estatais,
Introduction,Introdução,
Invalid Attribute,Atributo Inválido,
Invalid Blanket Order for the selected Customer and Item,Ordem de cobertura inválida para o cliente e item selecionados,
Invalid Company for Inter Company Transaction.,Empresa Inválida Para Transação Entre Empresas.,
Invalid GSTIN! A GSTIN must have 15 characters.,GSTIN inválido! Um GSTIN deve ter 15 caracteres.,
Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,GSTIN inválido! os primeiros 2 dígitos do GSTIN devem corresponder ao número do estado {0}.,
Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,GSTIN inválido! a entrada que você digitou não corresponde ao formato de GSTIN.,
Invalid Posting Time,Tempo de Lançamento Inválido,
Invalid attribute {0} {1},Atributo inválido {0} {1},
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Quantidade inválido especificado para o item {0}. Quantidade deve ser maior do que 0.,
Invalid reference {0} {1},Referência inválida {0} {1},
Invalid {0},Inválido {0},
Invalid {0} for Inter Company Transaction.,{0} inválido para transação entre empresas.,
Invalid {0}: {1},Inválido {0}: {1},
Inventory,Inventário,
Investment Banking,Investimento Bancário,
Investments,Investimentos,
Invoice,Fatura,
Invoice Created,Fatura Criada,
Invoice Discounting,Desconto de Fatura,
Invoice Patient Registration,Fatura Registro de Pacientes,
Invoice Posting Date,Data do Lançamento da Fatura,
Invoice Type,Tipo de Fatura,
Invoice already created for all billing hours,Fatura já criada para todos os horários de cobrança,
Invoice can't be made for zero billing hour,A fatura não pode ser feita para zero hora de cobrança,
Invoice {0} no longer exists,A fatura {0} não existe mais,
Invoiced,Facturado,
Invoiced Amount,Valor Faturado,
Invoices,Faturas,
Invoices for Costumers.,Faturas Para Clientes.,
Inward supplies from ISD,Suprimentos internos da ISD,
Inward supplies liable to reverse charge (other than 1 & 2 above),Suprimentos internos sujeitos a reversão de carga (exceto 1 e 2 acima),
Is Active,É Ativo,
Is Default,É Padrão,
Is Existing Asset,É Ativo Existente,
Is Frozen,Está Congelado,
Is Group,É Grupo,
Issue,Incidente,
Issue Material,Saída de Material,
Issued,Emitido,
Issues,Incidentes,
It is needed to fetch Item Details.,Isto é necessário para buscar detalhes de itens,
Item,Item,
Item 1,Número 1,
Item 2,Número 2,
Item 3,Item 3,
Item 4,Item 4,
Item 5,Item 5,
Item Cart,Item do Carrinho,
Item Code,Código do Item,
Item Code cannot be changed for Serial No.,Código do item não pode ser alterado para o nº de série.,
Item Code required at Row No {0},Código do item exigido na Linha Nº {0},
Item Description,Descrição do Item,
Item Group,Grupo de Itens,
Item Group Tree,Árvore de Grupos do Item,
Item Group not mentioned in item master for item {0},Grupo item não mencionado no mestre de item para item {0},
Item Name,Nome do Item,
Item Price added for {0} in Price List {1},Item Preço adicionada para {0} na lista de preços {1},
"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","O Preço do Item aparece várias vezes com base na Lista de Preços, Fornecedor / Cliente, Moeda, Item, UOM, Quantidade e Datas.",
Item Price updated for {0} in Price List {1},O Preço do Item foi atualizado para {0} na Lista de Preços {1},
Item Row {0}: {1} {2} does not exist in above '{1}' table,Linha do Item {0}: {1} {2} não existe na tabela ';{1}'; acima,
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Item Imposto Row {0} deve ter em conta tipo de imposto ou de renda ou de despesa ou carregável,
Item Template,Modelo de Item,
Item Variant Settings,Configurações da Variante de Item,
Item Variant {0} already exists with same attributes,Variant item {0} já existe com mesmos atributos,
Item Variants,Variantes Dos Itens,
Item Variants updated,Variantes de item atualizadas,
Item has variants.,Item tem variantes.,
Item must be added using 'Get Items from Purchase Receipts' button,"O artigo deve ser adicionado usando ""Obter itens de recibos de compra 'botão",
Item valuation rate is recalculated considering landed cost voucher amount,Taxa de valorização do item é recalculado considerando valor do voucher custo desembarcou,
Item variant {0} exists with same attributes,Variante item {0} existe com os mesmos atributos,
Item {0} does not exist,Item {0} não existe,
Item {0} does not exist in the system or has expired,Item {0} não existe no sistema ou expirou,
Item {0} has already been returned,Item {0} já foi devolvido,
Item {0} has been disabled,Item {0} foi desativado,
Item {0} has reached its end of life on {1},Item {0} chegou ao fim da vida em {1},
Item {0} ignored since it is not a stock item,Item {0} ignorado uma vez que não é um item de estoque,
"Item {0} is a template, please select one of its variants","Item {0} é um modelo, por favor selecione uma de suas variantes",
Item {0} is cancelled,Item {0} é cancelada,
Item {0} is disabled,Item {0} está desativado,
Item {0} is not a serialized Item,Item {0} não é um item serializado,
Item {0} is not a stock Item,Item {0} não é um item de estoque,
Item {0} is not active or end of life has been reached,Item {0} não está ativo ou fim de vida útil foi atingido,
Item {0} is not setup for Serial Nos. Check Item master,Item {0} não está configurado para nºs de série mestre verifique o cadastro do item,
Item {0} is not setup for Serial Nos. Column must be blank,Item {0} não está configurado para Serial Coluna N º s deve estar em branco,
Item {0} must be a Fixed Asset Item,O Item {0} deve ser um Item de Ativo Imobilizado,
Item {0} must be a Sub-contracted Item,Item {0} deve ser um item do sub- contratados,
Item {0} must be a non-stock item,Item {0} deve ser um item não inventariado,
Item {0} must be a stock Item,Item {0} deve ser um item de estoque,
Item {0} not found,Item {0} não foi encontrado,
Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},"Item {0} não encontrado em 'matérias-primas fornecidas"" na tabela Pedido de Compra {1}",
Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,Item {0}: Qtde pedida {1} não pode ser inferior a qtde mínima de pedido {2} (definido no cadastro do Item).,
Item: {0} does not exist in the system,Item: {0} não existe no sistema,
Items,Itens,
Items Filter,Filtro de Itens,
Items and Pricing,Itens e Preços,
Items for Raw Material Request,Itens Para Solicitação de Matéria-prima,
Job Card,Cartão de Trabalho,
Job card {0} created,Cartão de trabalho {0} criado,
Join,Junte-se,
Journal Entries {0} are un-linked,Lançamentos no Livro Diário {0} são desvinculados,
Journal Entry,Lançamento no Livro Diário,
Journal Entry {0} does not have account {1} or already matched against other voucher,Lançamento no Livro Diário {0} não tem conta {1} ou já conciliado com outro comprovante,
Kanban Board,Painel Kanban,
Key Reports,Relatórios Principais,
LMS Activity,Atividade LMS,
Lab Test,Teste de Laboratório,
Lab Test Report,Relatório de Teste de Laboratório,
Lab Test Sample,Amostra de Teste de Laboratório,
Lab Test Template,Modelo de Teste de Laboratório,
Lab Test UOM,Teste de Laboratório UDM,
Lab Tests and Vital Signs,Testes Laboratoriais e Sinais Vitais,
Lab result datetime cannot be before testing datetime,O tempo da data do resultado do laboratório não pode ser antes de testar a data e hora,
Lab testing datetime cannot be before collection datetime,O tempo de exibição no laboratório não pode ser anterior à data de coleta,
Label,Rótulo,
Laboratory,Laboratório,
Language Name,Nome do Idioma,
Large,Grande,
Last Communication,Último Contato,
Last Communication Date,Data do Último Contato,
Last Name,Sobrenome,
Last Order Amount,Valor do Último Pedido,
Last Order Date,Data do Último Pedido,
Last Purchase Price,Último preço de compra,
Last Purchase Rate,Valor da Última Compra,
Latest,Mais Recentes,
Latest price updated in all BOMs,Preço mais recente atualizado em todas as LDMs,
Lead,Lead,
Lead Count,Contagem de Leads,
Lead Owner,Proprietário do Lead,
Lead Owner cannot be same as the Lead,Proprietário do Lead não pode ser o mesmo que o Lead,
Lead Time Days,Prazo de Entrega (em Dias),
Lead to Quotation,Fazer Um Orçamento,
"Leads help you get business, add all your contacts and more as your leads","Leads ajudam a gerar negócios, adicione todos os seus contatos como Leads",
Learn,Aprender,
Leave Management,Gestão de Licenças,
Leave and Attendance,Licenças e Assiduidade,
Leave application {0} already exists against the student {1},Deixe o aplicativo {0} já existir contra o aluno {1},
Leaves has been granted sucessfully,Folhas foi concedido com sucesso,
Leaves must be allocated in multiples of 0.5,Folhas devem ser alocados em múltiplos de 0 5,
Ledger,Livro Razão,
Legal,Legal,
Legal Expenses,Despesas Legais,
Letter Head,Cabeçalho de Carta,
Letter Heads for print templates.,Cabeçalhos para modelos de impressão.,
Level,Nível,
Liability,Passivo,
License,Licença,
Limit,Limite,
Limit Crossed,Limite Ultrapassado,
Link to Material Request,Link Para Solicitação de Material,
List of all share transactions,Lista de todas as transações de compartilhamento,
List of available Shareholders with folio numbers,Lista de accionistas disponíveis com números folio,
Loading Payment System,Sistema de Pagamento de Carregamento,
Loan,Empréstimo,
Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,Data de Início do Empréstimo e Período do Empréstimo são obrigatórios para salvar o Desconto da Fatura,
Loans (Liabilities),Empréstimos (passivo),
Loans and Advances (Assets),Empréstimos e Adiantamentos (ativos),
Local,Local,
Log,Registo,
Logs for maintaining sms delivery status,Logs para a manutenção de status de entrega sms,
Lost,Perdido,
Lost Reasons,Razões Perdidas,
Low,Baixo,
Low Sensitivity,Baixa Sensibilidade,
Lower Income,Baixa Renda,
Loyalty Amount,Montante de Fidelidade,
Loyalty Point Entry,Entrada do Ponto de Fidelidade,
Loyalty Points,Pontos de Fidelidade,
"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.","Os pontos de fidelidade serão calculados a partir do gasto realizado (via fatura de vendas), com base no fator de cobrança mencionado.",
Loyalty Points: {0},Pontos de Fidelidade: {0},
Loyalty Program,Programa de Lealdade,
Main,Principal,
Maintenance,Manutenção,
Maintenance Log,Log de Manutenção,
Maintenance Manager,Gerente de Manutenção,
Maintenance Schedule,Programação da Manutenção,
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"Programação de manutenção não é gerada para todos os itens. Por favor, clique em ""Gerar Agenda""",
Maintenance Schedule {0} exists against {1},O cronograma de manutenção {0} existe contra {1},
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Programação de Manutenção {0} deve ser cancelada antes de cancelar este Pedido de Venda,
Maintenance Status has to be Cancelled or Completed to Submit,O Status de Manutenção Deve Ser Cancelado Ou Concluído Para Enviar,
Maintenance User,Usuário da Manutenção,
Maintenance Visit,Visita de Manutenção,
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Visita de Manutenção {0} deve ser cancelada antes de cancelar este Pedido de Venda,
Maintenance start date can not be before delivery date for Serial No {0},Manutenção data de início não pode ser anterior à data de entrega para Serial Não {0},
Make,Criar,
Make Payment,Criar Pagamento,
Make project from a template.,Criar projeto a partir de um modelo.,
Making Stock Entries,Criando Lançamentos no Estoque,
Male,Masculino,
Manage Customer Group Tree.,Gerenciar Grupos de Clientes,
Manage Sales Partners.,Gerenciar Parceiros de Vendas.,
Manage Sales Person Tree.,Gerenciar Vendedores,
Manage Territory Tree.,Gerenciar Territórios,
Manage your orders,Gerir seus pedidos,
Management,Gestão,
Manager,Gerente,
Managing Projects,Gerenciamento de Projetos,
Managing Subcontracting,Gerenciando Subcontratação,
Mandatory,Obrigatório,
Mandatory field - Academic Year,Campo obrigatório - ano acadêmico,
Mandatory field - Get Students From,Campo Obrigatório - Obter Alunos De,
Mandatory field - Program,Campo obrigatório - Programa,
Manufacture,Fabricação,
Manufacturer,Fabricante,
Manufacturer Part Number,Número de Peça do Fabricante,
Manufacturing,Fabricação,
Manufacturing Quantity is mandatory,Manufacturing Quantidade é obrigatório,
Mapping,Mapeamento,
Mapping Type,Tipo de Mapeamento,
Mark Absent,Marcar Ausente,
Mark Half Day,Marcar Meio Período,
Mark Present,Marcar Presença,
Marketing,Marketing,
Marketing Expenses,Despesas Com Marketing,
Marketplace,Marketplace,
Marketplace Error,Erro do Mercado,
Masters,Cadastros,
Match Payments with Invoices,Conciliação de Pagamentos,
Match non-linked Invoices and Payments.,Combinar Faturas e Pagamentos não relacionados.,
Material,Material,
Material Consumption,Consumo de Material,
Material Consumption is not set in Manufacturing Settings.,O consumo de material não está definido em Configurações de fabricação.,
Material Receipt,Entrada de Material,
Material Request,Requisição de Material,
Material Request Date,Data da Requisição de Material,
Material Request No,Pedido de Material No,
"Material Request not created, as quantity for Raw Materials already available.","Solicitação de material não criada, como quantidade para matérias-primas já disponíveis.",
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Requisição de Material de no máximo {0} pode ser feita para item {1} relacionado à ordem de venda {2},
Material Request to Purchase Order,Requisição de Material Para Pedido de Compra,
Material Request {0} is cancelled or stopped,Requisição de Material {0} é cancelada ou parada,
Material Request {0} submitted.,Solicitação de Material {0} enviada.,
Material Transfer,Transferência de Material,
Material Transferred,Material Transferido,
Material to Supplier,Material a Fornecedor,
Max discount allowed for item: {0} is {1}%,Max desconto permitido para o item: {0} é {1}%,
Max: {0},Max: {0},
Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Amostras máximas - {0} podem ser mantidas para Batch {1} e Item {2}.,
Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Amostras máximas - {0} já foram mantidas para Batch {1} e Item {2} no Batch {3}.,
Maximum discount for Item {0} is {1}%,O desconto máximo para o item {0} é de {1}%,
Medical Code,Código Médico,
Medical Code Standard,Padrão do Código Médico,
Medical Department,Departamento Medico,
Medical Record,Registo Médico,
Medium,Médio,
Meeting,Reunião,
Member Activity,Atividade de Membro,
Member ID,ID do Membro,
Member Name,Nome do Membro,
Member information.,Informações dos Membros.,
Membership,Associação,
Membership Details,Detalhes da Associação,
Membership ID,ID de Associação,
Membership Type,Tipo de Membro,
Memebership Details,Detalhes da Associação,
Memebership Type Details,Detalhes do Tipo de Associação,
Merge,Mesclar,
Merge Account,Mesclar Conta,
Merge with Existing Account,Mesclar com conta existente,
"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","A fusão só é possível se seguintes propriedades são as mesmas em ambos os registros. É Group, tipo de raiz, Company",
Message Examples,Exemplos de Mensagens,
Message Sent,Mensagem Enviada,
Method,Método,
Middle Income,Renda Média,
Middle Name,Nome do Meio,
Middle Name (Optional),Nome do Meio (opcional),
Min Amt can not be greater than Max Amt,Min Amt não pode ser maior que Max Amt,
Min Qty can not be greater than Max Qty,Qtde mínima não pode ser maior do que qtde máxima,
Minimum Lead Age (Days),Tempo de Cadastro Mínimo do Lead (dias),
Miscellaneous Expenses,Despesas Diversas,
Missing Currency Exchange Rates for {0},Faltando Taxas de Câmbio Para {0},
Missing email template for dispatch. Please set one in Delivery Settings.,Modelo de email ausente para envio. Por favor defina um em Configurações de Entrega.,
"Missing value for Password, API Key or Shopify URL","Valor ausente para senha, chave de API ou URL do Shopify",
Mode of Payment,Forma de Pagamento,
Mode of Payments,Modo de Pagamento,
Mode of Transport,Modo de Transporte,
Mode of Transportation,Modo de Transporte,
Model,Modelo,
Moderate Sensitivity,Sensibilidade Moderada,
Monday,Segunda-feira,
Monthly,Mensal,
Monthly Distribution,Distribuição Mensal,
More,Mais,
More Information,Mais Informações,
More...,Mais...,
Motion Picture & Video,Motion Picture & Video,
Move,Mover,
Move Item,Mover Item,
Multi Currency,Multi Moeda,
Multiple Item prices.,Vários preços do item.,
Multiple Loyalty Program found for the Customer. Please select manually.,Programa de fidelidade múltipla encontrado para o cliente. Por favor selecione manualmente.,
"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Várias regras de preços existe com os mesmos critérios, por favor, resolver o conflito através da atribuição de prioridade. Regras Preço: {0}",
Multiple Variants,Variantes Múltiplas,
Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Vários anos fiscais existem para a data {0}. Por favor defina empresa no ano fiscal,
Music,Música,
My Account,Minha Conta,
Name error: {0},Nome de erro: {0},
Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Nome da nova conta. Nota: Por favor não criar contas para Clientes e Fornecedores,
Name or Email is mandatory,Nome ou email é obrigatório,
Nature Of Supplies,Natureza Dos Suprimentos,
Navigating,Navegação,
Needs Analysis,Precisa de Análise,
Negative Quantity is not allowed,Negativo Quantidade não é permitido,
Negative Valuation Rate is not allowed,Taxa de Avaliação negativa não é permitida,
Negotiation/Review,Negociação / Revisão,
Net Asset value as on,Valor Patrimonial Líquido como em,
Net Cash from Financing,Caixa Líquido de Financiamento,
Net Cash from Investing,Caixa Líquido de Investimentos,
Net Cash from Operations,Caixa Líquido de Operações,
Net Change in Accounts Payable,Variação Líquida Em Contas a Pagar,
Net Change in Accounts Receivable,Variação Líquida Em Contas a Receber,
Net Change in Cash,Variação Líquida Em Dinheiro,
Net Change in Equity,Mudança no Patrimônio Líquido,
Net Change in Fixed Asset,Variação Líquida do Ativo Imobilizado,
Net Change in Inventory,Variação Líquida no Inventário,
Net ITC Available(A) - (B),ITC Líquido Disponível (a) - (b),
Net Profit,Lucro Líquido,
Net Total,Total Líquido,
New Account Name,Nome da Nova Conta,
New Address,Novo Endereço,
New BOM,Nova LDM,
New Batch ID (Optional),Novo ID do Lote (opcional),
New Batch Qty,Nova Quantidade de Lote,
New Company,Nova Empresa,
New Cost Center Name,Novo Centro de Custo Nome,
New Customer Revenue,Receita Com Novos Clientes,
New Customers,Clientes Novos,
New Department,Novo Departamento,
New Employee,Novo Empregado,
New Location,Nova Localização,
New Quality Procedure,Novo Procedimento de Qualidade,
New Sales Invoice,Nova Fatura de Venda,
New Sales Person Name,Nome do Novo Vendedor,
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,New Serial Não não pode ter Warehouse. Warehouse deve ser definida pelo Banco de entrada ou Recibo de compra,
New Warehouse Name,Nome do Novo Armazén,
New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Novo limite de crédito é inferior ao saldo devedor atual do cliente. o limite de crédito deve ser de pelo menos {0},
New task,Nova Tarefa,
New {0} pricing rules are created,Novas {0} regras de precificação são criadas,
Newsletters,Newsletters,
Newspaper Publishers,Editor de Newsletter,
Next,Próximo,
Next Contact By cannot be same as the Lead Email Address,Próximo Contato não pode ser o mesmo que o Endereço de Email do Lead,
Next Contact Date cannot be in the past,A Próxima Data de Contato não pode ocorrer no passado,
Next Steps,Próximos Passos,
No Action,Nenhuma Ação,
No Customers yet!,Nenhum cliente ainda!,
No Data,Sem Dados,
No Delivery Note selected for Customer {},Nenhuma nota de entrega selecionada para o cliente {},
No Item with Barcode {0},Nenhum artigo com código de barras {0},
No Item with Serial No {0},Nenhum Item com Nº de Série {0},
No Items available for transfer,Nenhum item disponível para transferência,
No Items selected for transfer,Nenhum item selecionado para transferência,
No Items to pack,Nenhum item para embalar,
No Items with Bill of Materials to Manufacture,Não há itens com Lista de Materiais para Fabricação,
No Items with Bill of Materials.,Nenhum item com lista de materiais.,
No Permission,Nenhuma Permissão,
No Remarks,Sem Observações,
No Result to submit,Nenhum resultado para enviar,
No Student Groups created.,Não foi criado nenhum grupo de alunos.,
No Students in,Sem Alunos Em,
No Tax Withholding data found for the current Fiscal Year.,Nenhum dado de retenção fiscal encontrado para o ano fiscal atual.,
No Work Orders created,Nenhuma ordem de serviço criada,
No accounting entries for the following warehouses,Nenhuma entrada de contabilidade para os seguintes armazéns,
No contacts with email IDs found.,Nenhum contato com email encontrado.,
No data for this period,Nenhum dado para este período,
No description given,Nenhuma descrição informada,
No employees for the mentioned criteria,Nenhum empregado pelos critérios mencionados,
No gain or loss in the exchange rate,Nenhum ganho ou perda na taxa de câmbio,
No items listed,Nenhum item listado,
No items to be received are overdue,Nenhum item a ser recebido está atrasado,
No material request created,Não foi criada nenhuma solicitação de material,
No of Interactions,Nº de Interações,
No of Shares,Nº de Ações,
No pending Material Requests found to link for the given items.,Nenhuma solicitação de material pendente encontrada para vincular os itens fornecidos.,
No products found,Nenhum produto encontrado,
No products found.,Não foram encontrados produtos.,
No record found,Nenhum registro encontrado,
No records found in the Invoice table,Nenhum registro encontrado na tabela de fatura,
No records found in the Payment table,Nenhum registro encontrado na tabela de pagamento,
No tasks,não há tarefas,
No time sheets,Não há folhas de tempo,
No values,Sem valores,
No {0} found for Inter Company Transactions.,Nenhum {0} encontrado para transações entre empresas.,
Non GST Inward Supplies,Suprimentos Internos não GST,
Non Profit,Sem Fins Lucrativos,
Non Profit (beta),Sem Fins Lucrativos (beta),
Non-GST outward supplies,Suprimentos externos não-GST,
Non-Group to Group,Não-grupo Para Grupo,
None,Nenhum,
None of the items have any change in quantity or value.,Nenhum dos itens tiver qualquer mudança na quantidade ou valor.,
Nos,Nos,
Not Available,Não Disponível,
Not Marked,Não Marcado,
Not Paid and Not Delivered,Não Pago e Não Entregue,
Not Permitted,Não Permitido,
Not Started,Não Iniciado,
Not active,Inativo,
Not allow to set alternative item for the item {0},Não permite definir item alternativo para o item {0},
Not allowed to update stock transactions older than {0},Não é permitido atualizar transações com ações mais velho do que {0},
Not authorized to edit frozen Account {0},Não autorizado para editar conta congelada {0},
Not authroized since {0} exceeds limits,Não authroized desde {0} excede os limites,
Not permitted for {0},Não permitido para {0},
"Not permitted, configure Lab Test Template as required","Não permitido, configure o Modelo de teste de laboratório conforme necessário",
Not permitted. Please disable the Service Unit Type,Não é permitido. Por favor desative o tipo de unidade de serviço,
Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),Observação: Devido / Data de referência excede dias de crédito de cliente permitido por {0} dia(s),
Note: Item {0} entered multiple times,Observação: o Item {0} foi inserido mais de uma vez,
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Nota: Entrada pagamento não será criado desde 'Cash ou conta bancária ' não foi especificado,
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Nota : o sistema não irá verificar o excesso de entrega e sobre- reserva para item {0} como quantidade ou valor é 0,
Note: There is not enough leave balance for Leave Type {0},Nota: Não é suficiente equilíbrio pela licença Tipo {0},
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Nota: Este Centro de Custo é um grupo. Não pode fazer lançamentos contábeis contra grupos.,
Note: {0},Observação: {0},
Notes,Notas,
Nothing is included in gross,Nada está incluído no bruto,
Nothing more to show.,Nada mais para mostrar.,
Notify Customers via Email,Notificar Clientes Por E-mail,
Number,Número,
Number of Depreciations Booked cannot be greater than Total Number of Depreciations,O Número de Depreciações Reservadas não pode ser maior do que o Número Total de Depreciações,
Number of Interaction,Número de Interações,
Number of Order,Número de Pedidos,
"Number of new Account, it will be included in the account name as a prefix","Número da nova conta, será incluído no nome da conta como um prefixo",
"Number of new Cost Center, it will be included in the cost center name as a prefix","Número do novo centro de custo, ele será incluído no nome do centro de custo como um prefixo",
Number of root accounts cannot be less than 4,Número de contas raiz não pode ser menor que 4,
Odometer,Odômetro,
Office Equipments,Equipamentos de Escritório,
Office Maintenance Expenses,Despesas Com Manutenção de Escritório,
Office Rent,Aluguel do Escritório,
On Hold,Em Espera,
On Net Total,No Total Líquido,
One customer can be part of only single Loyalty Program.,Um cliente pode fazer parte de um único programa de fidelidade.,
Online Auctions,Leilões Online,
"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",Apenas o Candidato Estudante com o status &quot;Aprovado&quot; será selecionado na tabela abaixo.,
Only users with {0} role can register on Marketplace,Somente usuários com função {0} podem se registrar no Marketplace,
Open BOM {0},Abrir LDM {0},
Open Item {0},Abrir Item {0},
Open Notifications,Notificações Abertas,
Open Orders,Pedidos Em Aberto,
Open a new ticket,Abra um novo ticket,
Opening,Abertura,
Opening (Cr),Abertura (cr),
Opening (Dr),Abertura (dr),
Opening Accounting Balance,Saldo de Abertura da Conta,
Opening Accumulated Depreciation,Depreciação Acumulada Inicial,
Opening Accumulated Depreciation must be less than equal to {0},A Depreciação Acumulada Inicial deve ser menor ou igual a {0},
Opening Balance,Saldo Inicial,
Opening Balance Equity,Saldo de Abertura do Patrimônio Líquido,
Opening Date and Closing Date should be within same Fiscal Year,Abertura Data e Data de Fechamento deve estar dentro mesmo ano fiscal,
Opening Date should be before Closing Date,Data de Abertura deve ser antes da Data de Fechamento,
Opening Entry Journal,Jornal de Entrada de Abertura,
Opening Invoice Creation Tool,Ferramenta de Criação de Fatura de Abertura,
Opening Invoice Item,Item de Fatura de Abertura,
Opening Invoices,Abertura de Faturas,
Opening Invoices Summary,Resumo Das Faturas de Abertura,
Opening Qty,Qtde Abertura,
Opening Stock,Abertura de Estoque,
Opening Stock Balance,Saldo de Abertura do Estoque,
Opening Value,Valor de Abertura,
Opening {0} Invoice created,Abertura {0} Fatura criada,
Operation,Operação,
Operation Time must be greater than 0 for Operation {0},Tempo de Operação deve ser maior que 0 para a operação {0},
"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","Operação {0} mais do que as horas de trabalho disponíveis na estação de trabalho {1}, quebrar a operação em várias operações",
Operations,Operações,
Operations cannot be left blank,As operações não podem ser deixadas em branco,
Opp Count,Nº de Oportunidades,
Opp/Lead %,Oport/Lead %,
Opportunities,Oportunidades,
Opportunities by lead source,Oportunidades por origem do lead,
Opportunity,Oportunidade,
Opportunity Amount,Valor da Oportunidade,
"Optional. Sets company's default currency, if not specified.","Opcional. Define moeda padrão da empresa, se não for especificado.",
Optional. This setting will be used to filter in various transactions.,Opcional. Esta configuração será usada para filtrar em várias transações.,
Options,Opções,
Order Count,Contagem de Pedidos,
Order Entry,Entrada de Pedido,
Order Value,Valor do Pedido,
Order rescheduled for sync,Pedido reprogramado para sincronização,
Order/Quot %,Pedido / Orçamentos %,
Ordered,Pedido,
Ordered Qty,Qtde Encomendada,
"Ordered Qty: Quantity ordered for purchase, but not received.","Qtd Pedida: Quantidade pedida para compra, mas não recebida.",
Orders,Pedidos,
Orders released for production.,Ordens liberadas para produção.,
Organization,Organização,
Organization Name,Nome da Organização,
Other,Outro,
Other Reports,Relatórios Adicionais,
"Other outward supplies(Nil rated,Exempted)","Outras fontes externas (valor nominal nominal, isentos)",
Others,Outros,
Out Qty,Qtde Saída,
Out Value,Valor Saída,
Out of Order,Fora de Serviço,
Outgoing,Saída,
Outstanding,Saldo Devedor,
Outstanding Amount,Valor Devido,
Outstanding Amt,Valor Devido,
Outstanding Cheques and Deposits to clear,Cheques em circulação e depósitos para apagar,
Outstanding for {0} cannot be less than zero ({1}),Excelente para {0} não pode ser inferior a zero ( {1}),
Outward taxable supplies(zero rated),Suprimentos tributáveis externos (classificação zero),
Overdue,Vencido,
Overlap in scoring between {0} and {1},Sobreposição na pontuação entre {0} e {1},
Overlapping conditions found between:,Condições sobreposição encontradas entre :,
Owner,Proprietário,
PAN,PAN,
POS,PDV,
POS Profile,Perfil do PDV,
POS Profile is required to use Point-of-Sale,Perfil do PDV é necessário para usar o ponto de venda,
POS Profile required to make POS Entry,Perfil do PDV necessário para fazer entrada no PDV,
POS Settings,Configurações do PDV,
Packed quantity must equal quantity for Item {0} in row {1},Embalado quantidade deve ser igual a quantidade de item {0} na linha {1},
Packing Slip,Lista de Embalagem,
Packing Slip(s) cancelled,Lista(s) de embalagem cancelada(s),
Paid,Pago,
Paid Amount,Valor Pago,
Paid Amount cannot be greater than total negative outstanding amount {0},O valor pago não pode ser superior ao saldo devedor {0},
Paid amount + Write Off Amount can not be greater than Grand Total,Valor pago + Valor do abatimento não pode ser maior do que o total geral,
Paid and Not Delivered,Pago e Não Entregue,
Parameter,Parâmetro,
Parent Item {0} must not be a Stock Item,Pai item {0} não deve ser um item de Estoque,
Parents Teacher Meeting Attendance,Atendimento À Reunião de Pais de Professores,
Partially Depreciated,Parcialmente Depreciados,
Partially Received,Parcialmente Recebido,
Party,Parceiro,
Party Name,Nome do Parceiro,
Party Type,Tipo de Parceiro,
Party Type and Party is mandatory for {0} account,O Tipo de Parceiro e o Parceiro são obrigatórios para a conta {0},
Party Type is mandatory,É obrigatório colocar o Tipo de Parceiro,
Party is mandatory,Parceiro é obrigatório,
Password,Senha,
Past Due Date,Data de Vencimento Passado,
Patient,Paciente,
Patient Appointment,Nomeação do Paciente,
Patient Encounter,Encontro do Paciente,
Patient not found,Paciente não encontrado,
Pay Remaining,Pagar Restante,
Pay {0} {1},Pague {0} {1},
Payable,A Pagar,
Payable Account,Conta Para Pagamento,
Payment,Pagamento,
Payment Cancelled. Please check your GoCardless Account for more details,Pagamento cancelado. Por favor verifique a sua conta GoCardless para mais detalhes,
Payment Confirmation,Confirmação de Pagamento,
Payment Document,Documento de Pagamento,
Payment Due Date,Data de Vencimento,
Payment Entries {0} are un-linked,Os Registos de Pagamento {0} não estão relacionados,
Payment Entry,Pagamentos,
Payment Entry already exists,Pagamento já existe,
Payment Entry has been modified after you pulled it. Please pull it again.,Entrada de pagamento foi modificado depois que você puxou-o. Por favor puxe-o novamente.,
Payment Entry is already created,Entrada de pagamento já foi criada,
Payment Failed. Please check your GoCardless Account for more details,Pagamento falhou. Por favor verifique a sua conta GoCardless para mais detalhes,
Payment Gateway,Gateway de Pagamento,
"Payment Gateway Account not created, please create one manually.","Não foi criada uma Conta do Portal de Pagamento, por favor, crie uma manualmente.",
Payment Gateway Name,Nome do Gateway de Pagamento,
Payment Mode,Forma de Pagamento,
Payment Receipt Note,Nota de Recibo de Pagamento,
Payment Request,Pedido de Pagamento,
Payment Request for {0},Pedido de Pagamento Para {0},
Payment Tems,Tems de Pagamento,
Payment Term,Termo de Pagamento,
Payment Terms,Termos de Pagamento,
Payment Terms Template,Modelo de Termos de Pagamento,
Payment Terms based on conditions,Termos de pagamento com base nas condições,
Payment Type,Tipo de Pagamento,
"Payment Type must be one of Receive, Pay and Internal Transfer","O Tipo de Pagamento deve ser Receber, Pagar ou Transferência Interna",
Payment against {0} {1} cannot be greater than Outstanding Amount {2},O pagamento relacionado {0} {1} não pode ser maior do que o saldo devedor {2},
Payment request {0} created,Pedido de pagamento {0} criado,
Payments,Pagamentos,
Payroll Payable,Folha de Pagamento a Pagar,
Payslip,Holerite,
Pending Activities,Atividades Pendentes,
Pending Amount,Total Pendente,
Pending Leaves,Folhas Pendentes,
Pending Qty,Pendente Qtde,
Pending Quantity,Quantidade Pendente,
Pending Review,Revisão Pendente,
Pending activities for today,Atividades pendentes para hoje,
Pension Funds,Fundos de Pensão,
Percentage Allocation should be equal to 100%,Percentual de alocação deve ser igual a 100%,
Perception Analysis,Análise de Percepção,
Period,Período,
Period Closing Entry,Lançamento de Encerramento do Período,
Period Closing Voucher,Comprovante de Encerramento do Período,
Periodicity,Periodicidade,
Personal Details,Detalhes Pessoais,
Pharmaceutical,Farmacêutico,
Pharmaceuticals,Farmacêuticos,
Physician,Médico,
Pincode,Pincode,
Place Of Supply (State/UT),Lugar de Fornecimento (estado / UT),
Place Order,Fazer Pedido,
Plan Name,Nome do Plano,
Plan for maintenance visits.,Plano de visitas de manutenção.,
Planned Qty,Qtde Planejada,
"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Quantidade planejada: quantidade para a qual a ordem de serviço foi aumentada, mas está pendente de ser fabricada.",
Planning,Planejamento,
Plants and Machineries,Instalações e Maquinários,
Please Set Supplier Group in Buying Settings.,Por Favor Defina o Grupo de Fornecedores Nas Configurações de Compra.,
Please add a Temporary Opening account in Chart of Accounts,Adicione uma conta de abertura temporária no plano de contas,
Please add the account to root level Company - ,Por favor adicione a conta ao nível da raiz da empresa -,
Please check Multi Currency option to allow accounts with other currency,Por favor verifique multi opção de moeda para permitir que contas com outra moeda,
Please click on 'Generate Schedule',"Por favor, clique em ""Gerar Agenda""",
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Por favor, clique em ""Gerar Cronograma"" para buscar Serial Sem adição de item {0}",
Please click on 'Generate Schedule' to get schedule,"Por favor, clique em ""Gerar Agenda"" para obter cronograma",
Please create purchase receipt or purchase invoice for the item {0},Por favor crie recibo de compra ou fatura de compra para o item {0},
Please define grade for Threshold 0%,Por favor defina o grau para o Limiar 0%,
Please enable Applicable on Booking Actual Expenses,Por favor habilite Aplicável na Reserva de Despesas Reais,
Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Por favor habilite Aplicável no Pedido de Compra e Aplicável na Reserva de Despesas Reais,
Please enable pop-ups,Por favor habilite os pop-ups,
Please enter 'Is Subcontracted' as Yes or No,"Por favor, digite ' é subcontratado ""como Sim ou Não",
Please enter API Consumer Key,Por favor insira a chave do consumidor da API,
Please enter API Consumer Secret,Por favor insira o segredo do consumidor da API,
Please enter Account for Change Amount,Por favor insira a Conta para o Montante de Alterações,
Please enter Approving Role or Approving User,Por favor indique Função Aprovadora ou Usuário Aprovador,
Please enter Cost Center,Por favor indique Centro de Custo,
Please enter Delivery Date,Digite Data de Entrega,
Please enter Employee Id of this sales person,Digite o ID de Colaborador deste Vendedor,
Please enter Expense Account,Por favor insira Conta Despesa,
Please enter Item Code to get Batch Number,Por favor insira o Código Item para obter número de lote,
Please enter Item Code to get batch no,Por favor insira o Código Item para obter lotes não,
Please enter Item first,Por favor indique primeiro item,
Please enter Maintaince Details first,Por favor indique Maintaince Detalhes primeiro,
Please enter Planned Qty for Item {0} at row {1},Por favor indique a qtde planejada para o item {0} na linha {1},
Please enter Preferred Contact Email,Por favor indique contato preferencial Email,
Please enter Production Item first,Por favor indique item Produção primeiro,
Please enter Purchase Receipt first,Digite Recibo de compra primeiro,
Please enter Receipt Document,Por favor insira o Documento de Recibo,
Please enter Reference date,Por favor indique data de referência,
Please enter Reqd by Date,Digite Reqd by Date,
Please enter Woocommerce Server URL,Por favor indique o URL do servidor de Woocommerce,
Please enter Write Off Account,Por favor indique a conta de abatimento,
Please enter atleast 1 invoice in the table,Por favor indique pelo menos uma fatura na tabela,
Please enter company first,Por favor insira primeira empresa,
Please enter company name first,Por favor insira o nome da empresa primeiro,
Please enter default currency in Company Master,Por favor indique moeda padrão ino cadastro da empresa,
Please enter message before sending,Por favor introduza a mensagem antes de enviá-,
Please enter parent cost center,Por favor entre o centro de custo pai,
Please enter quantity for Item {0},Por favor indique a quantidade de item {0},
Please enter relieving date.,Por favor indique data da liberação.,
Please enter valid Financial Year Start and End Dates,Por favor indique datas inicial e final válidas do Ano Financeiro,
Please enter valid email address,Por favor insira o endereço de e-mail válido,
Please enter {0} first,Por favor indique {0} primeiro,
Please fill in all the details to generate Assessment Result.,Por favor preencha todos os detalhes para gerar o resultado da avaliação.,
Please identify/create Account (Group) for type - {0},Por favor identifique / crie uma conta (grupo) para o tipo - {0},
Please identify/create Account (Ledger) for type - {0},Por favor identifique / crie uma conta (Ledger) para o tipo - {0},
Please login as another user to register on Marketplace,Por favor faça login como outro usuário para se registrar no Marketplace,
Please make sure you really want to delete all the transactions for this company. Your master data will remain as it is. This action cannot be undone.,Por favor certifique-se de que você realmente quer apagar todas as operações para esta empresa. os seus dados mestre vai permanecer como está. Essa ação não pode ser desfeita.,
Please mention Basic and HRA component in Company,Por favor mencione o componente Básico e HRA na Empresa,
Please mention Round Off Account in Company,Por favor mencione completam Conta in Company,
Please mention Round Off Cost Center in Company,Por favor mencione completam centro de custo na empresa,
Please mention no of visits required,O número de visitas é obrigatório,
Please mention the Lead Name in Lead {0},Por favor mencione o Nome do Lead em {0},
Please pull items from Delivery Note,Por favor puxar itens de entrega Nota,
Please register the SIREN number in the company information file,Registre o número SIREN no arquivo de informações da empresa,
Please remove this Invoice {0} from C-Form {1},Por favor remova esta Invoice {0} a partir de C-Form {1},
Please save the patient first,Salve primeiro o paciente,
Please save the report again to rebuild or update,Por favor salve o relatório novamente para reconstruir ou atualizar,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Por favor, selecione montante atribuído, tipo de fatura e número da fatura em pelo menos uma fileira",
Please select Apply Discount On,Por favor selecione Aplicar Discount On,
Please select BOM against item {0},Selecione BOM em relação ao item {0},
Please select BOM for Item in Row {0},Por favor selecione LDM para o Item na linha {0},
Please select BOM in BOM field for Item {0},Por favor selecione a LDM no campo LDM para o Item {0},
Please select Category first,Por favor selecione a Categoria primeiro,
Please select Charge Type first,Por favor selecione o Tipo de Encargo primeiro,
Please select Company,Por favor selecione Empresa,
Please select Company and Posting Date to getting entries,Por favor selecione Empresa e Data de Lançamento para obter as inscrições,
Please select Company first,Por favor selecione Empresa primeiro,
Please select Completion Date for Completed Asset Maintenance Log,Selecione a Data de conclusão do registro de manutenção de ativos concluídos,
Please select Completion Date for Completed Repair,Selecione a Data de Conclusão para o Reparo Completo,
Please select Course,Por favor selecione Curso,
Please select Drug,Por favor selecione Drug,
Please select Existing Company for creating Chart of Accounts,Por favor selecione empresa já existente para a criação de Plano de Contas,
Please select Healthcare Service,Por favor selecione Serviço de Saúde,
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Por favor, selecione o item em que &quot;é o estoque item&quot; é &quot;Não&quot; e &quot;é o item Vendas&quot; é &quot;Sim&quot; e não há nenhum outro pacote de produtos",
Please select Maintenance Status as Completed or remove Completion Date,Selecione o Status da manutenção como concluído ou remova a Data de conclusão,
Please select Party Type first,Por favor selecione o Tipo de Parceiro primeiro,
Please select Patient,Selecione Paciente,
Please select Patient to get Lab Tests,Selecione Paciente para obter testes laboratoriais,
Please select Posting Date before selecting Party,Por favor selecione data de lançamento antes de selecionar o Parceiro,
Please select Posting Date first,Por favor selecione Data de lançamento primeiro,
Please select Price List,Por favor selecione Lista de Preço,
Please select Program,Selecione o programa,
Please select Qty against item {0},Selecione Qtd. Contra o item {0},
Please select Sample Retention Warehouse in Stock Settings first,Selecione Almacço de retenção de amostra em Configurações de estoque primeiro,
Please select Start Date and End Date for Item {0},Por favor selecione a Data de início e a Data de Término do Item {0},
Please select Student Admission which is mandatory for the paid student applicant,Selecione a Admissão de Estudante que é obrigatória para o estudante pago.,
Please select a BOM,Selecione uma lista de materiais,
Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Selecione um lote para o item {0}. Não é possível encontrar um único lote que preenche este requisito,
Please select a Company,Por favor selecione uma empresa,
Please select a batch,Selecione um lote,
Please select a field to edit from numpad,Selecione um campo para editar a partir do numpad,
Please select a table,Selecione uma tabela,
Please select a valid Date,Por favor selecione uma data válida,
Please select a value for {0} quotation_to {1},Por favor selecione um valor para {0} orçamento_para {1},
Please select a warehouse,Selecione um armazém,
Please select at least one domain.,Selecione pelo menos um domínio.,
Please select correct account,Por favor selecione conta correta,
Please select date,Por favor selecione a data,
Please select item code,Por favor selecione o código do item,
Please select month and year,Selecione mês e ano,
Please select prefix first,Por favor selecione o prefixo primeiro,
Please select the Company,Selecione a Empresa,
Please select the Multiple Tier Program type for more than one collection rules.,Por favor selecione o tipo de Programa de Múltiplas Classes para mais de uma regra de coleta.,
Please select the assessment group other than 'All Assessment Groups',Selecione o grupo de avaliação diferente de &quot;Todos os grupos de avaliação&quot;,
Please select the document type first,Por favor selecione o tipo de documento primeiro,
Please select weekly off day,Por favor selecione dia de folga semanal,
Please select {0},Por favor selecione {0},
Please select {0} first,Por favor selecione {0} primeiro,
Please set 'Apply Additional Discount On',"Por Favor, Defina &quot;aplicar Desconto Adicional Em ';",
Please set 'Asset Depreciation Cost Center' in Company {0},"Por Favor, Defina &quot;de Ativos Centro de Custo Depreciação ';in Company {0}",
Please set 'Gain/Loss Account on Asset Disposal' in Company {0},"Por Favor, Defina a ""conta de Ganhos/perdas na Eliminação de Ativos"" na Empresa {0}",
Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Por Favor Defina a Conta no Depósito {0} Ou a Conta de Inventário Padrão na Empresa {1},
Please set B2C Limit in GST Settings.,Defina B2c Limit Em Gst Settings.,
Please set Company,Defina Company,
Please set Company filter blank if Group By is 'Company',Defina o filtro de empresa em branco se Group By for ';Company';,
Please set Default Payroll Payable Account in Company {0},Por Favor Definir Payroll Conta a Pagar Padrão In Company {0},
Please set Depreciation related Accounts in Asset Category {0} or Company {1},Por favor defina as contas relacionadas com depreciação de ativos em Categoria {0} ou Empresa {1},
Please set Email Address,Por Favor Defina o Endereço de Email,
Please set GST Accounts in GST Settings,Defina as Contas GST Em Configurações GST,
Please set Hotel Room Rate on {},Defina a Tarifa do Quarto do Hotel Em {},
Please set Number of Depreciations Booked,Por Favor Defina o Número de Depreciações Marcado,
Please set Unrealized Exchange Gain/Loss Account in Company {0},Por Favor Defina a Conta de Ganho / Perda de Moeda Não Realizada na Empresa {0},
Please set User ID field in an Employee record to set Employee Role,Por favor defina o campo ID do usuário em um registro de empregado para definir Função Funcionário,
Please set a default Holiday List for Employee {0} or Company {1},Por favor defina uma Lista de Feriados padrão para o(a) Colaboador(a) {0} ou para a Empresa {1},
Please set account in Warehouse {0},Defina conta no Warehouse {0},
Please set an active menu for Restaurant {0},Defina um menu ativo para o Restaurante {0},
Please set associated account in Tax Withholding Category {0} against Company {1},Por favor defina a conta associada na Categoria Retenção Fiscal {0} contra a Empresa {1},
Please set at least one row in the Taxes and Charges Table,Por favor defina pelo menos uma linha na Tabela de Impostos e Taxas,
Please set default Cash or Bank account in Mode of Payment {0},Defina Caixa padrão ou conta bancária no Modo de pagamento {0},
Please set default account in Salary Component {0},Por favor defina conta padrão no Componente Salarial {0},
Please set default customer in Restaurant Settings,Defina o cliente padrão em Configurações do restaurante,
Please set default {0} in Company {1},Por favor configure um(a) {0} padrão na empresa {1},
Please set filter based on Item or Warehouse,Por favor defina o filtro com base em artigo ou Armazém,
Please set leave policy for employee {0} in Employee / Grade record,Por favor defina a política de licença para o funcionário {0} no registro de Empregado / Nota,
Please set recurring after saving,Por favor defina recorrentes depois de salvar,
Please set the Customer Address,Por Favor Defina o Endereço do Cliente,
Please set the Default Cost Center in {0} company.,Defina o Centro de custo padrão na {0} empresa.,
Please set the Email ID for the Student to send the Payment Request,Defina o email para que o Aluno envie a Solicitação de Pagamento,
Please set the Item Code first,Defina primeiro o código do item,
Please set the Payment Schedule,Por Favor Defina o Cronograma de Pagamento,
Please set the series to be used.,Por favor defina a série a ser usada.,
Please set {0} for address {1},Por favor defina {0} para o endereço {1},
Please setup Students under Student Groups,Por favor configure alunos sob grupos de estudantes,
Please specify Company,Por favor especifique Empresa,
Please specify Company to proceed,Por favor especifique a Empresa para prosseguir,
Please specify a valid 'From Case No.',"Por favor, especifique um válido ';De Caso No.';",
Please specify a valid Row ID for row {0} in table {1},Por favor especifique um ID válido para Row linha {0} na tabela {1},
Please specify at least one attribute in the Attributes table,Especifique pelo menos um atributo na tabela de atributos,
Please specify currency in Company,Por favor especifique moeda in Company,
Please specify either Quantity or Valuation Rate or both,Por favor especifique a quantidade ou Taxa de Valorização ou ambos,
Please specify from/to range,Por favor especifique de / para variar,
Please supply the specified items at the best possible rates,Por favor informe os melhores valores e condições possíveis para os itens especificados,
Please wait 3 days before resending the reminder.,Aguarde 3 dias antes de reenviar o lembrete.,
Point of Sale,Ponto de Vendas,
Point-of-Sale,Ponto de Vendas,
Point-of-Sale Profile,Perfil do Ponto de Vendas,
Portal,Portal,
Portal Settings,Configurações do Portal,
Possible Supplier,Possível Fornecedor,
Postal Expenses,Despesas Postais,
Posting Date,Data da Postagem,
Posting Date cannot be future date,A Data de Postagem não pode ser uma data futura,
Posting Time,Horário da Postagem,
Posting date and posting time is mandatory,Data e horário da postagem são obrigatórios,
Posting timestamp must be after {0},Postando timestamp deve ser posterior a {0},
Potential opportunities for selling.,Oportunidades potenciais para a venda.,
Practitioner Schedule,Agenda do Praticante,
Pre Sales,Pré Venda,
Preference,Preferência,
Prescribed Procedures,Procedimentos Prescritos,
Prescription,Prescrição,
Prescription Dosage,Dosagem de Prescrição,
Prescription Duration,Duração da Prescrição,
Prescriptions,Prescrições,
Prev,Anterior,
Preview,Pré-visualização,
Previous Financial Year is not closed,O Ano Financeiro Anterior não está fechado,
Price,Preço,
Price List,Lista de Preços,
Price List Currency not selected,Lista de Preço Moeda não selecionado,
Price List Rate,Preço na Lista de Preços,
Price List master.,Cadastro da Lista de Preços.,
Price List must be applicable for Buying or Selling,Lista de Preço deve ser aplicável para comprar ou vender,
Price List {0} is disabled or does not exist,Lista de Preços {0} está desativada ou não existe,
Price or product discount slabs are required,As lajes de desconto de preço ou produto são necessárias,
Pricing,Precificação,
Pricing Rule,Regra de Preços,
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Regra de Preços é o primeiro selecionado com base em ""Aplicar On 'campo, que pode ser Item, item de grupo ou Marca.",
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Regra de preços é feita para substituir Lista de Preços / define percentual de desconto, com base em alguns critérios.",
Pricing Rule {0} is updated,A regra de precificação {0} é atualizada,
Pricing Rules are further filtered based on quantity.,As regras de tarifação são ainda filtrados com base na quantidade.,
Primary Address Details,Detalhes Principais do Endereço,
Primary Contact Details,Detalhes Principais de Contato,
Print Format,Formato de Impressão,
Print IRS 1099 Forms,Imprimir Formulários do Irs 1099,
Print Report Card,Imprimir Boletim,
Print Settings,Configurações de Impressão,
Print and Stationery,Impressão e Artigos de Papelaria,
Print settings updated in respective print format,As definições de impressão estão atualizadas no respectivo formato de impressão,
Print taxes with zero amount,Imprima impostos com montante zero,
Printing and Branding,Impressão e Branding,
Private Equity,Patrimônio Líquido,
Procedure,Procedimento,
Process Day Book Data,Dados do Livro do Dia de Processo,
Process Master Data,Dados Mestre do Processo,
Processing Chart of Accounts and Parties,Processando Plano de Contas e Partes,
Processing Items and UOMs,Processando Itens e UDMs,
Processing Party Addresses,Processando Endereços do Parceiro,
Processing Vouchers,Processando Vouchers,
Procurement,Cotação,
Produced Qty,Qtd Produzido,
Product,Produtos,
Product Bundle,Pacote de Produtos,
Product Search,Pesquisa de Produto,
Production,Produção,
Production Item,Bem de Produção,
Products,Produtos,
Profit and Loss,Lucro e Perdas,
Profit for the year,Lucros para o ano,
Program,Programa,
Program in the Fee Structure and Student Group {0} are different.,O programa na estrutura de tarifas e no grupo de alunos {0} são diferentes.,
Program {0} does not exist.,O programa {0} não existe.,
Program: ,Programa:,
Progress % for a task cannot be more than 100.,A % de Progresso para uma tarefa não pode ser superior a 100.,
Project Collaboration Invitation,Convite Para Colaboração Em Projeto,
Project Id,ID Projeto,
Project Manager,Gerente de Projetos,
Project Name,Nome do Projeto,
Project Start Date,Data de Início do Projeto,
Project Status,Status do Projeto,
Project Summary for {0},Resumo do Projeto Para {0},
Project Update.,Atualização do Projeto.,
Project Value,Valor do Projeto,
Project activity / task.,Atividade / tarefa do projeto.,
Project master.,Cadastro de Projeto.,
Project-wise data is not available for Quotation,Dados do baseados em projeto não estão disponíveis para Orçamentos,
Projected,Projetado,
Projected Qty,Qtde Projetada,
Projected Quantity Formula,Fórmula de Quantidade Projetada,
Projects,Projetos,
Proposal Writing,Proposta Redação,
Proposal/Price Quote,Proposta / Cotação de Preço,
Prospecting,Prospecção,
Provisional Profit / Loss (Credit),Provisão Lucro / Prejuízo (crédito),
Publications,Publicações,
Publish Items on Website,Publicar Itens no Site,
Published,Publicado,
Publishing,Publishing,
Purchase,Compras,
Purchase Amount,Valor de Compra,
Purchase Date,Data da Compra,
Purchase Invoice,Fatura de Compra,
Purchase Invoice {0} is already submitted,A Fatura de Compra {0} já foi enviada,
Purchase Manager,Gerente de Compras,
Purchase Master Manager,Gerente de Cadastros de Compras,
Purchase Order,Pedido de Compra,
Purchase Order Amount,Valor do Pedido de Compra,
Purchase Order Amount(Company Currency),Valor do Pedido de Compra (moeda da Empresa),
Purchase Order Date,Data do Pedido,
Purchase Order Items not received on time,Ordem de compra Itens não recebidos a tempo,
Purchase Order number required for Item {0},Número do Pedido de Compra necessário para o item {0},
Purchase Order to Payment,Pedido de Compra Para Pagamento,
Purchase Order {0} is not submitted,Pedido de Compra {0} não é enviado,
Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,As ordens de compra não são permitidas para {0} devido a um ponto de avaliação de {1}.,
Purchase Orders given to Suppliers.,Pedidos de Compra dados a fornecedores.,
Purchase Price List,Preço de Compra Lista,
Purchase Receipt,Recibo de Compra,
Purchase Receipt {0} is not submitted,Recibo de compra {0} não é enviado,
Purchase Tax Template,Modelo de Impostos Sobre a Compra,
Purchase User,Usuário de Compra,
Purchase orders help you plan and follow up on your purchases,As ordens de compra ajudá-lo a planejar e acompanhar suas compras,
Purchasing,Requisições,
Purpose must be one of {0},Objetivo deve ser um dos {0},
Qty,Qtd,
Qty To Manufacture,Qtde Para Fabricar,
Qty Total,Qtd Total,
Qty for {0},Qtd Para {0},
Qualification,Qualificação,
Quality,Qualidade,
Quality Action,Ação de Qualidade,
Quality Goal.,Objetivo de Qualidade.,
Quality Inspection,Inspeção de Qualidade,
Quality Inspection: {0} is not submitted for the item: {1} in row {2},Inspeção de qualidade: {0} não é enviado para o item: {1} na linha {2},
Quality Management,Gestão da Qualidade,
Quality Meeting,Encontro de Qualidade,
Quality Procedure,Procedimento de Qualidade,
Quality Procedure.,Procedimento de Qualidade,
Quality Review,Revisão de Qualidade,
Quantity,Quantidade,
Quantity for Item {0} must be less than {1},Quantidade de item {0} deve ser inferior a {1},
Quantity in row {0} ({1}) must be same as manufactured quantity {2},A quantidade na linha {0} ( {1} ) deve ser a mesma que a quantidade fabricada {2},
Quantity must be less than or equal to {0},A quantidade deve ser inferior ou igual a {0},
Quantity must not be more than {0},Quantidade não deve ser mais do que {0},
Quantity required for Item {0} in row {1},Quantidade necessária para item {0} na linha {1},
Quantity should be greater than 0,Quantidade deve ser maior do que 0,
Quantity to Make,Quantidade a Fazer,
Quantity to Manufacture must be greater than 0.,Quantidade de Fabricação deve ser maior que 0.,
Quantity to Produce,Quantidade Para Produzir,
Quantity to Produce can not be less than Zero,Quantidade para produzir não pode ser menor que zero,
Query Options,Opções de Consulta,
Queued for replacing the BOM. It may take a few minutes.,Em fila para substituir a lista de materiais. Pode demorar alguns minutos.,
Queued for updating latest price in all Bill of Materials. It may take a few minutes.,Em fila para atualizar o preço mais recente em todas as Marcas de materiais. Pode demorar alguns minutos.,
Quick Journal Entry,Lançamento no Livro Diário Rápido,
Quot Count,Contagem de Orçamentos,
Quot/Lead %,Orçamento/Lead %,
Quotation,Orçamento,
Quotation {0} is cancelled,O Orçamento {0} está cancelado,
Quotation {0} not of type {1},O Orçamento {0} não é do tipo {1},
Quotations,Orçamentos,
"Quotations are proposals, bids you have sent to your customers","Citações são propostas, as propostas que enviou aos seus clientes",
Quotations received from Suppliers.,Orçamentos recebidos de fornecedores.,
Quotations: ,Orçamentos:,
Quotes to Leads or Customers.,Cotações Para Leads ou Clientes.,
RFQs are not allowed for {0} due to a scorecard standing of {1},RFQs não são permitidos para {0} devido a um ponto de avaliação de {1},
Range,Alcance,
Rate,Taxa,
Rate:,Taxa:,
Rating,Rating,
Raw Material,Matéria-prima,
Raw Materials,Matérias-primas,
Raw Materials cannot be blank.,Matérias-primas não pode ficar em branco.,
Re-open,Abrir Novamente,
Read blog,Leia o blog,
Read the ERPNext Manual,Leia o Manual de Erpnext,
Reading Uploaded File,Lendo Arquivo Carregado,
Real Estate,Imóveis,
Reason For Putting On Hold,Razão Para Colocar Em Espera,
Reason for Hold,Razão Para Segurar,
Reason for hold: ,Razão da espera:,
Receipt,Recibo,
Receipt document must be submitted,O Documento de Recibo precisa ser enviado,
Receivable,A Receber,
Receivable Account,Contas a Receber,
Received,Recebido,
Received On,Recebeu Em,
Received Quantity,Quantidade Recebida,
Received Stock Entries,Entradas de Estoque Recebidas,
Receiver List is empty. Please create Receiver List,Lista Receiver está vazio. Por favor crie Lista Receiver,
Recipients,Destinatários,
Reconcile,Conciliar,
"Record of all communications of type email, phone, chat, visit, etc.","Registo de todas as comunicações do tipo de email, telefone, chat, visita, etc.",
Records,Registos,
Redirect URL,Redirecionar URL,
Ref,Referência,
Ref Date,Ref Data,
Reference,Referência,
Reference #{0} dated {1},Referência #{0} datado de {1},
Reference Date,Data de Referência,
Reference Doctype must be one of {0},O Tipo de Documento de Referência deve ser um de {0},
Reference Document,Documento de Referência,
Reference Document Type,Referência Tipo de Documento,
Reference No & Reference Date is required for {0},Número de referência e Referência Data é necessário para {0},
Reference No and Reference Date is mandatory for Bank transaction,É obrigatório colocar o Nº de Referência e a Data de Referência para as transações bancárias,
Reference No is mandatory if you entered Reference Date,Referência Não é obrigatório se você entrou Data de Referência,
Reference No.,Referência No.,
Reference Number,Número de Referência,
Reference Owner,Proprietário de Referência,
Reference Type,Tipo de Referência,
"Reference: {0}, Item Code: {1} and Customer: {2}","Referência: {0}, Código do Item: {1} e Cliente: {2}",
References,Referências,
Refresh Token,Token de Atualização,
Region,Região,
Register,Registo,
Rejected,Rejeitado,
Related,Relacionados,
Relation with Guardian1,Relação com Guardian1,
Relation with Guardian2,Relação com Guardian2,
Release Date,Data de Lançamento,
Reload Linked Analysis,Análise Recarregada,
Remaining,Remanescente,
Remaining Balance,Saldo Remanescente,
Remarks,Observações,
Reminder to update GSTIN Sent,Lembrete para atualizar GSTIN Sent,
Remove item if charges is not applicable to that item,Remover item se as cargas não é aplicável a esse elemento,
Removed items with no change in quantity or value.,Itens removidos sem nenhuma alteração na quantidade ou valor.,
Reopen,Reabrir,
Reorder Level,Estoque Mínimo,
Reorder Qty,Qtde Para Reposição,
Repeat Customer Revenue,Receita Clientes Repetidos,
Repeat Customers,Clientes Repetidos,
Replace BOM and update latest price in all BOMs,Substitua a LDM e atualize o preço mais recente em todas as LDMs,
Replied,Respondido,
Report,Relatório,
Report Builder,Criador de Relatório,
Report Type,Tipo de Relatório,
Report Type is mandatory,Tipo de Relatório é obrigatório,
Reports,Relatórios,
Reqd By Date,Entrega Esperada Em,
Reqd Qty,Reqd Qty,
Request for Quotation,Solicitação de Orçamento,
Request for Quotations,Solicitação de Orçamento,
Request for Raw Materials,Solicitação de Matérias Primas,
Request for purchase.,Solicitação de Compra.,
Request for quotation.,Solicitação de orçamento.,
Requested Qty,Qtde Solicitada,
"Requested Qty: Quantity requested for purchase, but not ordered.","Aangevraagd Aantal : Aantal op aankoop, maar niet besteld.",
Requesting Site,Solicitando Site,
Requesting payment against {0} {1} for amount {2},Esta é uma solicitação de pagamento relacionada à {0} {1} no valor de {2},
Requestor,Solicitador,
Required On,Obrigatório On,
Required Qty,Qtde Requerida,
Required Quantity,Quantidade Requerida,
Reschedule,Reprogramar,
Research,Pesquisa,
Research & Development,Pesquisa e Desenvolvimento,
Researcher,Pesquisador,
Resend Payment Email,Reenviar Email de Pagamento,
Reserve Warehouse,Armazém de Reserva,
Reserved Qty,Qtde Reservada,
Reserved Qty for Production,Qtde Reservada Para Produção,
Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Quantidade reservada para produção: quantidade de matérias-primas para fabricar itens de produção.,
"Reserved Qty: Quantity ordered for sale, but not delivered.","Gereserveerd Aantal : Aantal besteld te koop , maar niet geleverd.",
Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,Armazém reservado é obrigatório para o item {0} em matérias-primas fornecidas,
Reserved for manufacturing,Reservado para fabricação,
Reserved for sale,Reservado para venda,
Reserved for sub contracting,Reservado para subcontratação,
Resistant,Resistente,
Resolve error and upload again.,Resolva o erro e faça o upload novamente.,
Rest Of The World,Resto do Mundo,
Restart Subscription,Reinicie a Assinatura,
Restaurant,Restaurante,
Result Date,Data do Resultado,
Result already Submitted,Resultado já enviado,
Resume,Currículo,
Retail,Varejo,
Retail & Wholesale,Varejo e Atacado,
Retail Operations,Operações de Distribuição,
Retained Earnings,Lucros Acumulados,
Retention Stock Entry,Entrada de Estoque de Retenção,
Retention Stock Entry already created or Sample Quantity not provided,Entrada de estoque de retenção já criada ou Quantidade de amostra não fornecida,
Return,Devolução,
Return / Credit Note,Devolução / Nota de Crédito,
Return / Debit Note,Devolução / Nota de Débito,
Returns,Devoluções,
Reverse Journal Entry,Entrada de Diário Reversa,
Review Invitation Sent,Revisão do Convite Enviado,
Review and Action,Revisão e Ação,
Rooms Booked,Quartos Reservados,
Root Company,Empresa Raiz,
Root Type,Tipo de Raiz,
Root Type is mandatory,Tipo de Raiz é obrigatório,
Root cannot be edited.,Root não pode ser editado.,
Root cannot have a parent cost center,Root não pode ter um centro de custos pai,
Round Off,Arredondamento,
Rounded Total,Total Arredondado,
Route,Rota,
Row # {0}: ,Linha # {0}:,
Row # {0}: Batch No must be same as {1} {2},Linha # {0}: Nº do Lote deve ser o mesmo que {1} {2},
Row # {0}: Cannot return more than {1} for Item {2},Linha # {0}: Não é possível retornar mais de {1} para o item {2},
Row # {0}: Rate cannot be greater than the rate used in {1} {2},Linha # {0}: a taxa não pode ser maior que a taxa usada em {1} {2},
Row # {0}: Serial No is mandatory,Linha # {0}: o número de série é obrigatório,
Row # {0}: Serial No {1} does not match with {2} {3},Linha # {0}: Número de ordem {1} não coincide com {2} {3},
Row #{0} (Payment Table): Amount must be negative,Linha # {0} (Tabela de pagamento): o valor deve ser negativo,
Row #{0} (Payment Table): Amount must be positive,Linha # {0} (Tabela de pagamento): o valor deve ser positivo,
Row #{0}: Account {1} does not belong to company {2},Linha # {0}: Conta {1} não pertence à empresa {2},
Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Linha # {0}: Allocated Amount não pode ser maior do que o montante pendente.,
"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Linha # {0}: Ativo {1} não pode ser enviado, já é {2}",
Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Linha # {0}: Não é possível definir Taxa se o valor for maior do que o valor faturado do Item {1}.,
Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Linha #{0}: a Data de Liquidação {1} não pode ser anterior à Data do Cheque {2},
Row #{0}: Duplicate entry in References {1} {2},Linha # {0}: entrada duplicada em referências {1} {2},
Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Linha # {0}: a data de entrega prevista não pode ser anterior à data da ordem de compra,
Row #{0}: Item added,Linha # {0}: Item adicionado,
Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Linha # {0}: o Lançamento Contabilístico {1} não tem uma conta {2} ou está relacionado a outro voucher,
Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Linha # {0}: Não é permitido mudar de fornecedor quando o Pedido de Compra já existe,
Row #{0}: Please set reorder quantity,Linha # {0}: Por favor defina a quantidade de reposição,
Row #{0}: Please specify Serial No for Item {1},Linha # {0}: Favor especificar Sem Serial para item {1},
Row #{0}: Qty increased by 1,Linha # {0}: Quantidade aumentada em 1,
Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Linha # {0}: o Valor deve ser o mesmo da {1}: {2} ({3} / {4}),
Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Linha # {0}: o tipo de documento de referência deve ser um pedido de despesa ou entrada de diário,
"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Linha #{0}: o Tipo de Documento de Referência deve ser um Pedido de Compra, uma Nota Fiscal de Compra ou um Lançamento Contábil",
Row #{0}: Rejected Qty can not be entered in Purchase Return,Linha # {0}: Qtde rejeitada não pode ser lançada na devolução da compra,
Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Linha # {0}: Armazém Rejeitado é obrigatório para o item rejeitado {1},
Row #{0}: Reqd by Date cannot be before Transaction Date,Linha # {0}: Reqd por data não pode ser antes da data da transação,
Row #{0}: Set Supplier for item {1},Linha # {0}: Defina o fornecedor para o item {1},
Row #{0}: Status must be {1} for Invoice Discounting {2},Linha # {0}: o status deve ser {1} para desconto na fatura {2},
"Row #{0}: The batch {1} has only {2} qty. Please select another batch which has {3} qty available or split the row into multiple rows, to deliver/issue from multiple batches","Linha # {0}: o lote {1} tem apenas {2} qty. Selecione outro lote com {3} qty disponível ou dividido a linha em várias linhas, para entregar / emitir de vários lotes",
Row #{0}: Timings conflicts with row {1},Linha # {0}: conflitos Timings com linha {1},
Row #{0}: {1} can not be negative for item {2},Linha # {0}: {1} não pode ser negativo para o item {2},
Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Linha {0}: Valor não pode ser superior ao valor pendente relacionado ao Reembolso de Despesas {1}. o valor pendente é {2},
Row {0} : Operation is required against the raw material item {1},Linha {0}: a operação é necessária em relação ao item de matéria-prima {1},
Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Linha {0} # Item {1} não pode ser transferido mais do que {2} contra a ordem de compra {3},
Row {0}: Activity Type is mandatory.,Linha {0}: É obrigatório colocar o Tipo de Atividade.,
Row {0}: Advance against Customer must be credit,Linha {0}: Avanço contra o Cliente deve estar de crédito,
Row {0}: Advance against Supplier must be debit,Linha {0}: Adiantamento relacionado com o fornecedor deve ser um débito,
Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Linha {0}: o montante atribuído {1} deve ser menor ou igual ao montante de Registo de Pagamento {2},
Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Linha {0}: Valor alocado {1} deve ser menor ou igual ao saldo devedor {2} da nota,
Row {0}: An Reorder entry already exists for this warehouse {1},Linha {0}: Uma entrada de reposição já existe para este armazém {1},
Row {0}: Bill of Materials not found for the Item {1},Linha {0}: Lista de MAteriais não encontrada para o item {1},
Row {0}: Conversion Factor is mandatory,Linha {0}: Fator de Conversão é obrigatório,
Row {0}: Cost center is required for an item {1},Linha {0}: o centro de custo é necessário para um item {1},
Row {0}: Credit entry can not be linked with a {1},Linha {0}: Lançamento de crédito não pode ser relacionado a uma {1},
Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Linha {0}: Moeda da LDM # {1} deve ser igual à moeda selecionada {2},
Row {0}: Debit entry can not be linked with a {1},Linha {0}: Lançamento de débito não pode ser relacionado a uma {1},
Row {0}: Depreciation Start Date is required,Linha {0}: Data de Início da Depreciação é obrigatória,
Row {0}: Enter location for the asset item {1},Linha {0}: inserir local para o item do ativo {1},
Row {0}: Exchange Rate is mandatory,Linha {0}: Taxa de Câmbio é obrigatória,
Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Linha {0}: o valor esperado após a vida útil deve ser menor que o valor da compra bruta,
Row {0}: From Time and To Time is mandatory.,Linha {0}: É obrigatório colocar a Periodicidade.,
Row {0}: From Time and To Time of {1} is overlapping with {2},Linha {0}: a Periodicidade de {1} está a sobrepor-se com {2},
Row {0}: From time must be less than to time,Linha {0}: do tempo deve ser menor que a hora,
Row {0}: Hours value must be greater than zero.,Linha {0}: Horas deve ser um valor maior que zero,
Row {0}: Invalid reference {1},Linha {0}: referência inválida {1},
Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Linha {0}: Parceiro / Conta não coincidem com {1} / {2} em {3} {4},
Row {0}: Party Type and Party is required for Receivable / Payable account {1},Linha {0}: Tipo de Parceiro e Parceiro são necessários para receber / pagar contas {1},
Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Linha {0}: o pagamento relacionado a Pedidos de Compra/Venda deve ser sempre marcado como adiantamento,
Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,Linha {0}: Por favor selecione 'É Adiantamento' se este é um lançamento de adiantamento relacionado à conta {1}.,
Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Linha {0}: Por Favor Defina o Motivo da Isenção de Impostos Em Impostos e Taxas de Vendas,
Row {0}: Please set the Mode of Payment in Payment Schedule,Linha {0}: Por Favor Defina o Modo de Pagamento na Programação de Pagamento,
Row {0}: Please set the correct code on Mode of Payment {1},Linha {0}: Por favor defina o código correto em Modo de pagamento {1},
Row {0}: Qty is mandatory,Linha {0}: Qtde é obrigatória,
Row {0}: Quality Inspection rejected for item {1},Linha {0}: inspeção de qualidade rejeitada para o item {1},
Row {0}: UOM Conversion Factor is mandatory,Linha {0}: Fator de Conversão da Unidade de Medida é obrigatório,
Row {0}: select the workstation against the operation {1},Linha {0}: selecione a estação de trabalho contra a operação {1},
Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Linha {0}: {1} Números de série necessários para o Item {2}. Você forneceu {3}.,
Row {0}: {1} must be greater than 0,Linha {0}: {1} deve ser maior que 0,
Row {0}: {1} {2} does not match with {3},Linha {0}: {1} {2} não corresponde com {3},
Row {0}:Start Date must be before End Date,Linha {0}: Data de início deve ser anterior a data de término,
Rows with duplicate due dates in other rows were found: {0},Linhas com datas de vencimento duplicadas em outras linhas foram encontradas: {0},
Rules for adding shipping costs.,Regras para adicionar os custos de envio.,
Rules for applying pricing and discount.,Regras para aplicação de preços e de desconto.,
S.O. No.,Número da Ordem de Venda,
SGST Amount,Quantidade de SGST,
SO Qty,Qtde na OV,
Safety Stock,Estoque de Segurança,
Salary,Salário,
Salary Slip submitted for period from {0} to {1},Salário Slip enviado para o período de {0} a {1},
Salary Structure must be submitted before submission of Tax Ememption Declaration,Estrutura Salarial deve ser submetida antes da apresentação da Declaração de Emissão Fiscal,
Sales,Vendas,
Sales Account,Conta de Vendas,
Sales Expenses,Despesas Com Vendas,
Sales Funnel,Funil de Vendas,
Sales Invoice,Fatura de Venda,
Sales Invoice {0} has already been submitted,A Fatura de Venda {0} já foi enviada,
Sales Invoice {0} must be cancelled before cancelling this Sales Order,A Fatura de Venda {0} deve ser cancelada antes de cancelar este Pedido de Venda,
Sales Manager,Gerente de Vendas,
Sales Master Manager,Gerente de Cadastros de Vendas,
Sales Order,Pedido de Venda,
Sales Order Item,Item do Pedido de Venda,
Sales Order required for Item {0},Pedido de Venda necessário para o item {0},
Sales Order to Payment,Pedido de Venda Para Pagamento,
Sales Order {0} is not submitted,Pedido de Venda {0} não foi enviado,
Sales Order {0} is not valid,Pedido de Venda {0} não é válido,
Sales Order {0} is {1},Pedido de Venda {0} É {1},
Sales Orders,Pedidos de Venda,
Sales Partner,Parceiro de Vendas,
Sales Pipeline,Pipeline de Vendas,
Sales Price List,Lista de Preço de Venda,
Sales Return,Devolução de Vendas,
Sales Summary,Resumo de Vendas,
Sales Tax Template,Modelo de Impostos Sobre Vendas,
Sales Team,Equipe de Vendas,
Sales User,Usuário de Vendas,
Sales and Returns,Vendas e Devoluções,
Sales campaigns.,Campanhas de vendas.,
Sales orders are not available for production,Pedidos de vendas não estão disponíveis para produção,
Salutation,Saudação,
Same Company is entered more than once,Mesma empresa está inscrita mais de uma vez,
Same item cannot be entered multiple times.,Mesmo item não pode ser inserido várias vezes.,
Same supplier has been entered multiple times,Mesmo fornecedor foi inserido várias vezes,
Sample,Amostra,
Sample Collection,Coleção de Amostras,
Sample quantity {0} cannot be more than received quantity {1},A quantidade de amostra {0} não pode ser superior à quantidade recebida {1},
Sanctioned,Liberada,
Sand,Areia,
Saturday,Sábado,
Saved,Salvo,
Saving {0},Salvando {0},
Scan Barcode,Scan Barcode,
Schedule,Agendar,
Schedule Admission,Agendar Admissão,
Schedule Course,Calendário de Cursos,
Schedule Date,Data Agendada,
Schedule Discharge,Descarga Horária,
Scheduled,Agendado,
Scheduled Upto,Programado Até,
"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Programações para sobreposições {0}, você deseja prosseguir após ignorar os slots sobrepostos?",
Score cannot be greater than Maximum Score,Pontuação não pode ser maior do que pontuação máxima,
Scorecards,Scorecards,
Scrapped,Sucateada,
Search,Pesquisar,
Search Results,Procurar Resultados,
Search Sub Assemblies,Pesquisa Subconjuntos,
"Search by item code, serial number, batch no or barcode","Pesquisa por código de item, número de série, número de lote ou código de barras",
"Seasonality for setting budgets, targets etc.","Sazonalidade para definição de orçamentos, metas etc.",
Secret Key,Chave Secreta,
Secretary,Secretário,
Section Code,Código da Seção,
Secured Loans,Empréstimos Garantidos,
Securities & Commodity Exchanges,Valores Mobiliários e Bolsas de Mercadorias,
Securities and Deposits,Títulos e Depósitos,
See All Articles,Veja Todos os Artigos,
See all open tickets,Veja todos os ingressos abertos,
See past orders,Veja pedidos anteriores,
See past quotations,Veja citações passadas,
Select,Selecionar,
Select Alternate Item,Selecionar Item Alternativo,
Select Attribute Values,Selecione os Valores do Atributo,
Select BOM,Selecionar LDM,
Select BOM and Qty for Production,Selecionar LDM e Quantidade Para Produção,
"Select BOM, Qty and For Warehouse","Selecione Bom, Quantidade e Para Armazém",
Select Batch,Selecione Lote,
Select Batch Numbers,Selecione Números de Lote,
Select Brand...,Selecione a Marca...,
Select Company,Selecione Empresa,
Select Company...,Selecione a Empresa...,
Select Customer,Selecione o Cliente,
Select Days,Selecione Dias,
Select Default Supplier,Selecione o Fornecedor Padrão,
Select DocType,Selecione DocType,
Select Fiscal Year...,Selecione o Ano Fiscal...,
Select Item (optional),Selecione Item (opcional),
Select Items based on Delivery Date,Selecione itens com base na data de entrega,
Select Items to Manufacture,Selecionar Itens Para Produzir,
Select Loyalty Program,Selecione o Programa de Fidelidade,
Select Patient,Selecione Paciente,
Select Possible Supplier,Selecione Possível Fornecedor,
Select Quantity,Selecionar Quantidade,
Select Serial Numbers,Selecione Números de Série,
Select Target Warehouse,Selecionar Depósito de Destino,
Select Warehouse...,Selecione Armazém...,
Select an account to print in account currency,Selecione uma conta para imprimir na moeda da conta,
Select at least one value from each of the attributes.,Selecione pelo menos um valor de cada um dos atributos.,
Select change amount account,Selecione a conta de troco,
Select company first,Selecione a empresa primeiro,
Select students manually for the Activity based Group,Selecionar os alunos manualmente para o grupo baseado em atividade,
Select the customer or supplier.,Selecione o cliente ou fornecedor.,
Select the nature of your business.,Selecione a natureza do seu negócio.,
Select the program first,Selecione primeiro o programa,
Select to add Serial Number.,Selecione Para Adicionar o Número de Série.,
Select your Domains,Selecione seus domínios,
Selected Price List should have buying and selling fields checked.,A Lista de Preços Selecionada deve ter campos de compra e venda verificados.,
Sell,Vender,
Selling,Vendas,
Selling Amount,Valor de Venda,
Selling Price List,Lista de Preços de Venda,
Selling Rate,Taxa de Vendas,
"Selling must be checked, if Applicable For is selected as {0}","Venda deve ser verificada, se for caso disso for selecionado como {0}",
Send Grant Review Email,Enviar o E-mail de Revisão de Concessão,
Send Now,Enviar Agora,
Send SMS,Envie SMS,
Send mass SMS to your contacts,Enviar SMS em massa para seus contatos,
Sensitivity,Sensibilidade,
Sent,Enviado,
Serial No and Batch,Número de Série e Lote,
Serial No is mandatory for Item {0},Número de séries é obrigatório para item {0},
Serial No {0} does not belong to Batch {1},O número de série {0} não pertence ao Lote {1},
Serial No {0} does not belong to Delivery Note {1},Serial Não {0} não pertence a entrega Nota {1},
Serial No {0} does not belong to Item {1},Serial Não {0} não pertence ao item {1},
Serial No {0} does not belong to Warehouse {1},Serial Não {0} não pertence ao Armazém {1},
Serial No {0} does not belong to any Warehouse,O Nº de Série {0} não pertence a nenhum Armazén,
Serial No {0} does not exist,Nº de Série {0} não existe,
Serial No {0} has already been received,Nº de Série {0} já foi recebido,
Serial No {0} is under maintenance contract upto {1},Nº de Série {0} está sob contrato de manutenção até {1},
Serial No {0} is under warranty upto {1},Nº de Série {0} está na garantia até {1},
Serial No {0} not found,Serial no {0} não foi encontrado,
Serial No {0} not in stock,Nº de Série {0} esgotado,
Serial No {0} quantity {1} cannot be a fraction,Serial Não {0} {1} quantidade não pode ser uma fração,
Serial Nos Required for Serialized Item {0},Nº de Série Obrigatório Para o Item Serializado {0},
Serial Number: {0} is already referenced in Sales Invoice: {1},Número de série: {0} já está referenciado na fatura de vendas: {1},
Serial Numbers,Números de Série,
Serial Numbers in row {0} does not match with Delivery Note,Os números de série na linha {0} não correspondem à nota de entrega,
Serial no {0} has been already returned,O número de série {0} já foi retornado,
Serial number {0} entered more than once,Número de série {0} entrou mais de uma vez,
Serialized Inventory,Inventário Por Nº de Série,
Series Updated,Série Atualizada,
Series Updated Successfully,Série Atualizada Com Sucesso,
Series is mandatory,Série é obrigatório,
Series {0} already used in {1},Série {0} já usado em {1},
Service,Serviço,
Service Level Agreement,Acordo de Nível de Serviço,
Service Level Agreement.,Acordo de Nível de Serviço.,
Service Level.,Nível de Serviço.,
Service Stop Date cannot be after Service End Date,Data de parada de serviço não pode ser após a data de término do serviço,
Service Stop Date cannot be before Service Start Date,A data de parada de serviço não pode ser anterior à data de início do serviço,
Services,Serviços,
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Defina valores padrão , como empresa, moeda, ano fiscal atual , etc",
Set Details,Detalhes do Conjunto,
Set New Release Date,Definir Nova Data de Lançamento,
Set Project and all Tasks to status {0}?,Definir projeto e todas as tarefas para status {0}?,
Set Status,Definir Status,
Set Tax Rule for shopping cart,Conjunto de regras de imposto por carrinho de compras,
Set as Closed,Definir Como Fechado,
Set as Completed,Definir Como Concluído,
Set as Default,Definir Como Padrão,
Set as Lost,Definir Como Perdido,
Set as Open,Definir Como Aberto,
Set default inventory account for perpetual inventory,Defina a conta de inventário padrão para o inventário perpétuo,
Set this if the customer is a Public Administration company.,Defina isto se o cliente for uma empresa da Administração Pública.,
Set {0} in asset category {1} or company {2},Defina {0} na categoria de recurso {1} ou na empresa {2},
"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Configurando eventos para {0}, uma vez que o colaborador relacionado aos vendedores abaixo não tem um ID do usuário {1}",
Setting defaults,Configuração de padrões,
Setting up Email,Configurando Email,
Setting up Email Account,Configurando Conta de Email,
Setting up Employees,Configurando Colaboradores,
Setting up Taxes,Configurando Impostos,
Setting up company,Criação de empresa,
Settings,Configurações,
"Settings for online shopping cart such as shipping rules, price list etc.","Configurações do carrinho de compras on-line, tais como regras de navegação, lista de preços etc.",
Settings for website homepage,Configurações para página inicial do site,
Settings for website product listing,Configurações para listagem de produtos do website,
Settled,Liquidado,
Setup Gateway accounts.,Configuração contas Gateway.,
Setup SMS gateway settings,Configurações de gateway SMS Setup,
Setup cheque dimensions for printing,Configurar dimensões do cheque para impressão,
Setup default values for POS Invoices,Configurar valores padrão para faturas do PDV,
Setup mode of POS (Online / Offline),Modo de Configuração do PDV (Online / Offline),
Setup your Institute in ERPNext,Configure seu Instituto no ERPNext,
Share Balance,Balanço de Ações,
Share Ledger,Ledger de Ações,
Share Management,Gerenciamento de Ações,
Share Transfer,Transferência de Ações,
Share Type,Tipo de Ação,
Shareholder,Acionista,
Ship To State,Enviar Para Estado,
Shipments,Entregas,
Shipping,Expedição,
Shipping Address,Endereço Para Entrega,
"Shipping Address does not have country, which is required for this Shipping Rule","O endereço de envio não tem país, o que é necessário para esta regra de envio",
Shipping rule only applicable for Buying,Regra de envio aplicável apenas para compra,
Shipping rule only applicable for Selling,Regra de envio aplicável apenas para venda,
Shopify Supplier,Fornecedor Shopify,
Shopping Cart,Carrinho de Compras,
Shopping Cart Settings,Configurações do Carrinho de Compras,
Short Name,Nome Curto,
Shortage Qty,Qtde Em Falta,
Show Completed,Mostrar Concluído,
Show Cumulative Amount,Mostrar Montante Cumulativo,
Show Open,Mostrar Aberta,
Show Opening Entries,Mostrar Entradas de Abertura,
Show Payment Details,Mostrar Detalhes de Pagamento,
Show Return Entries,Mostrar Entradas de Devolução,
Show Variant Attributes,Mostrar Atributos Variantes,
Show Variants,Mostrar Variantes,
Show closed,Mostrar fechados,
Show exploded view,Mostrar vista explodida,
Show only POS,Mostrar apenas POS,
Show unclosed fiscal year's P&L balances,Mostrar saldos P&L de ano fiscal não encerrado,
Show zero values,Mostrar valores zerados,
Silt,Silt,
Single Variant,Variante Única,
Single unit of an Item.,Unidade única de um item.,
"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Ignorar a atribuição de licenças para os funcionários a seguir, já que os registros de alocação de licenças já existem contra eles. {0}",
Slideshow,Apresentação de Slides,
Slots for {0} are not added to the schedule,Slots para {0} não são adicionados ao cronograma,
Small,Pequeno,
Soap & Detergent,Soap & Detergente,
Software,Software,
Software Developer,Software Developer,
Softwares,Softwares,
Soil compositions do not add up to 100,As composições de solo não somam até 100,
Sold,Vendido,
Some emails are invalid,Alguns emails são inválidos,
Some information is missing,Alguma informação está faltando,
Something went wrong!,Algo deu errado!,
"Sorry, Serial Nos cannot be merged","Desculpe, os números de ordem não podem ser mescladas",
Source,Origem,
Source Name,Nome da Fonte,
Source Warehouse,Armazém de Origem,
Source and Target Location cannot be same,A origem e o local de destino não podem ser iguais,
Source and target warehouse cannot be same for row {0},Fonte e armazém de destino não pode ser o mesmo para a linha {0},
Source and target warehouse must be different,O Armazém de origem e o armazém de destino devem ser diferentes um do outro,
Source of Funds (Liabilities),Fonte de Recursos (passivos),
Source warehouse is mandatory for row {0},O Armazém de origem é obrigatório para a linha {0},
Specified BOM {0} does not exist for Item {1},A LDM {0} especificada não existe para o Item {1},
Split,Dividido,
Split Batch,Lote Dividido,
Split Issue,Problema de Divisão,
Sports,Esportes,
Standard,Padrão,
Standard Buying,Compra Padrão,
Standard Selling,Venda Padrão,
Standard contract terms for Sales or Purchase.,Termos do contrato padrão para vendas ou compra.,
Start Date,Data de Início,
Start Date of Agreement can't be greater than or equal to End Date.,A data de início do contrato não pode ser maior ou igual à data de término.,
Start Year,Ano de Início,
Start date should be less than end date for Item {0},Data de início deve ser inferior a data final para o item {0},
Start date should be less than end date for task {0},A data de início deve ser inferior à data de término da tarefa {0},
Start day is greater than end day in task '{0}',O dia de início é maior que o final da tarefa ';{0}';,
Start on,Início Em,
State,Estado,
State/UT Tax,Imposto Estadual,
Statement of Account,Extrato da Conta,
Status must be one of {0},Status deve ser um dos {0},
Stock,Estoque,
Stock Adjustment,Ajuste do Estoque,
Stock Analytics,Análise do Estoque,
Stock Assets,Ativos Estoque,
Stock Available,Disponível Em Estoque,
Stock Balance,Balanço de Estoque,
Stock Entries already created for Work Order ,Entradas de ações já criadas para ordem de serviço,
Stock Entry,Lançamento no Estoque,
Stock Entry {0} created,Lançamento de Estoque {0} criado,
Stock Entry {0} is not submitted,Lançamento no Estoque {0} não é enviado,
Stock Expenses,Despesas Com Estoque,
Stock In Hand,Estoque na Mão,
Stock Items,Itens de Estoque,
Stock Ledger,Livro de Inventário,
Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Banco de Ledger Entradas e GL as entradas são reenviados para os recibos de compra selecionados,
Stock Levels,Níveis de Estoque,
Stock Liabilities,Passivo Estoque,
Stock Qty,Quantidade Em Estoque,
Stock Received But Not Billed,Itens Recebidos Mas Não Faturados,
Stock Reports,Relatórios de Estoque,
Stock Summary,Resumo do Estoque,
Stock Transactions,Transações de Estoque,
Stock UOM,Unidade de Medida do Estoque,
Stock Value,Valor do Estoque,
Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},Da balança em Batch {0} se tornará negativo {1} para item {2} no Armazém {3},
Stock cannot be updated against Delivery Note {0},Banco não pode ser atualizado contra nota de entrega {0},
Stock cannot be updated against Purchase Receipt {0},O estoque não pode ser atualizado em relação ao Recibo de Compra {0},
Stock cannot exist for Item {0} since has variants,Estoque não pode existir por item {0} já que tem variantes,
Stock transactions before {0} are frozen,Transações com ações antes {0} são congelados,
Stop,Parar,
Stopped,Parado,
"Stopped Work Order cannot be cancelled, Unstop it first to cancel","A ordem de trabalho interrompida não pode ser cancelada, descompacte-a primeiro para cancelar",
Stores,Lojas,
Student,Aluno,
Student Activity,Atividade Estudantil,
Student Address,Endereço do Estudante,
Student Admissions,Admissões de Alunos,
Student Attendance,Frequência do Aluno,
"Student Batches help you track attendance, assessments and fees for students","Os lotes de estudante ajudar a controlar assiduidade, avaliação e taxas para estudantes",
Student Email Address,Endereço de Email do Estudante,
Student Email ID,Email do Aluno,
Student Group,Grupo de Alunos,
Student Group Strength,Grupo de Estudantes Força,
Student Group is already updated.,O grupo de alunos já está atualizado.,
Student Group: ,Grupo de Estudantes:,
Student ID,ID do Aluno,
Student ID: ,Identidade Estudantil:,
Student LMS Activity,Atividade Lms do Aluno,
Student Mobile No.,Celular do Aluno,
Student Name,Nome do Aluno,
Student Name: ,Nome do Aluno:,
Student Report Card,Cartão de Relatório do Aluno,
Student is already enrolled.,Aluno já está inscrito.,
Student {0} - {1} appears Multiple times in row {2} & {3},O aluno {0} - {1} aparece Diversas vezes na linha {2} e {3},
Student {0} does not belong to group {1},O aluno {0} não pertence ao grupo {1},
Student {0} exist against student applicant {1},O aluno {0} existe contra candidato a estudante {1},
"Students are at the heart of the system, add all your students","Os estudantes estão no centro do sistema, adicione todos os seus alunos",
Sub Assemblies,Subconjuntos,
Sub Type,Subtipo,
Sub-contracting,Subcontratação,
Subcontract,Subcontratar,
Subject,Assunto,
Submit,Enviar,
Submit this Work Order for further processing.,Envie esta Ordem de Serviço para processamento adicional.,
Subscription,Inscrição,
Subscription Management,Gerenciamento de Assinaturas,
Subscriptions,Assinaturas,
Subtotal,Subtotal,
Successful,Bem Sucedido,
Successfully Reconciled,Reconciliados Com Sucesso,
Successfully Set Supplier,Definir o Fornecedor Com Sucesso,
Successfully created payment entries,Entradas de pagamento criadas com sucesso,
Successfully deleted all transactions related to this company!,Todas as transações relacionadas a esta empresa foram excluídas com sucesso!,
Sum of Scores of Assessment Criteria needs to be {0}.,Soma dos escores de critérios de avaliação precisa ser {0}.,
Sum of points for all goals should be 100. It is {0},Soma de pontos para todos os objetivos deve inteirar 100. (valor atual: {0}),
Summary,Resumo,
Summary for this month and pending activities,Resumo para este mês e atividades pendentes,
Summary for this week and pending activities,Resumo para esta semana e atividades pendentes,
Sunday,Domingo,
Suplier,Fornecedor,
Supplier,Fornecedor,
Supplier Group,Grupo de Fornecedores,
Supplier Group master.,Mestre do Grupo de Fornecedores.,
Supplier Id,ID do Fornecedor,
Supplier Invoice Date cannot be greater than Posting Date,A data da nota fiscal do fornecedor não pode ser maior do que data do lançamento,
Supplier Invoice No,Nº da Nota Fiscal de Compra,
Supplier Invoice No exists in Purchase Invoice {0},Nº da Nota Fiscal do Fornecedor já existe naFatura de Compra {0},
Supplier Name,Nome do Fornecedor,
Supplier Part No,Nº da Peça no Fornecedor,
Supplier Quotation,Orçamento de Fornecedor,
Supplier Scorecard,Scorecard do Fornecedor,
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Fornecedor Armazém obrigatório para sub- contratados Recibo de compra,
Supplier database.,Banco de dados do fornecedor.,
Supplier {0} not found in {1},Fornecedor {0} não encontrado em {1},
Supplier(s),Fornecedor(es),
Supplies made to UIN holders,Suprimentos feitos para os titulares de UIN,
Supplies made to Unregistered Persons,Suprimentos para pessoas não registradas,
Suppliies made to Composition Taxable Persons,Suplementos feitos à composição de sujeitos passivos,
Supply Type,Tipo de Alimentação,
Support,Pós-vendas,
Support Analytics,Análise de Pós-vendas,
Support Settings,Configurações do Pós Vendas,
Support Tickets,Bilhetes de Suporte,
Support queries from customers.,Suporte às perguntas de clientes.,
Susceptible,Susceptível,
Sync has been temporarily disabled because maximum retries have been exceeded,A sincronização foi temporariamente desativada porque tentativas máximas foram excedidas,
Syntax error in condition: {0},Erro de sintaxe na condição: {0},
Syntax error in formula or condition: {0},Erro de sintaxe na fórmula ou condição: {0},
System Manager,Administrador do Sistema,
TDS Rate %,% de taxa de TDS,
Tap items to add them here,Toque em itens para adicioná-los aqui,
Target,Meta,
Target ({}),Meta ({}),
Target On,Meta Em,
Target Warehouse,Armazém de Destino,
Target warehouse is mandatory for row {0},Destino do Warehouse é obrigatória para a linha {0},
Task,Tarefa,
Tasks,Tarefas,
Tasks have been created for managing the {0} disease (on row {1}),Tarefas foram criadas para gerenciar a doença {0} (na linha {1}),
Tax,Imposto,
Tax Assets,Ativo Fiscal,
Tax Category,Categoria de Impostos,
Tax Category for overriding tax rates.,Categoria de imposto para taxas de imposto sobrepostas.,
"Tax Category has been changed to ""Total"" because all the Items are non-stock items",Categoria de imposto foi alterada para &quot;Total&quot; porque todos os itens são itens sem estoque,
Tax ID,Cpf/cnpj,
Tax Id: ,Cpf/cnpj:,
Tax Rate,Alíquota do Imposto,
Tax Rule Conflicts with {0},Conflitos regra fiscal com {0},
Tax Rule for transactions.,Regra de imposto para transações.,
Tax Template is mandatory.,Modelo de impostos é obrigatório.,
Tax Withholding rates to be applied on transactions.,Taxas de retenção fiscal a serem aplicadas em transações.,
Tax template for buying transactions.,Modelo de impostos para a compra de transações.,
Tax template for item tax rates.,Modelo de imposto para taxas de imposto de item.,
Tax template for selling transactions.,Modelo impostos para transações de venda.,
Taxable Amount,Valor Tributável,
Taxes,Impostos,
Technology,Tecnologia,
Telecommunications,Telecomunicações,
Telephone Expenses,Despesas Com Telefone,
Television,Televisão,
Template Name,Nome do Modelo,
Template of terms or contract.,Modelo de termos ou contratos.,
Templates of supplier scorecard criteria.,Modelos de critérios de scorecard do fornecedor.,
Templates of supplier scorecard variables.,Modelos de variáveis do scorecard do fornecedor.,
Templates of supplier standings.,Modelos de classificação de fornecedores.,
Temporarily on Hold,Temporariamente Em Espera,
Temporary,Temporário,
Temporary Accounts,Contas Temporárias,
Temporary Opening,Abertura Temporária,
Terms and Conditions,Termos e Condições,
Terms and Conditions Template,Modelo de Termos e Condições,
Territory,Território,
Test,Teste,
Thank you for your business!,Obrigado pela compra!,
The 'From Package No.' field must neither be empty nor it's value less than 1.,O ';A partir do número do pacote'; o campo não deve estar vazio nem valor inferior a 1.,
The Brand,A Marca,
The Item {0} cannot have Batch,O item {0} não pode ter Batch,
The Loyalty Program isn't valid for the selected company,O programa de fidelidade não é válido para a empresa selecionada,
The Payment Term at row {0} is possibly a duplicate.,O termo de pagamento na linha {0} é possivelmente uma duplicata.,
The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,O Prazo de Data Final não pode ser anterior ao Prazo de Data de Início. Por favor corrija as datas e tente novamente.,
The Term End Date cannot be later than the Year End Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,O Prazo de Data de Término não pode ser posterior à Data de Término de Ano do Ano Letivo com a qual está relacionado o termo (Ano Lectivo {}). Por favor corrija as datas e tente novamente.,
The Term Start Date cannot be earlier than the Year Start Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,O Prazo da Data de Início não pode ser antes da Data de Início do Ano Letivo com o qual o termo está vinculado (Ano Lectivo {}). Por favor corrija as datas e tente novamente.,
The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,A Data de Término do Ano não pode ser anterior à Data de Início de Ano. Por favor corrija as datas e tente novamente.,
The amount of {0} set in this payment request is different from the calculated amount of all payment plans: {1}. Make sure this is correct before submitting the document.,O valor de {0} definido nesta solicitação de pagamento é diferente do valor calculado de todos os planos de pagamento: {1}. Certifique-se de que está correto antes de enviar o documento.,
The field From Shareholder cannot be blank,O campo do Acionista não pode estar em branco,
The field To Shareholder cannot be blank,O campo Acionista não pode estar em branco,
The fields From Shareholder and To Shareholder cannot be blank,Os campos do Acionista e do Acionista não podem estar em branco,
The folio numbers are not matching,Os números do folio não estão combinando,
The holiday on {0} is not between From Date and To Date,O feriado em {0} não é entre de Data e To Date,
The name of the institute for which you are setting up this system.,O nome do instituto para o qual está a instalar este sistema.,
The name of your company for which you are setting up this system.,O nome da sua empresa para a qual você está configurando o sistema.,
The number of shares and the share numbers are inconsistent,O número de ações e os números de compartilhamento são inconsistentes,
The payment gateway account in plan {0} is different from the payment gateway account in this payment request,A conta do gateway de pagamento no plano {0} é diferente da conta do gateway de pagamento nesta solicitação de pagamento,
The selected BOMs are not for the same item,As listas de materiais selecionadas não são para o mesmo item,
The selected item cannot have Batch,O item selecionado não pode ter Batch,
The seller and the buyer cannot be the same,O vendedor e o comprador não podem ser os mesmos,
The shareholder does not belong to this company,O acionista não pertence a esta empresa,
The shares already exist,As ações já existem,
The shares don't exist with the {0},As ações não existem com o {0},
"The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Reconciliation and revert to the Draft stage","A tarefa foi enfileirada como um trabalho em segundo plano. Caso haja algum problema no processamento em background, o sistema adicionará um comentário sobre o erro nessa reconciliação de estoque e reverterá para o estágio de rascunho",
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Então Preços Regras são filtradas com base no Cliente, Grupo de Clientes, Território, fornecedor, fornecedor Tipo, Campanha, Parceiro de vendas etc",
"There are inconsistencies between the rate, no of shares and the amount calculated","Existem inconsistências entre a taxa, o número de ações e o valor calculado",
There can be multiple tiered collection factor based on the total spent. But the conversion factor for redemption will always be same for all the tier.,Pode haver vários fatores de cobrança em camadas com base no total gasto. Mas o fator de conversão para resgate será sempre o mesmo para todo o nível.,
There can only be 1 Account per Company in {0} {1},Pode haver apenas uma conta por empresa em {0} {1},
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Só pode haver uma regra de envio Condição com 0 ou valor em branco para "" To Valor """,
There is not enough leave balance for Leave Type {0},Não há o suficiente equilíbrio pela licença Tipo {0},
There is nothing to edit.,Não há nada a ser editado.,
There isn't any item variant for the selected item,Não há variante de item para o item selecionado,
"There seems to be an issue with the server's GoCardless configuration. Don't worry, in case of failure, the amount will get refunded to your account.","Parece haver um problema com a configuração GoCardless do servidor. Não se preocupe, em caso de falha, o valor será reembolsado na sua conta.",
There were errors creating Course Schedule,Houve erros na criação da programação do curso,
There were errors.,Ocorreram erros.,
This Item is a Template and cannot be used in transactions. Item attributes will be copied over into the variants unless 'No Copy' is set,Este artigo é um modelo e não podem ser usados em transações. Atributos item será copiado para as variantes a menos 'No Copy' é definido,
This Item is a Variant of {0} (Template).,Este Item É Uma Variante de {0} (modelo).,
This Month's Summary,Resumo Deste Mês,
This Week's Summary,Resumo da Semana,
This action will stop future billing. Are you sure you want to cancel this subscription?,Essa ação interromperá o faturamento futuro. Tem certeza de que deseja cancelar esta assinatura?,
This covers all scorecards tied to this Setup,Isso abrange todos os scorecards vinculados a esta configuração,
This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Este documento está fora do limite {0} {1} para o item {4}. Você está fazendo outro(a) {3} relacionado(a) a(o) mesmo(a) {2}?,
This is a root account and cannot be edited.,Esta é uma conta de root e não pode ser editada.,
This is a root customer group and cannot be edited.,Este é um grupo de clientes de raiz e não pode ser editada.,
This is a root department and cannot be edited.,Este é um departamento raiz e não pode ser editado.,
This is a root healthcare service unit and cannot be edited.,Esta é uma unidade de serviço de saúde raiz e não pode ser editada.,
This is a root item group and cannot be edited.,Este é um grupo de itens de raiz e não pode ser editada.,
This is a root sales person and cannot be edited.,Esta é uma pessoa de vendas de raiz e não pode ser editado.,
This is a root supplier group and cannot be edited.,Este é um grupo de fornecedores raiz e não pode ser editado.,
This is a root territory and cannot be edited.,Este é um território de raiz e não pode ser editada.,
This is an example website auto-generated from ERPNext,Este é um exemplo website auto- gerada a partir ERPNext,
This is based on logs against this Vehicle. See timeline below for details,Isto é baseado em registos deste veículo. Veja o cronograma abaixo para obter mais detalhes,
This is based on stock movement. See {0} for details,Isto é baseado no movimento de estoque. Veja o {0} para maiores detalhes,
This is based on the Time Sheets created against this project,Isto é baseado nos Registros de Tempo relacionados a este Projeto,
This is based on the attendance of this Student,Isto é baseado na frequência do aluno,
This is based on transactions against this Customer. See timeline below for details,Isto é baseado nas transações envolvendo este Cliente. Veja a linha do tempo abaixo para maiores detalhes,
This is based on transactions against this Healthcare Practitioner.,Isto é baseado em transações contra este profissional de saúde.,
This is based on transactions against this Patient. See timeline below for details,Isso é baseado em transações contra este Paciente. Veja a linha de tempo abaixo para detalhes,
This is based on transactions against this Sales Person. See timeline below for details,Isso é baseado em transações contra essa pessoa de vendas. Veja a linha do tempo abaixo para detalhes,
This is based on transactions against this Supplier. See timeline below for details,Isto é baseado nas transações envolvendo este Fornecedor. Veja a linha do tempo abaixo para maiores detalhes,
This {0} conflicts with {1} for {2} {3},Este/a {0} entra em conflito com {1} por {2} {3},
Time Sheet for manufacturing.,Registro de Tempo para fabricação,
Time Tracking,Controle de Tempo,
"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Time slot skiped, o slot {0} para {1} se sobrepõe ao slot existente {2} para {3}",
Time slots added,Slots de tempo adicionados,
Time(in mins),Tempo (em minutos),
Timer,Cronômetro,
Timer exceeded the given hours.,O temporizador excedeu as horas dadas.,
Timesheet,Registro de Tempo,
Timesheet for tasks.,Registros de Tempo para tarefas.,
Timesheet {0} is already completed or cancelled,O Registro de Tempo {0} está finalizado ou cancelado,
Timesheets,Registros de Tempo,
"Timesheets help keep track of time, cost and billing for activites done by your team","O Registo de Horas ajudar a manter o controlo do tempo, custo e faturação para atividades feitas pela sua equipa",
Titles for print templates e.g. Proforma Invoice.,Títulos para modelos de impressão por exemplo Fatura Proforma.,
To,Para,
To Address 1,Para Endereço 1,
To Address 2,Para Endereço 2,
To Bill,Para Faturar,
To Date,Até a Data,
To Date cannot be before From Date,Até o momento não pode ser antes a partir da data,
To Date cannot be less than From Date,Até a data não pode ser menor que a partir da data,
To Date must be greater than From Date,To Date deve ser maior que From Date,
To Date should be within the Fiscal Year. Assuming To Date = {0},Para data deve ser dentro do exercício social. Assumindo Para Date = {0},
To Datetime,Até a Data e Hora,
To Deliver,Para Entregar,
To Deliver and Bill,Para Entregar e Faturar,
To Fiscal Year,Para o Ano Fiscal,
To GSTIN,Para GSTIN,
To Party Name,Para o Parceiro,
To Pin Code,Para Fixar o Código,
To Place,Colocar,
To Receive,Receber,
To Receive and Bill,Para Receber e Faturar,
To State,Declarar,
To Warehouse,Para o Armazén,
To create a Payment Request reference document is required,Para criar um documento de referência de Pedido de pagamento é necessário,
"To filter based on Party, select Party Type first","Para filtrar baseado em Sujeito, selecione o Tipo de Sujeito primeiro",
"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","Para tirar o melhor proveito do ERPNext, recomendamos que você dedique algum tempo para assistir a esses vídeos de ajuda.",
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Para incluir impostos na linha {0} na taxa de Item, os impostos em linhas {1} também deve ser incluída",
To make Customer based incentive schemes.,Fazer esquemas de incentivo baseados no cliente.,
"To merge, following properties must be same for both items","Para mesclar , seguintes propriedades devem ser os mesmos para ambos os itens",
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Para não aplicar regra de preços em uma transação particular, todas as regras de preços aplicáveis devem ser desativados.",
"To set this Fiscal Year as Default, click on 'Set as Default'","Para definir esse Ano Fiscal como padrão , clique em ' Definir como padrão '",
To view logs of Loyalty Points assigned to a Customer.,Exibir registros de pontos de fidelidade atribuídos a um cliente.,
To {0},Para {0},
To {0} | {1} {2},Para {0} | {1} {2},
Toggle Filters,Toggle Filters,
Too many columns. Export the report and print it using a spreadsheet application.,Muitas colunas. Exportar o relatório e imprimi-lo usando um aplicativo de planilha.,
Tools,Ferramentas,
Total (Credit),Total (crédito),
Total (Without Tax),Total (sem Imposto),
Total Achieved,Total de Alcançados,
Total Actual,Total Atual,
Total Allocated Leaves,Total de Folhas Alocadas,
Total Amount,Valor Total,
Total Amount Credited,Quantidade Total Creditada,
Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Total de encargos aplicáveis em Purchase mesa Itens recibo deve ser o mesmo que o total Tributos e Encargos,
Total Budget,Orçamento Total,
Total Collected: {0},Total Coletado: {0},
Total Commission,Total da Comissão,
Total Contribution Amount: {0},Valor Total da Contribuição: {0},
Total Credit/ Debit Amount should be same as linked Journal Entry,O valor total de crédito / débito deve ser o mesmo que o lançamento no diário associado,
Total Debit must be equal to Total Credit. The difference is {0},Débito total deve ser igual ao total de crédito.,
Total Invoiced Amount,Valor Total Faturado,
Total Order Considered,Total Considerado Em Pedidos,
Total Order Value,Valor Total do Pedido,
Total Outgoing,Total de Saída,
Total Outstanding,Total Pendente,
Total Outstanding Amount,Saldo Devedor Total,
Total Outstanding: {0},Total Pendente: {0},
Total Paid Amount,Valor Total Pago,
Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,O valor total do pagamento no cronograma de pagamento deve ser igual a total / total arredondado,
Total Payments,Total de Pagamentos,
Total Qty,Quantidade Total,
Total Quantity,Quantidade Total,
Total Revenue,Receita Total,
Total Student,Estudante Total,
Total Target,Meta Total,
Total Tax,Fiscal Total,
Total Taxable Amount,Valor Total Tributável,
Total Taxable Value,Valor Tributável Total,
Total Unpaid: {0},Total Por Pagar: {0},
Total Variance,Variância Total,
Total Weightage of all Assessment Criteria must be 100%,O peso total de todos os Critérios de Avaliação deve ser 100%,
Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Avanço total ({0}) contra Pedido {1} não pode ser maior do que o total geral ({2}),
Total advance amount cannot be greater than total claimed amount,A quantia de antecipação total não pode ser maior do que o montante total reclamado,
Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,O total de folhas alocadas é mais dias do que a alocação máxima de {0} tipo de licença para o funcionário {1} no período,
Total allocated leaves are more than days in the period,Total de licenças alocadas é maior do que número de dias no período,
Total allocated percentage for sales team should be 100,Porcentagem total alocado para a equipe de vendas deve ser de 100,
Total cannot be zero,Total não pode ser zero,
Total contribution percentage should be equal to 100,A porcentagem total de contribuição deve ser igual a 100,
Total hours: {0},Total de horas: {0},
Total {0} ({1}),Total {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Total de {0} para todos os itens é zero, pode ser que você deve mudar ';Distribuir taxas sobre';",
Total(Amt),Total (quantia),
Total(Qty),Total (qtde),
Traceability,Rastreabilidade,
Traceback,Traceback,
Track Leads by Lead Source.,Rastrear Leads Por Origem.,
Transaction,Transação,
Transaction Date,Data da Transação,
Transaction Type,Tipo de Transação,
Transaction currency must be same as Payment Gateway currency,Moeda de transação deve ser o mesmo da moeda gateway de pagamento,
Transaction not allowed against stopped Work Order {0},Transação não permitida em relação à ordem de trabalho interrompida {0},
Transaction reference no {0} dated {1},Referência da transação nº {0} em {1},
Transactions,Transações,
Transactions can only be deleted by the creator of the Company,Transações só podem ser excluídos pelo criador da Companhia,
Transfer,Transferir,
Transfer Material,Transferência de Material,
Transfer Type,Tipo de Transferência,
Transfer an asset from one warehouse to another,Transferir um ativo de um armazém para outro,
Transfered,Transferido,
Transferred Quantity,Quantidade Transferida,
Transport Receipt Date,Data de Recebimento de Transporte,
Transport Receipt No,Recibo de Transporte Não,
Transportation,Transporte,
Transporter ID,ID do Transportador,
Transporter Name,Nome da Transportadora,
Travel Expenses,Despesas Com Viagem,
Tree Type,Tipo de Árvore,
Tree of Bill of Materials,Árvore da Lista de Materiais,
Tree of Item Groups.,Árvore de Grupos de itens.,
Tree of Procedures,Árvore de Procedimentos,
Tree of Quality Procedures.,Árvore de Procedimentos de Qualidade.,
Tree of financial Cost Centers.,Árvore de Centros de Custo.,
Tree of financial accounts.,Árvore de contas financeiras.,
Treshold {0}% appears more than once,Treshold {0}% aparece mais de uma vez,
Trial Period End Date Cannot be before Trial Period Start Date,Data de término do período de avaliação não pode ser anterior à data de início do período de avaliação,
Trialling,Julgamento,
Type of Business,Tipo de Negócios,
Types of activities for Time Logs,Tipos de Atividades para Registros de Tempo,
UOM,UDM,
UOM Conversion factor is required in row {0},Fator de Conversão da UDM é necessário na linha {0},
UOM coversion factor required for UOM: {0} in Item: {1},Fator de Conversão de UDM é necessário para Unidade de Medida: {0} no Item: {1},
URL,URL,
Unable to find DocType {0},Não foi possível encontrar DocType {0},
Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Não é possível encontrar a taxa de câmbio para {0} a {1} para a data-chave {2}. Crie um registro de troca de moeda manualmente,
Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Não foi possível encontrar uma pontuação a partir de {0}. Você precisa ter pontuações em pé cobrindo de 0 a 100,
Unable to find variable: ,Não foi possível encontrar a variável:,
Unblock Invoice,Desbloquear Fatura,
Uncheck all,Desmarcar Todos,
Unclosed Fiscal Years Profit / Loss (Credit),Lucro / Prejuízo (crédito) de Anos Fiscais Não Encerrados,
Unit,Unidade,
Unit of Measure,Unidade de Medida,
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Unidade de Medida {0} foi inserida mais de uma vez na Tabela de Conversão de Fator,
Unknown,Desconhecido,
Unpaid,A Pagar,
Unsecured Loans,Empréstimos Não Garantidos,
Unsubscribe from this Email Digest,Cancelar a inscrição neste Resumo por Email,
Unsubscribed,Inscrição Cancelada,
Until,Até,
Unverified Webhook Data,Dados Não-confirmados da Webhook,
Update Account Name / Number,Atualizar Nome / Número da Conta,
Update Account Number / Name,Atualizar Número da Conta / Nome,
Update Cost,Atualizar Custo,
Update Items,Atualizar Itens,
Update Print Format,Atualizar Formato de Impressão,
Update bank payment dates with journals.,Atualizar datas de pagamento bancário com livro Diário.,
Update in progress. It might take a while.,Atualização em andamento. Pode demorar um pouco.,
Update rate as per last purchase,Atualizar taxa de acordo com a última compra,
Update stock must be enable for the purchase invoice {0},Atualizar estoque deve ser ativado para a fatura de compra {0},
Updating Variants...,Atualizando Variantes...,
Upload your letter head and logo. (you can edit them later).,Publique seu timbre e logotipo. (Você pode editá-las mais tarde).,
Upper Income,Alta Renda,
Use Sandbox,Use Sandbox,
Used Leaves,Folhas Usadas,
User,Usuário,
User ID,ID de Usuário,
User ID not set for Employee {0},ID de Usuário Não Definida Para Colaborador {0},
User Remark,Observação do Usuário,
User has not applied rule on the invoice {0},O usuário não aplicou regra na fatura {0},
User {0} already exists,O usuário {0} já existe,
User {0} created,Usuário {0} criado,
User {0} does not exist,Usuário {0} não existe,
User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,O usuário {0} não possui perfil de POS padrão. Verifique Padrão na Linha {1} para este Usuário.,
User {0} is already assigned to Employee {1},Usuário {0} já está atribuído ao Colaborador {1},
User {0} is already assigned to Healthcare Practitioner {1},O usuário {0} já está atribuído ao Healthcare Practitioner {1},
Users,Usuários,
Utility Expenses,Despesas Com Utilidades,
Valid From Date must be lesser than Valid Upto Date.,Válido da data deve ser menor que a data de validade.,
Valid Till,Válida Até,
Valid from and valid upto fields are mandatory for the cumulative,Válido de e válido até campos são obrigatórios para o cumulativo,
Valid from date must be less than valid upto date,Válido a partir da data deve ser inferior a data de validade,
Valid till date cannot be before transaction date,A data de validade até a data não pode ser anterior à data da transação,
Validity,Validade,
Validity period of this quotation has ended.,O período de validade desta citação terminou.,
Valuation Rate,Taxa de Avaliação,
Valuation Rate is mandatory if Opening Stock entered,É obrigatório colocar a Taxa de Avaliação se foi introduzido o Estoque de Abertura,
Valuation type charges can not marked as Inclusive,Encargos tipo de avaliação não pode marcado como Inclusive,
Value Or Qty,Valor Ou Qtde,
Value Proposition,Proposta de Valor,
Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},O Valor para o Atributo {0} deve estar dentro do intervalo de {1} a {2} nos acréscimos de {3} para o Item {4},
Value must be between {0} and {1},O valor deve estar entre {0} e {1},
"Values of exempt, nil rated and non-GST inward supplies","Valores de suprimentos internos isentos, nulos e não-GST",
Variance,Variação,
Variance ({}),Variação ({}),
Variant,Variante,
Variant Attributes,Atributos Variante,
Variant Based On cannot be changed,A variante baseada em não pode ser alterada,
Variant Details Report,Relatório de Detalhes da Variante,
Variant creation has been queued.,A criação de variantes foi colocada na fila.,
Vehicle Expenses,Despesas Com Veículos,
Vehicle No,Placa do Veículo,
Vehicle Type,Tipo de Veículo,
Vehicle/Bus Number,Número de Veículo / Ônibus,
Venture Capital,Capital de Risco,
View Chart of Accounts,Visualizar Plano de Contas,
View Fees Records,Exibir Registros de Taxas,
View Form,Visualizar Formulário,
View Lab Tests,Ver Testes Laboratoriais,
View Leads,Ver Leads,
View Ledger,Ver Livro Razão,
View Now,Ver Agora,
View a list of all the help videos,Ver uma lista de todos os vídeos de ajuda,
View in Cart,Ver Carrinho,
Visit report for maintenance call.,Relatório da visita da chamada de manutenção.,
Visit the forums,Visite os fóruns,
Vital Signs,Sinais Vitais,
Volunteer,Voluntário,
Volunteer Type information.,Informação do tipo de voluntário.,
Volunteer information.,Informação de voluntários.,
Voucher #,Comprovante #,
Voucher No,Nº do Comprovante,
Voucher Type,Tipo de Comprovante,
WIP Warehouse,Armazém de Trabalho Em Andamento,
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,Armazém não pode ser excluído pois existe entrada de material para este armazém.,
Warehouse cannot be changed for Serial No.,Armazém não pode ser alterado para nº serial.,
Warehouse is mandatory,Armazém é obrigatório,
Warehouse is mandatory for stock Item {0} in row {1},Armazém é obrigatória para estoque o item {0} na linha {1},
Warehouse not found in the system,Armazém não foi encontrado no sistema,
"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Armazém requerido na Linha Não {0}, por favor, defina armazém padrão para o item {1} para a empresa {2}",
Warehouse required for stock Item {0},Armazém necessário para o ítem do estoque {0},
Warehouse {0} can not be deleted as quantity exists for Item {1},Armazém {0} não pode ser excluído pois existe quantidade para item {1},
Warehouse {0} does not belong to company {1},Armazém {0} não pertence à empresa {1},
Warehouse {0} does not exist,Armazém {0} não existe,
"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","O depósito {0} não está vinculado a nenhuma conta, mencione a conta no registro do depósito ou defina a conta do inventário padrão na empresa {1}.",
Warehouses with child nodes cannot be converted to ledger,Os armazéns com subgrupos não podem ser convertido em livro,
Warehouses with existing transaction can not be converted to group.,Os Armazéns com a transação existente não podem ser convertidos num grupo.,
Warehouses with existing transaction can not be converted to ledger.,Os Armazéns com transação existente não podem ser convertidos em razão.,
Warning,Aviso,
Warning: Another {0} # {1} exists against stock entry {2},Aviso: Outra {0} # {1} existe contra entrada de material {2},
Warning: Invalid SSL certificate on attachment {0},Aviso: certificado SSL inválido no anexo {0},
Warning: Invalid attachment {0},Aviso: anexo inválido {0},
Warning: Material Requested Qty is less than Minimum Order Qty,Aviso: a quantidade de material solicitado é menor do que o Pedido Mínimo,
Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Aviso: Pedido de Venda {0} já existe relacionado ao Pedido de Compra do Cliente {1},
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Aviso : o sistema não irá verificar superfaturamento uma vez que o valor para o item {0} em {1} é zero,
Warranty,Garantia,
Warranty Claim,Solicitação de Garantia,
Warranty Claim against Serial No.,Solicitação de Garantia contra nº de Série,
Website,Site,
Website Image should be a public file or website URL,Site de imagem deve ser um arquivo público ou URL do site,
Website Image {0} attached to Item {1} cannot be found,Site Imagem {0} anexada ao Item {1} não pode ser encontrado,
Website Manager,Administrador do Site,
Website Settings,Configurações do Site,
Wednesday,Quarta-feira,
Week,Semana,
Weekdays,Dias da Semana,
Weekly,Semanalmente,
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Peso é mencionado, \n Também mencione ""Unidade de Medida de Peso""",
Welcome email sent,Email de Boas Vindas enviado,
Welcome to ERPNext,Bem Vindo Ao Erpnext,
What do you need help with?,Com o que você precisa de ajuda?,
What does it do?,O que isto faz?,
Where manufacturing operations are carried.,Onde as operações de fabricação são realizadas.,
White,Branco,
Wire Transfer,Transferência Bancária,
WooCommerce Products,Produtos Woocommerce,
Work In Progress,Trabalho Em Andamento,
Work Order,Ordem de Trabalho,
Work Order already created for all items with BOM,Ordem de Serviço já criada para todos os itens com BOM,
Work Order cannot be raised against a Item Template,A ordem de serviço não pode ser levantada em relação a um modelo de item,
Work Order has been {0},A ordem de serviço foi {0},
Work Order not created,Ordem de serviço não criada,
Work Order {0} must be cancelled before cancelling this Sales Order,A ordem de serviço {0} deve ser cancelada antes de cancelar este pedido de venda,
Work Order {0} must be submitted,A ordem de serviço {0} deve ser enviada,
Work Orders Created: {0},Ordens de Serviço Criadas: {0},
Work-in-Progress Warehouse is required before Submit,Armazém de Trabalho em Andamento é necessário antes de Enviar,
Workflow,Fluxo de Trabalho,
Working,Trabalhando,
Working Hours,Horas de Trabalho,
Workstation,Estação de Trabalho,
Workstation is closed on the following dates as per Holiday List: {0},Workstation é fechado nas seguintes datas conforme lista do feriado: {0},
Wrapping up,Empacotando,
Wrong Password,Senha Incorreta,
Year start date or end date is overlapping with {0}. To avoid please set company,Ano data de início ou data de término é a sobreposição com {0}. Para evitar defina empresa,
You are not authorized to add or update entries before {0},Você não está autorizado para adicionar ou atualizar entradas antes de {0},
You are not authorized to set Frozen value,Você não está autorizado para definir o valor congelado,
You can not change rate if BOM mentioned agianst any item,Você não pode alterar a taxa se a LDM é mencionada em algum item,
You can not enter current voucher in 'Against Journal Entry' column,Você não pode lançar o comprovante atual na coluna 'Contra Entrada do Livro Diário',
You can only have Plans with the same billing cycle in a Subscription,Você só pode ter planos com o mesmo ciclo de faturamento em uma assinatura,
You can only redeem max {0} points in this order.,Você só pode resgatar no máximo {0} pontos nesse pedido.,
You can only renew if your membership expires within 30 days,Você só pode renovar se a sua adesão expirar dentro de 30 dias,
You can only select a maximum of one option from the list of check boxes.,Você só pode selecionar um máximo de uma opção na lista de caixas de seleção.,
You can't redeem Loyalty Points having more value than the Grand Total.,Você não pode resgatar Pontos de fidelidade com mais valor do que o total geral.,
You cannot credit and debit same account at the same time,Você não pode ter débito e crédito na mesma conta,
You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,Não pode eliminar o Ano Fiscal de {0}. o Ano Fiscal de {0} está definido como padrão nas Definições Gerais,
You cannot delete Project Type 'External',Você não pode excluir o Tipo de Projeto ';Externo';,
You cannot edit root node.,Você não pode editar o nó raiz.,
You cannot restart a Subscription that is not cancelled.,Você não pode reiniciar uma Assinatura que não seja cancelada.,
You don't have enough Loyalty Points to redeem,Você não tem suficientes pontos de lealdade para resgatar,
You have already assessed for the assessment criteria {}.,Você já avaliou os critérios de avaliação {}.,
You have already selected items from {0} {1},Já selecionou itens de {0} {1},
You have been invited to collaborate on the project: {0},Você foi convidado para colaborar com o projeto: {0},
You have entered duplicate items. Please rectify and try again.,Você digitou itens duplicados. Por favor corrigir e tentar novamente.,
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Você precisa ser um usuário diferente das funções Administrador com Gerente do Sistema e Gerenciador de Itens para registrar no Marketplace.,
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Você precisa ser um usuário com as funções System Manager e Item Manager para adicionar usuários ao Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Você precisa ser um usuário com as funções System Manager e Item Manager para registrar no Marketplace.,
You need to be logged in to access this page,Você precisa estar logado para acessar esta página,
You need to enable Shopping Cart,É preciso ativar o Carrinho de Compras,
You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Você perderá registros de faturas geradas anteriormente. Tem certeza de que deseja reiniciar esta assinatura?,
Your Organization,Sua Organização,
Your cart is Empty,Seu carrinho está vazio,
Your email address...,Seu endereço de email...,
Your order is out for delivery!,Seu pedido está fora de prazo!,
Your tickets,Seus ingressos,
ZIP Code,CEP,
[Error],[Erro],
[{0}](#Form/Item/{0}) is out of stock,Não há [{0}] ({0}) em estoque.,
`Freeze Stocks Older Than` should be smaller than %d days.,Congelar Estoque anterior a' deve ser menor que %d dias.,
based_on,baseado em,
cannot be greater than 100,não pode ser maior do que 100,
disabled user,usuário desativado,
"e.g. ""Build tools for builders""","ex: ""Desenvolve ferramentas para construtores """,
"e.g. ""Primary School"" or ""University""","ex: ""Escola Primária"" ou ""Universidade""",
"e.g. Bank, Cash, Credit Card","ex: Banco, Dinheiro, Cartão de Crédito",
hidden,oculto,
modified,modificado,
old_parent,old_parent,
on,em,
{0} '{1}' is disabled,{0} '{1}' está desativado,
{0} '{1}' not in Fiscal Year {2},{0} '{1}' não localizado no Ano Fiscal {2},
{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) não pode ser maior que a quantidade planejada ({2}) na Ordem de Serviço {3},
{0} - {1} is inactive student,{0} - {1} é estudante inativo,
{0} - {1} is not enrolled in the Batch {2},{0} - {1} não está inscrito no Lote {2},
{0} - {1} is not enrolled in the Course {2},{0} - {1} não está inscrito no Curso {2},
{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},{0} Orçamento para a Conta {1} contra o {2} {3} é {4}. Ele irá exceder em {5},
{0} Digest,{0} Digest,
{0} Request for {1},{0} pedido para {1},
{0} Result submittted,{0} Resultado enviado,
{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} número de série é necessário para item {1}. Você forneceu {2}.,
{0} Student Groups created.,{0} Grupos de Alunos criados.,
{0} Students have been enrolled,{0} Estudantes foram matriculados,
{0} against Bill {1} dated {2},{0} contra duplicata {1} na data {2},
{0} against Purchase Order {1},{0} relacionado ao Pedido de Compra {1},
{0} against Sales Invoice {1},{0} contra Fatura de Venda {1},
{0} against Sales Order {1},{0} contra o Pedido de Venda {1},
{0} asset cannot be transferred,{0} ativo não pode ser transferido,
{0} can not be negative,{0} não pode ser negativo,
{0} created,{0} criou,
"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.","{0} já possui um {1} Scorecard de Fornecedor em aberto, portanto, os Pedidos de Compra para este fornecedor devem ser emitidos com cautela.",
"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.","{0} já possui um {1} Scorecard de Fornecedor em aberto, portanto, as Cotações para este fornecedor devem ser emitidas com cautela.",
{0} does not belong to Company {1},{0} não pertence à empresa {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} não possui um agendamento de profissionais de saúde. Adicione-o no master do Healthcare Practitioner,
{0} entered twice in Item Tax,{0} entrou duas vezes no Imposto do Item,
{0} for {1},{0} para {1},
{0} has been submitted successfully,{0} foi enviado com sucesso,
{0} has fee validity till {1},{0} tem validade de taxa até {1},
{0} hours,{0} horas,
{0} in row {1},{0} na linha {1},
{0} is blocked so this transaction cannot proceed,{0} está bloqueado portanto essa transação não pode continuar,
{0} is mandatory,{0} é obrigatório,
{0} is mandatory for Item {1},{0} é obrigatório para o item {1},
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} é obrigatório. Talvez o valor de câmbio não exista de {1} para {2}.,
{0} is not a stock Item,{0} não é um item de estoque,
{0} is not a valid Batch Number for Item {1},{0} não é um número de lote válido para o item {1},
{0} is not added in the table,{0} não é adicionado na tabela,
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,{0} é agora o Ano Fiscal padrão. Por favor atualize seu navegador para que a alteração tenha efeito.,
{0} is on hold till {1},{0} está em espera até {1},
{0} item found.,{0} item encontrado.,
{0} items found.,{0} itens encontrados.,
{0} items in progress,{0} itens em andamento,
{0} items produced,{0} itens produzidos,
{0} must appear only once,{0} deve aparecer apenas uma vez,
{0} must be negative in return document,{0} deve ser negativo no documento de devolução,
{0} not allowed to transact with {1}. Please change the Company.,{0} não pode transacionar com {1}. Por favor altere a empresa.,
{0} not found for item {1},{0} não encontrado para Item {1},
{0} parameter is invalid,{0} parâmetro é inválido,
{0} payment entries can not be filtered by {1},{0} entradas de pagamento não podem ser filtrados por {1},
{0} should be a value between 0 and 100,{0} deve ser um valor entre 0 e 100,
{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} unidades de [{1}] (# Form / Item / {1}) foram encontrados em [{2}] (# Form / Armazém / {2}),
{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,São necessárias {0} unidades de {1} em {2} em {3} {4} para {5} para concluir esta transação.,
{0} units of {1} needed in {2} to complete this transaction.,São necessárias {0} unidades de {1} em {2} para concluir esta transação.,
{0} valid serial nos for Item {1},{0} números de série válidos para o item {1},
{0} variants created.,{0} variantes criadas.,
{0} {1} created,{0} {1} criado,
{0} {1} does not exist,{0} {1} não existe,
{0} {1} has been modified. Please refresh.,{0} {1} foi modificado. Por favor atualize.,
{0} {1} has not been submitted so the action cannot be completed,{0} {1} não foi enviado então a ação não pode ser concluída,
"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} está associado a {2}, mas a Conta do Partido é {3}",
{0} {1} is cancelled or closed,{0} {1} está cancelado(a) ou fechado(a),
{0} {1} is cancelled or stopped,{0} {1} está cancelado ou parado,
{0} {1} is cancelled so the action cannot be completed,{0} {1} é cancelado então a ação não pode ser concluída,
{0} {1} is closed,{0} {1} esta fechado(a),
{0} {1} is disabled,{0} {1} está desativado,
{0} {1} is frozen,{0} {1} está congelado,
{0} {1} is fully billed,{0} {1} está totalmente faturado,
{0} {1} is not active,{0} {1} não está ativo,
{0} {1} is not associated with {2} {3},{0} {1} não está associado com {2} {3},
{0} {1} is not present in the parent company,{0} {1} não está presente na empresa controladora,
{0} {1} is not submitted,{0} {1} não foi enviado,
{0} {1} is {2},{0} {1} é {2},
{0} {1} must be submitted,{0} {1} deve ser enviado,
{0} {1} not in any active Fiscal Year.,{0} {1} não está em nenhum ano fiscal ativo.,
{0} {1} status is {2},O status {0} {1} é {2},
{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,"{0} {1}: o tipo de conta ""Lucros e Perdas"" {2} não é permitido num Registo de Entrada",
{0} {1}: Account {2} does not belong to Company {3},{0} {1}: Conta {2} não pertence à empresa {3},
{0} {1}: Account {2} is inactive,{0} {1}: Conta {2} está inativa,
{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: Entradas contabeis para {2} só pode ser feito em moeda: {3},
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Centro de Custo é obrigatória para item {2},
{0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.,"{0} {1}: Centro de Custo é necessário para a conta de ""Lucros e Perdas"" {2}. Por favor, crie um Centro de Custo padrão para a Empresa.",
{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: o centro de custo {2} não pertence à empresa {3},
{0} {1}: Customer is required against Receivable account {2},{0} {1}: Um cliente é necessário contra contas a receber {2},
{0} {1}: Either debit or credit amount is required for {2},{0} {1}: Um valor de débito ou crédito é necessário para {2},
{0} {1}: Supplier is required against Payable account {2},{0} {1}: Fornecedor é necessário contra Conta a Pagar {2},
{0}% Billed,{0}% faturado,
{0}% Delivered,{0}% entregue,
{0}: From {1},{0}: a partir de {1},
{0}: {1} does not exists,{0}: {1} não existe,
{0}: {1} not found in Invoice Details table,{0}: {1} não foi encontrado na tabela Detalhes da Fatura,
{} of {},{} do {},
Assigned To,Atribuído A,
Chat,Chat,
Completed By,Completado Por,
County,Distrito,
Day of Week,Dia da Semana,
"Dear System Manager,","Caro Administrador de Sistema,",
Default Value,Valor Padrão,
Email Group,Grupo de Email,
Email Settings,Configurações de Email,
Email not sent to {0} (unsubscribed / disabled),Email não foi enviado para {0} (inscrição anulada / desativado),
Error Message,Mensagem de Erro,
Fieldtype,Tipo de Campo,
Help Articles,Artigos de Ajuda,
ID,ID,
Images,Imagens,
Import,Importar,
Language,Idioma,
Likes,Gostos,
Merge with existing,Mesclar com existente,
Office,Escritório,
Orientation,Orientação,
Parent,Principal,
Passive,Passivo,
Payment Failed,Pagamento Falhou,
Permanent,Permanente,
Personal,Pessoal,
Plant,Fábrica,
Post,Post,
Postal,Postal,
Postal Code,CEP,
Previous,Anterior,
Provider,Fornecedor,
Read Only,Somente Leitura,
Recipient,Destinatário,
Reviews,Revisões,
Sender,Remetente,
Shop,Loja,
Subsidiary,Subsidiário,
There is some problem with the file url: {0},Há algum problema com a url do arquivo: {0},
There were errors while sending email. Please try again.,Ocorreram erros durante o envio de email. Por favor tente novamente.,
Values Changed,Valores Alterados,
or,ou,
Ageing Range 4,Faixa de Envelhecimento 4,
Allocated amount cannot be greater than unadjusted amount,Quantia alocada não pode ser maior que quantia não ajustada,
Allocated amount cannot be negative,Quantidade alocada não pode ser negativa,
"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","A conta de diferença deve ser uma conta do tipo Ativos / passivos, uma vez que essa entrada de estoque é uma entrada de abertura",
Import Successful,Importação Bem Sucedida,
Please save first,Por favor salve primeiro,
Price not found for item {0} in price list {1},Preço não encontrado para o item {0} na lista de preços {1},
Warehouse Type,Tipo de Armazém,
'Date' is required,';Data'; é obrigatório,
Budgets,Orçamentos,
Bundle Qty,Pacote Qtd,
Company GSTIN,Empresa Gstin,
Company field is required,Campo da empresa é obrigatório,
Creating Dimensions...,Criando Dimensões...,
Duplicate entry against the item code {0} and manufacturer {1},Entrada duplicada no código do item {0} e no fabricante {1},
Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,GSTIN inválido! a entrada que você inseriu não corresponde ao formato GSTIN para os titulares de UIN ou para os provedores de serviços OIDAR não residentes,
Invoice Grand Total,Total Geral da Fatura,
Last carbon check date cannot be a future date,A última data de verificação de carbono não pode ser uma data futura,
Make Stock Entry,Fazer Entrada de Estoque,
Quality Feedback,Feedback de Qualidade,
Quality Feedback Template,Modelo de Feedback de Qualidade,
Rules for applying different promotional schemes.,Regras para aplicar diferentes esquemas promocionais.,
Show {0},Mostrar {0},
"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Caracteres especiais, exceto &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; e &quot;}}&quot; não permitidos na série de nomenclatura {0}",
Target Details,Detalhes do Alvo,
{0} already has a Parent Procedure {1}.,{0} já tem um procedimento pai {1}.,
API,API,
Annual,Anual,
Change,Alteração,
Contact Email,Email de Contato,
Export Type,Tipo de Exportação,
From Date,Data De,
Group By,Agrupar Por,
Invalid URL,URL inválida,
Landscape,Panorama,
Last Sync On,Última sincronização em,
Naming Series,Código Dos Documentos,
No data to export,Nenhum dado para exportar,
Portrait,Retrato,
Print Heading,Cabeçalho de Impressão,
Scheduler Inactive,Agendador Inativo,
Scheduler is inactive. Cannot import data.,O agendador está inativo. Não é possível importar dados.,
Show Document,Mostrar Documento,
Show Traceback,Mostrar Traceback,
Video,Vídeo,
Webhook Secret,Segredo do Webhook,
% Of Grand Total,% do total geral,
<b>Company</b> is a mandatory filter.,<b>A empresa</b> é um filtro obrigatório.,
<b>From Date</b> is a mandatory filter.,<b>A partir da data</b> é um filtro obrigatório.,
<b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>From Time</b> não pode ser posterior a <b>To Time</b> para {0},
<b>To Date</b> is a mandatory filter.,<b>Até a data</b> é um filtro obrigatório.,
A new appointment has been created for you with {0},Um novo compromisso foi criado para você com {0},
Account Value,Valor da Conta,
Account is mandatory to get payment entries,A conta é obrigatória para obter entradas de pagamento,
Account is not set for the dashboard chart {0},A conta não está definida para o gráfico do painel {0},
Account {0} does not exists in the dashboard chart {1},A conta {0} não existe no gráfico do painel {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Conta: <b>{0}</b> é capital em andamento e não pode ser atualizado pela entrada de diário,
Account: {0} is not permitted under Payment Entry,Conta: {0} não é permitida em Entrada de pagamento,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,A dimensão contábil <b>{0}</b> é necessária para a conta &quot;Balanço&quot; {1}.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,A dimensão contábil <b>{0}</b> é necessária para a conta ';Lucros e perdas'; {1}.,
Accounting Masters,Cadastros Contábeis,
Accounting Period overlaps with {0},Período de Contabilidade sobrepõe-se a {0},
Activity,Atividade,
Add / Manage Email Accounts.,Adicionar / Gerenciar Contas de Email.,
Add Child,Adicionar Sub-item,
Add Multiple,Adicionar Múltiplos,
Add Participants,Adicione Participantes,
Add to Featured Item,Adicionar Ao Item Em Destaque,
Add your review,Adicione seu comentário,
Add/Edit Coupon Conditions,Adicionar / Editar Condições do Cupom,
Added to Featured Items,Adicionado Aos Itens Em Destaque,
Added {0} ({1}),Adicionado {0} ({1}),
Address Line 1,Endereço,
Addresses,Endereços,
Admission End Date should be greater than Admission Start Date.,A Data de término da admissão deve ser maior que a Data de início da admissão.,
All,Todos,
All bank transactions have been created,Todas as transações bancárias foram criadas,
All the depreciations has been booked,Todas as depreciações foram registradas,
Allow Resetting Service Level Agreement from Support Settings.,Permitir redefinir o contrato de nível de serviço das configurações de suporte.,
Amount of {0} is required for Loan closure,É necessário um valor de {0} para o fechamento do empréstimo,
Applied Coupon Code,Código de Cupom Aplicado,
Apply Coupon Code,Aplicar Código de Cupom,
Appointment Booking,Marcação de Consultas,
"As there are existing transactions against item {0}, you can not change the value of {1}","Como existem transações existentes contra item de {0}, você não pode alterar o valor de {1}",
Asset Id,ID do Recurso,
Asset Value,Valor Patrimonial,
Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,O ajuste do valor do ativo não pode ser lançado antes da data de compra do ativo <b>{0}</b>.,
Asset {0} does not belongs to the custodian {1},O ativo {0} não pertence ao custodiante {1},
Asset {0} does not belongs to the location {1},O ativo {0} não pertence ao local {1},
At least one of the Applicable Modules should be selected,Pelo menos um dos módulos aplicáveis deve ser selecionado,
Atleast one asset has to be selected.,Pelo menos um ativo deve ser selecionado.,
Authentication Failed,Autenticação Falhou,
Automatic Reconciliation,Reconciliação Automática,
Available For Use Date,Data de Uso Disponível,
Available Stock,Estoque Disponível,
"Available quantity is {0}, you need {1}","A quantidade disponível é {0}, você precisa de {1}",
BOM 1,BOM 1,
BOM 2,BOM 2,
BOM Comparison Tool,Ferramenta de Comparação de BOM,
BOM recursion: {0} cannot be child of {1},Recursão da BOM: {0} não pode ser filho de {1},
BOM recursion: {0} cannot be parent or child of {1},Recursão de BOM: {0} não pode ser pai ou filho de {1},
Back to Home,Retornar ao Início,
Back to Messages,Voltar Para Mensagens,
Bank Data mapper doesn't exist,O mapeador de dados bancários não existe,
Bank Details,Detalhes Bancários,
Bank account '{0}' has been synchronized,Conta bancária ';{0}'; foi sincronizada,
Bank account {0} already exists and could not be created again,A conta bancária {0} já existe e não pôde ser criada novamente,
Bank accounts added,Contas bancárias adicionadas,
Batch no is required for batched item {0},Lote não é necessário para o item em lote {0},
Billing Date,Data de Cobrança,
Billing Interval Count cannot be less than 1,A contagem do intervalo de faturamento não pode ser menor que 1,
Blue,Azul,
Book,Livro,
Book Appointment,Anotação de Livro,
Brand,Marca,
Browse,Pesquisar,
Call Connected,Chamada Conectada,
Call Disconnected,Chamada Desconectada,
Call Missed,Chamada Perdida,
Call Summary,Resumo de Chamadas,
Call Summary Saved,Resumo de Chamadas Salvo,
Cancelled,Cancelado,
Cannot Calculate Arrival Time as Driver Address is Missing.,Não É Possível Calcular o Horário de Chegada Pois o Endereço do Driver Está Ausente.,
Cannot Optimize Route as Driver Address is Missing.,Não É Possível Otimizar a Rota Pois o Endereço do Driver Está Ausente.,
Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,Não é possível concluir a tarefa {0} pois sua tarefa dependente {1} não está concluída / cancelada.,
Cannot find a matching Item. Please select some other value for {0}.,Não consegue encontrar um item correspondente. Por favor selecione algum outro valor para {0}.,
"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings","Não é possível exceder o item {0} na linha {1} mais que {2}. Para permitir cobrança excessiva, defina a permissão nas Configurações de contas",
"Capacity Planning Error, planned start time can not be same as end time","Erro de planejamento de capacidade, a hora de início planejada não pode ser igual à hora de término",
Categories,Categorias,
Changes in {0},Alterações Em {0},
Chart,Gráfico,
Choose a corresponding payment,Escolha um pagamento correspondente,
Click on the link below to verify your email and confirm the appointment,Clique no link abaixo para verificar seu e-mail e confirmar a consulta,
Close,Fechar,
Communication,Comunicação,
Compact Item Print,Imprimir Item no Formato Compacto,
Company,Empresa,
Company of asset {0} and purchase document {1} doesn't matches.,A empresa do ativo {0} e o documento de compra {1} não correspondem.,
Compare BOMs for changes in Raw Materials and Operations,Compare listas técnicas para alterações nas matérias-primas e operações,
Compare List function takes on list arguments,A função de lista de comparação aceita argumentos da lista,
Complete,Concluído,
Completed,Concluído,
Completed Quantity,Quantidade Concluída,
Connect your Exotel Account to ERPNext and track call logs,Conecte sua conta Exotel ao ERPNext e acompanhe os registros de chamadas,
Connect your bank accounts to ERPNext,Conecte suas contas bancárias ao ERPNext,
Contact Seller,Contatar Vendedor,
Continue,Continuar,
Cost Center: {0} does not exist,Centro de custo: {0} não existe,
Couldn't Set Service Level Agreement {0}.,Não Foi Possível Definir o Nível de Serviço {0}.,
Country,País,
Country Code in File does not match with country code set up in the system,O código do país no arquivo não corresponde ao código do país configurado no sistema,
Create New Contact,Criar Novo Contato,
Create New Lead,Criar Novo Lead,
Create Pick List,Criar Lista de Seleção,
Create Quality Inspection for Item {0},Criar Inspeção de Qualidade Para o Item {0},
Creating Accounts...,Criando Contas...,
Creating bank entries...,Criando entradas bancárias...,
Credit limit is already defined for the Company {0},O limite de crédito já está definido para a empresa {0},
Ctrl + Enter to submit,Ctrl + Enter para enviar,
Ctrl+Enter to submit,Ctrl + Enter para enviar,
Currency,Moeda,
Current Status,Status Atual,
Customer PO,PO Cliente,
Customize,Personalizar,
Daily,Diário,
Date,Data,
Date of Birth cannot be greater than Joining Date.,A data de nascimento não pode ser maior que a data de ingresso.,
Dear,Caro,
Default,Padrão,
Define coupon codes.,Defina códigos de cupom.,
Delayed Days,Dias Atrasados,
Delete,Excluir,
Delivered Quantity,Quantidade Entregue,
Delivery Notes,Notas de Entrega,
Depreciated Amount,Valor Depreciado,
Description,Descrição,
Designation,Designação,
Difference Value,Valor da Diferença,
Dimension Filter,Filtro de Dimensão,
Disabled,Desativado,
Disbursement and Repayment,Desembolso e Reembolso,
Distance cannot be greater than 4000 kms,Distância não pode ser maior que 4000 kms,
Do you want to submit the material request,Você deseja enviar a solicitação de material,
Doctype,Doctype,
Document {0} successfully uncleared,Documento {0} com sucesso não corrigido,
Download Template,Baixar Modelo,
Dr,Dr,
Due Date,Data de Vencimento,
Duplicate,Duplicar,
Duplicate Project with Tasks,Projeto duplicado com tarefas,
Duplicate project has been created,Projeto duplicado foi criado,
E-Way Bill JSON can only be generated from a submitted document,e-Way Bill JSON só pode ser gerado a partir de um documento enviado,
E-Way Bill JSON can only be generated from submitted document,e-Way Bill JSON só pode ser gerado a partir do documento enviado,
E-Way Bill JSON cannot be generated for Sales Return as of now,e-Way Bill JSON não pode ser gerado para retorno de vendas a partir de agora,
ERPNext could not find any matching payment entry,O ERPNext não conseguiu encontrar qualquer entrada de pagamento correspondente,
Earliest Age,Idade Mais Antiga,
Edit Details,Editar Detalhes,
Edit Profile,Editar Perfil,
Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,O ID do Transportador GST ou o Número do Veículo é necessário se o Modo de Transporte for Rodoviário,
Email,Email,
Email Campaigns,Campanhas de Email,
Employee ID is linked with another instructor,O ID do funcionário está vinculado a outro instrutor,
Employee Tax and Benefits,Imposto e Benefícios do Empregado,
Employee is required while issuing Asset {0},O funcionário é necessário ao emitir o Ativo {0},
Employee {0} does not belongs to the company {1},O funcionário {0} não pertence à empresa {1},
Enable Auto Re-Order,Ativar Reordenação Automática,
End Date of Agreement can't be less than today.,A data final do contrato não pode ser inferior a hoje.,
End Time,Horário de Término,
Energy Point Leaderboard,Placar de Pontos de Energia,
Enter API key in Google Settings.,Digite a Chave da API Nas Configurações do Google.,
Enter Supplier,Entrar no Fornecedor,
Enter Value,Digite o Valor,
Entity Type,Tipo de Entidade,
Error,Erro,
Error in Exotel incoming call,Erro na chamada recebida do Exotel,
Error: {0} is mandatory field,Erro: {0} é campo obrigatório,
Exception occurred while reconciling {0},Ocorreu uma exceção ao reconciliar {0},
Expected and Discharge dates cannot be less than Admission Schedule date,As datas esperadas e de alta não podem ser inferiores à data do horário de admissão,
Expired,Expirado,
Export,Exportar,
Export not allowed. You need {0} role to export.,Exportação não é permitida. Você precisa da função {0} para exportar.,
Failed to add Domain,Falha Ao Adicionar Domínio,
Fetch Items from Warehouse,Buscar itens do armazém,
Fetching...,Buscando...,
Field,Campo,
File Manager,Gestor de Arquivos,
Filters,Filtros,
Finding linked payments,Como encontrar pagamentos vinculados,
Fleet Management,Gestão de Frotas,
Following fields are mandatory to create address:,Os campos a seguir são obrigatórios para criar um endereço:,
For Month,Por Mês,
"For item {0} at row {1}, count of serial numbers does not match with the picked quantity","Para o item {0} na linha {1}, a contagem de números de série não corresponde à quantidade selecionada",
For operation {0}: Quantity ({1}) can not be greter than pending quantity({2}),Para a operação {0}: a quantidade ({1}) não pode ser melhor que a quantidade pendente ({2}),
For quantity {0} should not be greater than work order quantity {1},Para a quantidade {0} não deve ser maior que a quantidade da ordem de serviço {1},
Free item not set in the pricing rule {0},Item gratuito não definido na regra de preço {0},
From Date and To Date are Mandatory,A Partir da Data e Até a Data São Obrigatórias,
From employee is required while receiving Asset {0} to a target location,É necessário do funcionário ao receber o Ativo {0} em um local de destino,
Future Payment Amount,Valor do Pagamento Futuro,
Future Payment Ref,Referência de Pagamento Futuro,
Future Payments,Pagamentos Futuros,
GST HSN Code does not exist for one or more items,O código GST HSN não existe para um ou mais itens,
Generate E-Way Bill JSON,Gerar e-Way Bill JSON,
Get Items,Obter Itens,
Get Outstanding Documents,Obter Documentos Pendentes,
Goal,Meta,
Greater Than Amount,Maior Que Quantidade,
Green,Verde,
Group,Grupo,
Group By Customer,Agrupar Por Cliente,
Group By Supplier,Agrupar Por Fornecedor,
Group Node,Grupo de Nós,
Group Warehouses cannot be used in transactions. Please change the value of {0},Armazéns de grupo não podem ser usados em transações. Altere o valor de {0},
Help,Ajuda,
Help Article,Artigo de Ajuda,
"Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Ajuda a acompanhar os contratos com base no fornecedor, cliente e funcionário",
Helps you manage appointments with your leads,Ajuda a gerenciar compromissos com seus leads,
Home,Início,
IBAN is not valid,IBAN não é válido,
Import Data from CSV / Excel files.,Importar dados de arquivos CSV / Excel.,
In Progress,Em Progresso,
Incoming call from {0},Chamada recebida de {0},
Incorrect Warehouse,Armazém Incorreto,
Invalid Barcode. There is no Item attached to this barcode.,Código de barras inválido. Não há nenhum item anexado a este código de barras.,
Invalid credentials,Credenciais inválidas,
Invite as User,Convidar Como Usuário,
Issue Priority.,Prioridade do Incidente.,
Issue Type.,Tipo de Incidente.,
"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Parece que há um problema com a configuração de distribuição do servidor. Em caso de falha, o valor será reembolsado em sua conta.",
Item Reported,Item Relatado,
Item listing removed,Lista de itens removidos,
Item quantity can not be zero,Quantidade de item não pode ser zero,
Item taxes updated,Impostos sobre itens atualizados,
Item {0}: {1} qty produced. ,Item {0}: {1} quantidade produzida.,
Joining Date can not be greater than Leaving Date,A data de ingresso não pode ser maior que a data de saída,
Lab Test Item {0} already exist,O item de teste de laboratório {0} já existe,
Last Issue,Última edição,
Latest Age,Idade Mais Recente,
Leaves Taken,Folhas Tiradas,
Less Than Amount,Menos Que Quantidade,
Liabilities,Passivo,
Loading...,Carregando...,
Loan Applications from customers and employees.,Pedidos de empréstimo de clientes e funcionários.,
Loan Processes,Processos de Empréstimos,
Loan Type for interest and penalty rates,Tipo de empréstimo para taxas de juros e multas,
Loans,Empréstimos,
Loans provided to customers and employees.,Empréstimos concedidos a clientes e funcionários.,
Location,Localização,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Parece que alguém lhe enviou a um URL incompleta. Por favor pedir-lhes para olhar para ele.,
Make Journal Entry,Fazer Lançamento no Livro Diário,
Make Purchase Invoice,Maak Inkoopfactuur,
Manufactured,Fabricado,
Mark Work From Home,Marcar Trabalho de Casa,
Master,Cadastro,
Max strength cannot be less than zero.,A força máxima não pode ser menor que zero.,
Maximum attempts for this quiz reached!,Máximo de tentativas para este teste alcançado!,
Message,Mensagem,
Missing Values Required,Faltando Valores Obrigatórios,
Mobile No,Telefone Celular,
Mobile Number,Número de Celular,
Month,Mês,
Name,Nome,
Near you,Perto de Você,
Net Profit/Loss,Lucro / Perda Líquida,
New Expense,Nova Despesa,
New Invoice,Nova Fatura,
New Payment,Novo Pagamento,
New release date should be in the future,A nova data de lançamento deve estar no futuro,
Newsletter,Newsletter,
No Account matched these filters: {},Nenhuma conta corresponde a esses filtros: {},
No communication found.,Nenhuma comunicação encontrada.,
No correct answer is set for {0},Nenhuma resposta correta está definida para {0},
No description,Sem descrição,
No issue has been raised by the caller.,Nenhum problema foi levantado pelo chamador.,
No items to publish,Nenhum item para publicar,
No outstanding invoices found,Nenhuma fatura pendente encontrada,
No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,Nenhuma fatura pendente encontrada para o {0} {1} que qualifica os filtros que você especificou.,
No outstanding invoices require exchange rate revaluation,Nenhuma fatura pendente requer reavaliação da taxa de câmbio,
No reviews yet,Ainda não há comentários,
No views yet,Ainda sem vistas,
Non stock items,Itens não estocáveis,
Not Allowed,Não Desejados,
Not allowed to create accounting dimension for {0},Não é permitido criar dimensão contábil para {0},
Not permitted. Please disable the Lab Test Template,Não é permitido. Desative o modelo de teste de laboratório,
Note,Nota,
Notes: ,Notas:,
On Converting Opportunity,Sobre a Conversão de Oportunidades,
On Purchase Order Submission,No Envio do Pedido,
On Sales Order Submission,No Envio da Ordem do Cliente,
On Task Completion,Na Conclusão da Tarefa,
On {0} Creation,Na Criação de {0},
Only .csv and .xlsx files are supported currently,Somente arquivos.csv e.xlsx são suportados atualmente,
Open,Aberto,
Open Contact,Contato Aberto,
Open Lead,Lead Aberto,
Opening and Closing,Abertura e Fechamento,
Operating Cost as per Work Order / BOM,Custo Operacional Conforme Ordem de Serviço / Lista Técnica,
Order Amount,Valor do Pedido,
Page {0} of {1},Página {0} de {1},
Paid amount cannot be less than {0},O valor pago não pode ser menor que {0},
Parent Company must be a group company,A controladora deve ser uma empresa do grupo,
Passing Score value should be between 0 and 100,O valor da pontuação de aprovação deve estar entre 0 e 100,
Patient History,História do Paciente,
Pause,Pausa,
Pay,Pagar,
Payment Document Type,Tipo de Documento de Pagamento,
Payment Name,Nome do Pagamento,
Pending,Pendente,
Performance,Atuação,
Period based On,Período baseado em,
Perpetual inventory required for the company {0} to view this report.,Inventário perpétuo necessário para a empresa {0} exibir este relatório.,
Phone,Telefone,
Pick List,Lista de Escolhas,
Plaid authentication error,Erro de autenticação da manta,
Plaid public token error,Erro de token público de xadrez,
Plaid transactions sync error,Erro de sincronização de transações de xadrez,
Please check the error log for details about the import errors,Por favor verifique o log de erros para detalhes sobre os erros de importação.,
Please create <b>DATEV Settings</b> for Company <b>{}</b>.,Crie <b>configurações de DATEV</b> para a empresa <b>{}</b>.,
Please create adjustment Journal Entry for amount {0} ,Crie um lançamento contábil manual para o valor {0},
Please do not create more than 500 items at a time,Por favor não crie mais de 500 itens de cada vez,
Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Insira a <b>Conta de diferença</b> ou defina a <b>Conta de ajuste de estoque</b> padrão para a empresa {0},
Please enter GSTIN and state for the Company Address {0},Por favor digite GSTIN e informe o endereço da empresa {0},
Please enter Item Code to get item taxes,Digite o Código do item para obter os impostos do item,
Please enter Warehouse and Date,Entre o armazém e a data,
Please login as a Marketplace User to edit this item.,Faça o login como um usuário do Marketplace para editar este item.,
Please login as a Marketplace User to report this item.,Faça o login como usuário do Marketplace para relatar este item.,
Please select <b>Template Type</b> to download template,Selecione <b>Tipo</b> de modelo para fazer o download do modelo,
Please select Customer first,Por favor selecione o Cliente primeiro,
Please select Item Code first,Selecione primeiro o código do item,
Please select a Delivery Note,Selecione uma nota de entrega,
Please select a Sales Person for item: {0},Selecione um vendedor para o item: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Selecione outro método de pagamento. Stripe não suporta transações em moeda ';{0}';,
Please select the customer.,Por favor selecione o cliente.,
Please set a Supplier against the Items to be considered in the Purchase Order.,Defina um fornecedor em relação aos itens a serem considerados no pedido de compra.,
Please set account heads in GST Settings for Compnay {0},Por favor defina os cabeçalhos de conta em Configurações de GST para Compnay {0},
Please set an email id for the Lead {0},Por favor defina um email para o Lead {0},
Please set default UOM in Stock Settings,Defina o UOM padrão nas Configurações de estoque,
Please set filter based on Item or Warehouse due to a large amount of entries.,Defina o filtro com base no Item ou no Armazém devido a uma grande quantidade de entradas.,
Please set up the Campaign Schedule in the Campaign {0},Por Favor Configure o Calendário de Campanha na Campanha {0},
Please set valid GSTIN No. in Company Address for company {0},Defina o número GSTIN válido no endereço da empresa para a empresa {0},
Please set {0},Defina {0},customer
Please setup a default bank account for company {0},Por favor configure uma conta bancária padrão para a empresa {0},
Please specify,Por favor especifique,
Please specify a {0},Por favor especifique um {0},lead
Printing,Impressão,
Priority,Prioridade,
Priority has been changed to {0}.,A prioridade foi alterada para {0}.,
Priority {0} has been repeated.,A prioridade {0} foi repetida.,
Processing XML Files,Processando Arquivos Xml,
Profitability,Rentabilidade,
Project,Projeto,
Provide the academic year and set the starting and ending date.,Forneça o ano acadêmico e defina as datas inicial e final.,
Public token is missing for this bank,O token público está em falta neste banco,
Publish,Publicar,
Publish 1 Item,Publicar 1 Item,
Publish Items,Publicar Itens,
Publish More Items,Publicar Mais Itens,
Publish Your First Items,Publique Seus Primeiros Itens,
Publish {0} Items,Publicar {0} Itens,
Published Items,Itens Publicados,
Purchase Invoice cannot be made against an existing asset {0},A fatura de compra não pode ser feita com relação a um ativo existente {0},
Purchase Invoices,Faturas de Compra,
Purchase Orders,Ordens de Compra,
Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,O recibo de compra não possui nenhum item para o qual a opção Retain Sample esteja ativada.,
Purchase Return,Devolução de Compra,
Qty of Finished Goods Item,Quantidade de Item de Produtos Acabados,
Quality Inspection required for Item {0} to submit,Inspeção de qualidade necessária para o item {0} enviar,
Quantity to Manufacture,Quantidade a Fabricar,
Quantity to Manufacture can not be zero for the operation {0},A quantidade a fabricar não pode ser zero para a operação {0},
Quarterly,Trimestralmente,
Queued,Em Fila,
Quick Entry,Entrada Rápida,
Quiz {0} does not exist,Questionário {0} não existe,
Quotation Amount,Valor da Cotação,
Rate or Discount is required for the price discount.,Taxa ou desconto é necessário para o desconto no preço.,
Reason,Motivo,
Reconcile Entries,Reconciliar Entradas,
Reconcile this account,Reconciliar esta conta,
Reconciled,Reconciliado,
Recruitment,Recrutamento,
Red,Vermelho,
Refreshing,Atualizando,
Release date must be in the future,Data de lançamento deve estar no futuro,
Relieving Date must be greater than or equal to Date of Joining,A Data de Alívio deve ser maior ou igual à Data de Ingresso,
Rename,Renomear,
Rename Not Allowed,Renomear Não Permitido,
Report Item,Item de Relatorio,
Report this Item,Denunciar este item,
Reserved Qty for Subcontract: Raw materials quantity to make subcontracted items.,Quantidade reservada para subcontratação: quantidade de matérias-primas para fazer itens subcontratados.,
Reset,Redefinir,
Reset Service Level Agreement,Redefinir Acordo de Nível de Serviço,
Resetting Service Level Agreement.,Redefinindo o Acordo de Nível de Serviço.,
Return amount cannot be greater unclaimed amount,O valor da devolução não pode ser maior que o valor não reclamado,
Review,Reveja,
Room,Quarto,
Room Type,Tipo de Quarto,
Row # ,Linha #,
Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Linha nº {0}: o Warehouse aceito e o Warehouse do fornecedor não podem ser iguais,
Row #{0}: Cannot delete item {1} which has already been billed.,Linha # {0}: não é possível excluir o item {1} que já foi faturado.,
Row #{0}: Cannot delete item {1} which has already been delivered,Linha # {0}: não é possível excluir o item {1} que já foi entregue,
Row #{0}: Cannot delete item {1} which has already been received,Linha # {0}: não é possível excluir o item {1} que já foi recebido,
Row #{0}: Cannot delete item {1} which has work order assigned to it.,Linha # {0}: Não é possível excluir o item {1} que possui uma ordem de serviço atribuída a ele.,
Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,Linha nº {0}: não é possível excluir o item {1} atribuído ao pedido de compra do cliente.,
Row #{0}: Cannot select Supplier Warehouse while suppling raw materials to subcontractor,Linha nº {0}: não é possível selecionar o armazém do fornecedor ao fornecer matérias-primas ao subcontratado,
Row #{0}: Cost Center {1} does not belong to company {2},Linha # {0}: o centro de custo {1} não pertence à empresa {2},
Row #{0}: Operation {1} is not completed for {2} qty of finished goods in Work Order {3}. Please update operation status via Job Card {4}.,Linha # {0}: a operação {1} não está concluída para {2} quantidade de produtos acabados na Ordem de Serviço {3}. Por favor atualize o status da operação através do Job Card {4}.,
Row #{0}: Payment document is required to complete the transaction,Linha # {0}: documento de pagamento é necessário para concluir a transação,
Row #{0}: Serial No {1} does not belong to Batch {2},Linha # {0}: o número de série {1} não pertence ao lote {2},
Row #{0}: Service End Date cannot be before Invoice Posting Date,Linha # {0}: a data de término do serviço não pode ser anterior à data de lançamento da fatura,
Row #{0}: Service Start Date cannot be greater than Service End Date,Linha # {0}: a data de início do serviço não pode ser maior que a data de término do serviço,
Row #{0}: Service Start and End Date is required for deferred accounting,Linha nº {0}: a data de início e término do serviço é necessária para a contabilidade diferida,
Row {0}: Invalid Item Tax Template for item {1},Linha {0}: modelo de imposto sobre itens inválido para o item {1},
Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Linha {0}: Quantidade não disponível para {4} no depósito {1} no momento da postagem da entrada ({2} {3}),
Row {0}: user has not applied the rule {1} on the item {2},Linha {0}: o usuário não aplicou a regra {1} no item {2},
Row {0}:Sibling Date of Birth cannot be greater than today.,Linha {0}: a data de nascimento do irmão não pode ser maior que hoje.,
Row({0}): {1} is already discounted in {2},Linha ({0}): {1} já está com desconto em {2},
Rows Added in {0},Linhas Adicionadas Em {0},
Rows Removed in {0},Linhas Removidas Em {0},
Save,Salvar,
Save Item,Salvar Item,
Saved Items,Itens Salvos,
Search Items ...,Pesquisar Itens...,
Search for a payment,Procurar por um pagamento,
Search for anything ...,Procurar por qualquer coisa...,
Search results for,Buscar resultados para,
Select All,Selecionar Tudo,
Select Difference Account,Selecione Uma Conta de Diferença,
Select a Default Priority.,Selecione Uma Prioridade Padrão.,
Select a company,Selecione uma empresa,
Select finance book for the item {0} at row {1},Selecione o livro contábil para o item {0} na linha {1},
Select only one Priority as Default.,Selecione apenas uma prioridade como padrão.,
Seller Information,Informações do Vendedor,
Send,Enviar,
Send a message,Envie uma mensagem,
Sending,Enviando,
Sends Mails to lead or contact based on a Campaign schedule,Envia e-mails para Leads ou contatos baseado em um cronograma da campanha,
Serial Number Created,Número de Série Criado,
Serial Numbers Created,Números de Série Criados,
Serial no(s) required for serialized item {0},Número (s) de série requerido para o item serializado {0},
Series,Série,
Server Error,Erro de Servidor,
Service Level Agreement has been changed to {0}.,O Acordo de Nível de Serviço foi alterado para {0}.,
Service Level Agreement was reset.,O Contrato de Nível de Serviço foi redefinido.,
Service Level Agreement with Entity Type {0} and Entity {1} already exists.,O Acordo de Nível de Serviço com o Tipo de Entidade {0} e a Entidade {1} já existe.,
Set,Definir,
Set Meta Tags,Definir Meta Tags,
Set {0} in company {1},Defina {0} na empresa {1},
Setup,Configuração,
Setup Wizard,Assistente de Configuração,
Shift Management,Gerenciamento de Turno,
Show Future Payments,Mostrar Pagamentos Futuros,
Show Linked Delivery Notes,Mostrar Notas de Entrega Vinculadas,
Show Sales Person,Mostrar Vendedor,
Show Stock Ageing Data,Mostrar Dados de Estoque,
Show Warehouse-wise Stock,Mostrar Estoque Em Armazém,
Size,Tamanho,
Something went wrong while evaluating the quiz.,Algo deu errado ao avaliar o quiz.,
Sr,Sr,
Start,Iniciar,
Start Date cannot be before the current date,Data de início não pode ser anterior à data atual,
Start Time,Horário de Início,
Status,Status,
Status must be Cancelled or Completed,O status deve ser cancelado ou concluído,
Stock Balance Report,Relatório de Balanço de Estoque,
Stock Entry has been already created against this Pick List,A entrada de estoque já foi criada para esta lista de seleção,
Stock Ledger ID,ID do Razão de Estoque,
Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,O valor do estoque ({0}) e o saldo da conta ({1}) estão fora de sincronia para a conta {2} e são armazéns vinculados.,
Stores - {0},Lojas - {0},
Student with email {0} does not exist,Aluno com email {0} não existe,
Submit Review,Enviar Revisão,
Submitted,Enviado,
Supplier Addresses And Contacts,Contatos e Endereços de Fornecedores,
Synchronize this account,Sincronize esta conta,
Tag,Tag,
Target Location is required while receiving Asset {0} from an employee,O local de destino é necessário ao receber o ativo {0} de um funcionário,
Target Location is required while transferring Asset {0},O local de destino é necessário ao transferir o ativo {0},
Target Location or To Employee is required while receiving Asset {0},O local de destino ou o funcionário é necessário ao receber o ativo {0},
Task's {0} End Date cannot be after Project's End Date.,A data de término da tarefa {0} não pode ser posterior à data de término do projeto.,
Task's {0} Start Date cannot be after Project's End Date.,A data de início da tarefa {0} não pode ser posterior à data de término do projeto.,
Tax Account not specified for Shopify Tax {0},Conta Fiscal não especificada para o Shopify Tax {0},
Tax Total,Total do Imposto,
Template,Modelo,
The Campaign '{0}' already exists for the {1} '{2}',A campanha ';{0}'; já existe para o {1} ';{2}';,
The difference between from time and To Time must be a multiple of Appointment,A diferença entre time e Time deve ser um múltiplo de Compromisso,
The field Asset Account cannot be blank,O campo Conta do ativo não pode ficar em branco,
The field Equity/Liability Account cannot be blank,O campo Conta do patrimônio líquido / passivo não pode ficar em branco,
The following serial numbers were created: <br><br> {0},Os seguintes números de série foram criados: <br><br> {0},
The parent account {0} does not exists in the uploaded template,A conta pai {0} não existe no modelo enviado,
The question cannot be duplicate,A pergunta não pode ser duplicada,
The selected payment entry should be linked with a creditor bank transaction,A entrada de pagamento selecionada deve estar vinculada a uma transação bancária do credor,
The selected payment entry should be linked with a debtor bank transaction,A entrada de pagamento selecionada deve estar vinculada a uma transação bancária devedora,
The total allocated amount ({0}) is greated than the paid amount ({1}).,O montante total alocado ({0}) é maior do que o valor pago ({1}).,
This Service Level Agreement is specific to Customer {0},Este Acordo de Nível de Serviço é específico para o Cliente {0},
This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,Esta ação desvinculará esta conta de qualquer serviço externo que integre o ERPNext às suas contas bancárias. Não pode ser desfeito. Você está certo ?,
This bank account is already synchronized,Esta conta bancária já está sincronizada,
This bank transaction is already fully reconciled,Esta transação bancária já está totalmente reconciliada,
This page keeps track of items you want to buy from sellers.,Esta página acompanha os itens que você deseja comprar dos vendedores.,
This page keeps track of your items in which buyers have showed some interest.,Esta página acompanha seus itens nos quais os compradores demonstraram algum interesse.,
Thursday,Quinta-feira,
Title,Título,
"To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.","Para permitir o excesso de faturamento, atualize o &quot;Over the Billing Allowance&quot; em Accounts Settings ou no Item.",
"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","Para permitir o recebimento / entrega excedente, atualize &quot;Recebimento em excesso / Fornecimento de remessa&quot; em Configurações de estoque ou no Item.",
Total,Total,
Total Payment Request amount cannot be greater than {0} amount,O valor total da solicitação de pagamento não pode ser maior que o valor {0},
Total payments amount can't be greater than {},O valor total dos pagamentos não pode ser maior que {},
Totals,Totais,
Transactions already retreived from the statement,Transações já recuperadas da declaração,
Transfer Material to Supplier,Transferência de Material Para Fornecedor,
Transport Receipt No and Date are mandatory for your chosen Mode of Transport,O recibo de transporte não e a data são obrigatórios para o seu modo de transporte escolhido,
Tuesday,Terça-feira,
Type,Tipo,
Unable to find the time slot in the next {0} days for the operation {1}.,Não foi possível encontrar o horário nos próximos {0} dias para a operação {1}.,
Unable to update remote activity,Não é possível atualizar a atividade remota,
Unknown Caller,Chamador Desconhecido,
Unlink external integrations,Desvincular integrações externas,
Unpublish Item,Cancelar Publicação de Item,
Unreconciled,Não Reconciliado,
Unsupported GST Category for E-Way Bill JSON generation,Categoria GST não suportada para geração JSON Bill E-Way,
Update,Atualizar,
Update Details,Detalhes da Atualização,
Update Taxes for Items,Atualizar Impostos Para Itens,
"Upload a bank statement, link or reconcile a bank account","Carregar extrato bancário, vincular ou reconciliar uma conta bancária",
Upload a statement,Carregar uma declaração,
Use a name that is different from previous project name,Use um nome diferente do nome do projeto anterior,
User {0} is disabled,Usuário {0} está desativado,
Users and Permissions,Usuários e Permissões,
Valuation Rate required for Item {0} at row {1},Taxa de avaliação necessária para o item {0} na linha {1},
Values Out Of Sync,Valores Fora de Sincronia,
Vehicle Type is required if Mode of Transport is Road,O tipo de veículo é obrigatório se o modo de transporte for rodoviário,
Vendor Name,Nome do Vendedor,
Verify Email,Verificar E-mail,
View,Visão,
View all issues from {0},Ver todas as edições de {0},
View call log,Visualizar log de chamadas,
Warehouse,Armazém,
Warehouse not found against the account {0},Armazém não encontrado na conta {0},
Welcome to {0},Bem-vindo Ao {0},
Why do think this Item should be removed?,Por que você acha que esse item deve ser removido?,
Work Order {0}: Job Card not found for the operation {1},Ordem de Serviço {0}: Cartão de Trabalho não encontrado para a operação {1},
Workday {0} has been repeated.,A jornada de trabalho {0} foi repetida.,
XML Files Processed,Arquivos XML processados,
Year,Ano,
Yearly,Anualmente,
You,Você,
You are not allowed to enroll for this course,Você não tem permissão para se inscrever neste curso,
You are not enrolled in program {0},Você não está inscrito no programa {0},
You can Feature upto 8 items.,Você pode destacar até 8 itens.,
You can also copy-paste this link in your browser,Você também pode copiar e colar este link no seu navegador,
You can publish upto 200 items.,Você pode publicar até 200 itens.,
You have to enable auto re-order in Stock Settings to maintain re-order levels.,Você precisa habilitar a reordenação automática nas Configurações de estoque para manter os níveis de reordenamento.,
You must be a registered supplier to generate e-Way Bill,Você deve ser um fornecedor registrado para gerar e-Way Bill,
You need to login as a Marketplace User before you can add any reviews.,Você precisa fazer login como usuário do Marketplace antes de poder adicionar comentários.,
Your Featured Items,Seus Itens Em Destaque,
Your Items,Seus Itens,
Your Profile,Seu Perfil,
Your rating:,Sua avaliação:,
and,e,
e-Way Bill already exists for this document,Bill e-Way já existe para este documento,
woocommerce - {0},woocommerce - {0},
{0} Coupon used are {1}. Allowed quantity is exhausted,{0} o cupom usado é {1}. a quantidade permitida está esgotada,
{0} Name,{0} Nome,
{0} Operations: {1},{0} Operações: {1},
{0} bank transaction(s) created,{0} transações bancárias criadas,
{0} bank transaction(s) created and {1} errors,{0} transacções bancárias criadas e {1} erros,
{0} can not be greater than {1},{0} não pode ser maior que {1},
{0} conversations,{0} conversas,
{0} is not a company bank account,{0} não é uma conta bancária da empresa,
{0} is not a group node. Please select a group node as parent cost center,{0} não é um nó do grupo. Selecione um nó de grupo como centro de custo pai,
{0} is not the default supplier for any items.,{0} não é o fornecedor padrão para nenhum item.,
{0} is required,{0} é necessário,
{0}: {1} must be less than {2},{0}: {1} deve ser menor que {2},
{} is required to generate E-Way Bill JSON,{} é necessário para gerar e-Way Bill JSON,
"Invalid lost reason {0}, please create a new lost reason","Motivo perdido perdido {0}, crie um novo motivo perdido",
Profit This Year,Lucro Este Ano,
Total Expense,Custo Total,
Total Expense This Year,Despesa Total Este Ano,
Total Income,Renda Total,
Total Income This Year,Renda Total Este Ano,
Barcode,Código de Barras,
Bold,Negrito,
Center,Centro,
Clear,Limpar,
Comment,Comentário,
Comments,Comentários,
DocType,DocType,
Download,Baixar,
Left,Saiu,
Link,Link,
New,Novo,
Not Found,Não Encontrado,
Print,Impressão,
Reference Name,Nome de Referência,
Refresh,Atualizar,
Success,Sucesso,
Time,Tempo,
Value,Valor,
Actual,Real,
Add to Cart,Adicionar Ao Carrinho,
Days Since Last Order,Dias Desde a Última Compra,
In Stock,Em Estoque,
Mode Of Payment,Forma de Pagamento,
No students Found,Nenhum Aluno Encontrado,
Not in Stock,Esgotado,
Please select a Customer,Selecione um Cliente,
Received From,Recebido De,
Sales Person,Vendedor,
To date cannot be before From date,Até o momento não pode ser antes a partir da data,
Write Off,Abatimento,
{0} Created,{0} Criado,
Email Id,Email,
No,Não,
Reference Doctype,DocType de Referência,
User Id,ID do Usuário,
Yes,Sim,
Actual ,Real ,
Add to cart,Adicionar ao carrinho,
Budget,Orçamento,
Chart of Accounts,Plano de Contas,
Customer database.,Banco de Dados de Clientes,
Days Since Last order,Dias desde a última compra,
Download as JSON,Baixe Como Json,
End date can not be less than start date,Data final não pode ser inferior a data de início,
For Default Supplier (Optional),Para Fornecedor Padrão (opcional),
From date cannot be greater than To date,A partir de data não pode ser maior que a Data,
Group by,Agrupar Por,
In stock,Em Estoque,
Item name,Nome do item,
Minimum Qty,Qtd Mínima,
More details,Mais detalhes,
Nature of Supplies,Natureza Dos Suprimentos,
No Items found.,Nenhum item encontrado.,
No students found,Nenhum Aluno Encontrado,
Not in stock,Esgotado,
Not permitted,Não Permitido,
Open Issues ,Incidentes Em Aberto,
Open Projects ,Abrir Projetos,
Open To Do ,Tarefas Abertas,
Operation Id,ID da Operação,
Partially ordered,Parcialmente Comprados,
Please select company first,Por favor selecione Empresa primeiro,
Please select patient,Por favor selecione Paciente,
Printed On ,Impresso Em,
Projected qty,Qtde Projetada,
Sales person,Vendedor,
Serial No {0} Created,Nº de Série {0} Criado,
Source Location is required for the Asset {0},O local de origem é obrigatório para o ativo {0},
Tax Id,CPF/CNPJ,
To Time,Até o Horário,
To date cannot be before from date,Até o momento não pode ser antes a partir da data,
Total Taxable value,Valor tributável total,
Upcoming Calendar Events ,Próximos Eventos no Calendário,
Value or Qty,Valor Ou Qtde,
Variance ,Variação,
Variant of,Variante De,
Write off,Abatimento,
hours,horas,
received from,Recebido de,
to,para,
Cards,Postais,
Percentage,Percentagem,
Failed to setup defaults for country {0}. Please contact support@erpnext.com,Falha na configuração dos padrões para o país {0}. Entre em contato com support@erpnext.com,
Row #{0}: Item {1} is not a Serialized/Batched Item. It cannot have a Serial No/Batch No against it.,Linha nº {0}: o item {1} não é um item serializado / em lote. Não pode ter um número de série / lote não.,
Please set {0},Defina {0},
Please set {0},Defina {0},supplier
Draft,Rascunho,"docstatus,=,0"
Cancelled,Cancelado,"docstatus,=,2"
Please setup Instructor Naming System in Education > Education Settings,Configure o Sistema de Nomenclatura do Instrutor em Educação&gt; Configurações da Educação,
Please set Naming Series for {0} via Setup > Settings > Naming Series,Defina Naming Series Como {0} Em Configuração&gt; Configurações&gt; Naming Series,
UOM Conversion factor ({0} -> {1}) not found for item: {2},Fator de conversão de UOM ({0} -&gt; {1}) não encontrado para o item: {2},
Item Code > Item Group > Brand,Código do Item&gt; Grupo de Itens&gt; Marca,
Customer > Customer Group > Territory,Cliente&gt; Grupo de Clientes&gt; Território,
Supplier > Supplier Type,Fornecedor&gt; Tipo de Fornecedor,
The value of {0} differs between Items {1} and {2},O valor de {0} difere entre Itens {1} e {2},
Auto Fetch,Auto Fetch,
Fetch Serial Numbers based on FIFO,Buscar números de série com base em FIFO,
"Outward taxable supplies(other than zero rated, nil rated and exempted)","Fornecimentos tributáveis externos (diferente de zero, zero e isentos)",
"To allow different rates, disable the {0} checkbox in {1}.","Para permitir taxas diferentes, desative a caixa de seleção {0} em {1}.",
Asset{} {assets_link} created for {},Recurso {} {assets_link} criado para {},
Row {}: Asset Naming Series is mandatory for the auto creation for item {},Linha {}: a série de nomenclatura de ativos é obrigatória para a criação automática do item {},
Assets not created for {0}. You will have to create asset manually.,Recursos não criados para {0}. Você terá que criar o ativo manualmente.,
{0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} possui entradas contábeis na moeda {2} para a empresa {3}. Selecione uma conta a receber ou a pagar com a moeda {2}.,
Invalid Account,Conta Inválida,
Purchase Order Required,Pedido de Compra Obrigatório,
Purchase Receipt Required,Recibo de Compra Obrigatório,
Account Missing,Falta de Conta,
Requested,Solicitado,
Partially Paid,Parcialmente Pago,
Invalid Account Currency,Moeda de Conta Inválida,
"Row {0}: The item {1}, quantity must be positive number","Linha {0}: o item {1}, a quantidade deve ser um número positivo",
"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Defina {0} para Item em lote {1}, que é usado para definir {2} ao Enviar.",
Expiry Date Mandatory,Data de Expiração Obrigatória,
Variant Item,Item Variante,
BOM 1 {0} and BOM 2 {1} should not be same,BOM 1 {0} e BOM 2 {1} não devem ser iguais,
Note: Item {0} added multiple times,Nota: Item {0} adicionado várias vezes,
YouTube,Youtube,
Vimeo,Vimeo,
Publish Date,Data de Publicação,
Duration,Duração,
Advanced Settings,Configurações Avançadas,
Path,Caminho,
Components,Componentes,
Verified By,Verificado Por,
Invalid naming series (. missing) for {0},Série de nomenclatura inválida (. Ausente) para {0},
Filter Based On,Filtro Baseado Em,
Reqd by date,Entrega Esperada em,
Manufacturer Part Number <b>{0}</b> is invalid,Número da peça do fabricante <b>{0}</b> é inválido,
Invalid Part Number,Número de Peça Inválido,
Select atleast one Social Media from Share on.,Selecione pelo menos uma mídia social em Compartilhar.,
Invalid Scheduled Time,Hora Programada Inválida,
Length Must be less than 280.,O comprimento deve ser inferior a 280.,
Error while POSTING {0},Erro ao POSTAR {0},
"Session not valid, Do you want to login?",Sessão inválida. Quer fazer o login?,
Session Active,Sessão Ativa,
Session Not Active. Save doc to login.,Sessão não ativa. Salve o documento para fazer o login.,
Error! Failed to get request token.,Erro! Falha ao obter o token de solicitação.,
Invalid {0} or {1},{0} ou {1} inválido,
Error! Failed to get access token.,Erro! Falha ao obter token de acesso.,
Invalid Consumer Key or Consumer Secret Key,Chave do Consumidor Ou Chave Secreta do Consumidor Inválida,
Your Session will be expire in ,Sua sessão irá expirar em,
 days., dias.,
Session is expired. Save doc to login.,A sessão expirou. Salve o documento para fazer o login.,
Error While Uploading Image,Erro Ao Enviar Imagem,
You Didn't have permission to access this API,Você não tinha permissão para acessar esta API,
Valid Upto date cannot be before Valid From date,A data de atualização válida não pode ser anterior à data de início de validade,
Valid From date not in Fiscal Year {0},Válido desde a data não no ano fiscal {0},
Valid Upto date not in Fiscal Year {0},Data válida até a data não no ano fiscal {0},
Group Roll No,Grupo Roll No,
Maintain Same Rate Throughout Sales Cycle,Manter o Mesmo Preço Durante Todo o Ciclo de Vendas,
"Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.","Linha {1}: Quantidade ({0}) não pode ser uma fração. Para permitir isso, desative ';{2}'; no UOM {3}.",
Must be Whole Number,Deve Ser Número Inteiro,
Please setup Razorpay Plan ID,Por favor configure o ID do Plano Razorpay,
Contact Creation Failed,Falha na Criação do Contato,
Leaves Expired,Folhas Expiradas,
Row #{}: {} of {} should be {}. Please modify the account or select a different account.,Linha nº {}: {} de {} deve ser {}. Modifique a conta ou selecione uma conta diferente.,
Row #{}: Please asign task to a member.,Linha # {}: Atribua tarefa a um membro.,
Process Failed,Falha no Processo,
Tally Migration Error,Erro de Migração de Tally,
Please set Warehouse in Woocommerce Settings,Defina o Armazém Nas Configurações de Comércio do Woocommerce,
Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Linha {0}: Delivery Warehouse ({1}) e Customer Warehouse ({2}) não podem ser iguais,
Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Linha {0}: a data de vencimento na tabela Condições de pagamento não pode ser anterior à data de lançamento,
Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,Não é possível encontrar {} para o item {}. Defina o mesmo no Item Master ou Configurações de estoque.,
Row #{0}: The batch {1} has already expired.,Linha nº {0}: o lote {1} já expirou.,
Start Year and End Year are mandatory,Ano inicial e ano final são obrigatórios,
GL Entry,Lançamento GL,
Cannot allocate more than {0} against payment term {1},Não é possível alocar mais de {0} nas condições de pagamento {1},
The root account {0} must be a group,A conta raiz {0} deve ser um grupo,
Shipping rule not applicable for country {0} in Shipping Address,A regra de envio não se aplica ao país {0} no endereço de entrega,
Get Payments from,Receba pagamentos de,
Set Shipping Address or Billing Address,Definir Endereço de Entrega Ou Endereço de Cobrança,
Consultation Setup,Configuração de Consulta,
Fee Validity,Validade da Tarifa,
Laboratory Setup,Configuração do Laboratório,
Dosage Form,Formulário de Dosagem,
Records and History,Registros e História,
Patient Medical Record,Registro Médico do Paciente,
Rehabilitation,Reabilitação,
Exercise Type,Tipo de Exercício,
Exercise Difficulty Level,Nível de Dificuldade de Exercício,
Therapy Type,Tipo de Terapia,
Therapy Plan,Plano de Terapia,
Therapy Session,Sessão de Terapia,
Motor Assessment Scale,Escala de Avaliação Motora,
[Important] [ERPNext] Auto Reorder Errors,[Importante] [ERPNext] Erros de reordenamento automático,
"Regards,","Saudações,",
The following {0} were created: {1},Os seguintes {0} foram criados: {1},
Work Orders,Ordens de Trabalho,
The {0} {1} created sucessfully,O {0} {1} foi criado com sucesso,
Work Order cannot be created for following reason: <br> {0},A Ordem de Serviço não pode ser criada pelo seguinte motivo:<br> {0},
Add items in the Item Locations table,Adicionar itens na tabela de localização de itens,
Update Current Stock,Atualizar Estoque Atual,
"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Retain Sample é baseado no lote, por favor, marque Has Batch no para reter a amostra do item",
Empty,Vazio,
Currently no stock available in any warehouse,Atualmente nenhum estoque disponível em qualquer armazém,
BOM Qty,BOM Qtd,
Time logs are required for {0} {1},Registros de tempo são necessários para {0} {1},
Total Completed Qty,Total de Qtd Concluído,
Qty to Manufacture,Qtde Para Fabricar,
Social Media Campaigns,Campanhas de Mídia Social,
From Date can not be greater than To Date,A data inicial não pode ser maior que a data final,
Please set a Customer linked to the Patient,Defina um cliente vinculado ao paciente,
Customer Not Found,Cliente Não Encontrado,
Please Configure Clinical Procedure Consumable Item in ,Configure o Item Consumível de Procedimento Clínico Em,
Missing Configuration,Configuração Ausente,
Out Patient Consulting Charge Item,Item de Cobrança de Consulta Ao Paciente,
Inpatient Visit Charge Item,Item de Cobrança de Visita a Pacientes Internados,
OP Consulting Charge,Op Consulting Charge,
Inpatient Visit Charge,Taxa de Visita a Pacientes Internados,
Appointment Status,Status de Compromisso,
Test: ,Teste:,
Collection Details: ,Detalhes da Coleção:,
{0} out of {1},{0} de {1},
Select Therapy Type,Selecione o Tipo de Terapia,
{0} sessions completed,{0} sessões concluídas,
{0} session completed,{0} sessão concluída,
 out of {0},  de {0},
Therapy Sessions,Sessões de Terapia,
Add Exercise Step,Adicionar Etapa de Exercício,
Edit Exercise Step,Editar Etapa do Exercício,
Patient Appointments,Compromissos do Paciente,
Item with Item Code {0} already exists,Item com código de item {0} já existe,
Registration Fee cannot be negative or zero,Taxa de registro não pode ser negativa ou zero,
Configure a service Item for {0},Configure um item de serviço para {0},
Temperature: ,Temperatura:,
Pulse: ,Pulso:,
Respiratory Rate: ,Frequência Respiratória:,
BP: ,BP:,
BMI: ,IMC:,
Note: ,Nota:,
Check Availability,Verificar Disponibilidade,
Please select Patient first,Selecione primeiro o paciente,
Please select a Mode of Payment first,Selecione um modo de pagamento primeiro,
Please set the Paid Amount first,Defina o valor pago primeiro,
Not Therapies Prescribed,Não São Terapias Prescritas,
There are no Therapies prescribed for Patient {0},Não há terapias prescritas para o paciente {0},
Appointment date and Healthcare Practitioner are Mandatory,A data da nomeação e o profissional de saúde são obrigatórios,
No Prescribed Procedures found for the selected Patient,Nenhum procedimento prescrito encontrado para o paciente selecionado,
Please select a Patient first,Selecione um paciente primeiro,
There are no procedure prescribed for ,Não há procedimento prescrito para,
Prescribed Therapies,Terapias Prescritas,
Appointment overlaps with ,Compromisso sobrepõe-se a,
{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} tem compromisso agendado para {1} às {2} tendo {3} minuto (s) de duração.,
Appointments Overlapping,Compromissos Sobrepostos,
Consulting Charges: {0},Taxas de Consultoria: {0},
Appointment Cancelled. Please review and cancel the invoice {0},Compromisso cancelado. Reveja e cancele a fatura {0},
Appointment Cancelled.,Compromisso Cancelado.,
Fee Validity {0} updated.,Validade da taxa {0} atualizada.,
Practitioner Schedule Not Found,Agenda do Praticante Não Encontrada,
{0} is on a Half day Leave on {1},{0} está de licença de meio dia em {1},
{0} is on Leave on {1},{0} está de licença em {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} não tem uma agenda de profissional de saúde. Adicione em Healthcare Practitioner,
Healthcare Service Units,Unidades de Serviço de Saúde,
Complete and Consume,Completar e Consumir,
Complete {0} and Consume Stock?,Concluir {0} e Consumir Estoque?,
Complete {0}?,Concluir {0}?,
Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,Quantidade em estoque para iniciar o Procedimento não disponível no Armazém {0}. Você deseja registrar uma entrada de estoque?,
{0} as on {1},{0} como em {1},
Clinical Procedure ({0}):,Procedimento Clínico ({0}):,
Please set Customer in Patient {0},Defina o Cliente no Paciente {0},
Item {0} is not active,O item {0} não está ativo,
Therapy Plan {0} created successfully.,Plano de terapia {0} criado com sucesso.,
Symptoms: ,Sintomas:,
No Symptoms,Sem Sintomas,
Diagnosis: ,Diagnóstico:,
No Diagnosis,Sem Diagnóstico,
Drug(s) Prescribed.,Medicamento (s) Prescrito (s).,
Test(s) Prescribed.,Teste (s) Prescrito (s).,
Procedure(s) Prescribed.,Procedimento (s) Prescrito (s).,
Counts Completed: {0},Contagens Concluídas: {0},
Patient Assessment,Avaliação do Paciente,
Assessments,Assessments,
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Heads (ou grupos) contra o qual as entradas de Contabilidade são feitas e os saldos são mantidos.,
Account Name,Nome da Conta,
Inter Company Account,Conta Intercompanhia,
Parent Account,Conta Superior,
Setting Account Type helps in selecting this Account in transactions.,Definir o Tipo de Conta ajuda na seleção desta Conta nas transações.,
Chargeable,Taxável,
Rate at which this tax is applied,Taxa em que este imposto é aplicado,
Frozen,Congelado,
"If the account is frozen, entries are allowed to restricted users.","Se a conta for congelada, os lançamentos só serão permitidos aos usuários restritos.",
Balance must be,O Saldo deve ser,
Lft,Esq,
Rgt,Dir,
Old Parent,Principal Antigo,
Include in gross,Incluir em bruto,
Auditor,Auditor,
Accounting Dimension,Dimensão Contábil,
Dimension Name,Nome da Dimensão,
Dimension Defaults,Padrões de Dimensão,
Accounting Dimension Detail,Detalhe da Dimensão Contábil,
Default Dimension,Dimensão Padrão,
Mandatory For Balance Sheet,Obrigatório Para o Balanço,
Mandatory For Profit and Loss Account,Obrigatório Para Conta de Lucros e Perdas,
Accounting Period,Período Contábil,
Period Name,Nome do Período,
Closed Documents,Documentos Fechados,
Accounts Settings,Configurações de Contas,
Settings for Accounts,Configurações Para Contas,
Make Accounting Entry For Every Stock Movement,Fazer Lançamento Contábil Para Cada Movimento de Estoque,
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Os usuários com esta função são autorizados a estabelecer contas congeladas e criar / modificar lançamentos contábeis contra contas congeladas,
Determine Address Tax Category From,Determinar a Categoria de Imposto de Endereço De,
Over Billing Allowance (%),Sobre o Abatimento de Cobrança (%),
Credit Controller,Controlador de Crédito,
Check Supplier Invoice Number Uniqueness,Verificar Unicidade de Número de Nota Fiscal do Fornecedor,
Make Payment via Journal Entry,Fazer o Pagamento Via Lançamento no Livro Diário,
Unlink Payment on Cancellation of Invoice,Desvincular Pagamento no Cancelamento da Fatura,
Book Asset Depreciation Entry Automatically,Lançar de Depreciação de Ativos no Livro Automaticamente,
Automatically Add Taxes and Charges from Item Tax Template,Adicionar automaticamente impostos e encargos do modelo de imposto do item,
Automatically Fetch Payment Terms,Buscar Automaticamente Condições de Pagamento,
Show Payment Schedule in Print,Mostrar Horário de Pagamento na Impressão,
Currency Exchange Settings,Configurações de Câmbio,
Allow Stale Exchange Rates,Permitir Taxas de Câmbio Defasadas,
Stale Days,Dias Fechados,
Report Settings,Configurações do Relatório,
Use Custom Cash Flow Format,Use o Formato de Fluxo de Caixa Personalizado,
Allowed To Transact With,Permitido Transacionar Com,
SWIFT number,Número rápido,
Branch Code,Código da Agência,
Address and Contact,Endereço e Contato,
Address HTML,Endereço Html,
Contact HTML,Contato Html,
Data Import Configuration,Configuração de Importação de Dados,
Bank Transaction Mapping,Mapeamento de Transações Bancárias,
Plaid Access Token,Token de Acesso Xadrez,
Company Account,Conta da Empresa,
Account Subtype,Subtipo de Conta,
Is Default Account,É a conta padrão,
Is Company Account,Conta Corporativa,
Party Details,Detalhes do Parceiro,
Account Details,Detalhes da Conta,
IBAN,IBAN,
Bank Account No,Número da Conta Bancária,
Integration Details,Detalhes de Integração,
Integration ID,ID de integração,
Last Integration Date,Última data de integração,
Change this date manually to setup the next synchronization start date,Altere esta data manualmente para configurar a próxima data de início da sincronização,
Mask,Mascarar,
Bank Account Subtype,Subtipo de Conta Bancária,
Bank Account Type,Tipo de Conta Bancária,
Bank Guarantee,Garantia Bancária,
Bank Guarantee Type,Tipo de Garantia Bancária,
Receiving,Recebendo,
Providing,Fornecendo,
Reference Document Name,Nome do Documento de Referência,
Validity in Days,Validade Em Dias,
Bank Account Info,Informações da Conta Bancária,
Clauses and Conditions,Cláusulas e Condições,
Other Details,Outros Detalhes,
Bank Guarantee Number,Número de Garantia Bancária,
Name of Beneficiary,Nome do Beneficiário,
Margin Money,Dinheiro Margem,
Charges Incurred,Taxas Incorridas,
Fixed Deposit Number,Número de Depósito Fixo,
Account Currency,Moeda da Conta,
Select the Bank Account to reconcile.,Selecione a conta bancária para reconciliar.,
Include Reconciled Entries,Incluir Entradas Reconciliadas,
Get Payment Entries,Obter Lançamentos de Pagamentos,
Payment Entries,Lançamentos de Pagamentos,
Update Clearance Date,Atualizar Data Liquidação,
Bank Reconciliation Detail,Detalhe da Conciliação Bancária,
Cheque Number,Número do Cheque,
Cheque Date,Data do Cheque,
Statement Header Mapping,Mapeamento de Cabeçalho de Declaração,
Statement Headers,Cabeçalhos de Declaração,
Transaction Data Mapping,Mapeamento de Dados de Transação,
Mapped Items,Itens Mapeados,
Bank Statement Settings Item,Item de Configurações de Extrato Bancário,
Mapped Header,Cabeçalho Mapeado,
Bank Header,Cabeçalho do Banco,
Bank Statement Transaction Entry,Entrada de Transação de Extrato Bancário,
Bank Transaction Entries,Entradas de Transações Bancárias,
New Transactions,Novas Transações,
Match Transaction to Invoices,Corresponder Transação a Faturas,
Create New Payment/Journal Entry,Criar Novo Pagamento / Entrada no Diário,
Submit/Reconcile Payments,Enviar / Reconciliar Pagamentos,
Matching Invoices,Faturas Correspondentes,
Payment Invoice Items,Itens de Fatura de Pagamento,
Reconciled Transactions,Transações Reconciliadas,
Bank Statement Transaction Invoice Item,Item de Fatura de Transação de Extrato Bancário,
Payment Description,Descrição de Pagamento,
Invoice Date,Data do Faturamento,
invoice,fatura,
Bank Statement Transaction Payment Item,Item de Pagamento de Transação de Extrato Bancário,
outstanding_amount,quantidade_exclusiva,
Payment Reference,Referência de Pagamento,
Bank Statement Transaction Settings Item,Item de Configuração de Transação de Extrato Bancário,
Bank Data,Dados Bancários,
Mapped Data Type,Tipo de Dados Mapeados,
Mapped Data,Dados Mapeados,
Bank Transaction,Transação Bancária,
ACC-BTN-.YYYY.-,ACC-BTN-.YYYY.-,
Transaction ID,ID da Transação,
Unallocated Amount,Total Não Alocado,
Field in Bank Transaction,Campo Em Transação Bancária,
Column in Bank File,Coluna no Arquivo Bancário,
Bank Transaction Payments,Pagamentos de Transações Bancárias,
Control Action,Ação de Controle,
Applicable on Material Request,Aplicável no Pedido de Material,
Action if Annual Budget Exceeded on MR,Ação Se o Orçamento Anual Ultrapassar,
Warn,Avisar,
Ignore,Ignorar,
Action if Accumulated Monthly Budget Exceeded on MR,Ação Se o Orçamento Mensal Acumulado For Excedido Em Mr,
Applicable on Purchase Order,Aplicável no Pedido,
Action if Annual Budget Exceeded on PO,Ação Se o Orçamento Anual Ultrapassar,
Action if Accumulated Monthly Budget Exceeded on PO,Ação Se o Orçamento Mensal Acumulado For Excedido no Po,
Applicable on booking actual expenses,Aplicável na reserva de despesas reais,
Action if Annual Budget Exceeded on Actual,Ação Se o Orçamento Anual Ultrapassar,
Action if Accumulated Monthly Budget Exceeded on Actual,Ação Se Orçamento Mensal Acumulado Excedido Em Reais,
Budget Accounts,Contas do Orçamento,
Budget Account,Conta do Orçamento,
Budget Amount,Valor do Orçamento,
C-Form,Formulário-c,
ACC-CF-.YYYY.-,ACC-CF-.YYYY.-,
C-Form No,Nº do Formulário-c,
Received Date,Data de Recebimento,
Quarter,Trimestre,
I,I,
II,II,
III,III,
IV,IV,
C-Form Invoice Detail,Detalhe Fatura do Formulário-c,
Invoice No,Nota Nº,
Cash Flow Mapper,Mapeador de Fluxo de Caixa,
Section Name,Nome da Seção,
Section Header,Cabeçalho da Seção,
Section Leader,Líder da Seção,
e.g Adjustments for:,por exemplo ajustes para:,
Section Subtotal,Subtotal de Seção,
Section Footer,Rodapé de Seção,
Position,Posição,
Cash Flow Mapping,Mapeamento de Fluxo de Caixa,
Select Maximum Of 1,Selecione Máximo de 1,
Is Finance Cost,O Custo Das Finanças,
Is Working Capital,É capital de trabalho,
Is Finance Cost Adjustment,É o Ajuste de Custo Financeiro,
Is Income Tax Liability,É Responsabilidade Fiscal de Renda,
Is Income Tax Expense,É a despesa de imposto de renda,
Cash Flow Mapping Accounts,Contas de Mapeamento de Fluxo de Caixa,
account,Conta,
Cash Flow Mapping Template,Modelo de Mapeamento de Fluxo de Caixa,
Cash Flow Mapping Template Details,Detalhes do Modelo de Mapeamento de Fluxo de Caixa,
POS-CLO-,POS-CLO-,
Custody,Custódia,
Net Amount,Valor Líquido,
Cashier Closing Payments,Pagamentos de Fechamento do Caixa,
Chart of Accounts Importer,Importador de Plano de Contas,
Import Chart of Accounts from a csv file,Importar Plano de Contas de um arquivo csv,
Attach custom Chart of Accounts file,Anexar arquivo de Plano de Contas personalizado,
Chart Preview,Visualização de Gráfico,
Chart Tree,Árvore de gráfico,
Cheque Print Template,Template Para Impressão de Cheques,
Has Print Format,Tem Formato de Impressão,
Primary Settings,Definições Principais,
Cheque Size,Tamanho da Folha de Cheque,
Regular,Regular,
Starting position from top edge,Posição de início a partir do limite superior,
Cheque Width,Largura do Cheque,
Cheque Height,Altura do Cheque,
Scanned Cheque,Cheque Escaneado,
Is Account Payable,É Uma Conta a Pagar,
Distance from top edge,Distância da margem superior,
Distance from left edge,Distância da margem esquerda,
Message to show,Mensagem a mostrar,
Date Settings,Configurações de Data,
Starting location from left edge,Localização inicial a partir do lado esquerdo,
Payer Settings,Configurações do Pagador,
Width of amount in word,Largura do valor por extenso,
Line spacing for amount in words,Espaçamento entre linhas para o valor por extenso,
Amount In Figure,Total Em Espécie,
Signatory Position,Posição do Signatário,
Closed Document,Documento Fechado,
Track separate Income and Expense for product verticals or divisions.,Acompanhe resultados separada e despesa para verticais de produtos ou divisões.,
Cost Center Name,Nome do Centro de Custo,
Parent Cost Center,Centro de Custo Pai,
lft,Esq,
rgt,rgt,
Coupon Code,Código do Cupom,
Coupon Name,Nome do Cupom,
"e.g. ""Summer Holiday 2019 Offer 20""","por exemplo, &quot;Oferta de férias de verão 2019 20&quot;",
Coupon Type,Tipo de Cupom,
Promotional,Promocional,
Gift Card,Cartão Presente,
unique e.g. SAVE20  To be used to get discount,exclusivo por exemplo SAVE20 Para ser usado para obter desconto,
Validity and Usage,Validade e Uso,
Valid From,Válido De,
Valid Upto,Válido Até,
Maximum Use,Uso Máximo,
Used,Usava,
Coupon Description,Descrição do Cupom,
Discounted Invoice,Fatura Descontada,
Debit to,Débito Para,
Exchange Rate Revaluation,Reavaliação da Taxa de Câmbio,
Get Entries,Receber Entradas,
Exchange Rate Revaluation Account,Conta de Reavaliação da Taxa de Câmbio,
Total Gain/Loss,Ganho / Perda Total,
Balance In Account Currency,Saldo Em Moeda da Conta,
Current Exchange Rate,Taxa de Câmbio Atual,
Balance In Base Currency,Saldo Em Moeda Base,
New Exchange Rate,Nova Taxa de Câmbio,
New Balance In Base Currency,Novo Saldo Em Moeda Base,
Gain/Loss,Ganho / Perda,
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,O **Ano Fiscal** representa um exercício financeiro. Todos os lançamentos contábeis e outras transações principais são rastreadas contra o **Ano Fiscal**.,
Year Name,Nome do Ano,
"For e.g. 2012, 2012-13","Para por exemplo 2012, 2012-13",
Year Start Date,Data do Início do Ano,
Year End Date,Data Final do Ano,
Companies,Empresas,
Auto Created,Criado Automaticamente,
Stock User,Usuário de Estoque,
Fiscal Year Company,Ano Fiscal Empresa,
Debit Amount,Total do Débito,
Credit Amount,Total de Crédito,
Debit Amount in Account Currency,Débito Em Moeda da Conta,
Credit Amount in Account Currency,Crédito Em Moeda da Conta,
Voucher Detail No,Nº do Detalhe do Comprovante,
Is Opening,É Abertura,
Is Advance,É Adiantamento,
To Rename,Renomear,
GST Account,Conta GST,
CGST Account,Conta CGST,
SGST Account,Conta SGST,
IGST Account,Conta IGST,
CESS Account,Conta CESS,
Loan Start Date,Data de Início do Empréstimo,
Loan Period (Days),Período de Empréstimo (dias),
Loan End Date,Data Final do Empréstimo,
Bank Charges,Taxas Bancarias,
Short Term Loan Account,Conta de Empréstimo a Curto Prazo,
Bank Charges Account,Conta Bancária,
Accounts Receivable Credit Account,Conta de Crédito de Contas a Receber,
Accounts Receivable Discounted Account,Conta Com Desconto de Contas a Receber,
Accounts Receivable Unpaid Account,Conta Não Paga de Contas a Receber,
Item Tax Template,Modelo de Impostos Por Item,
Tax Rates,Taxas de Impostos,
Item Tax Template Detail,Detalhe do Modelo de Imposto de Item,
Entry Type,Tipo de Lançamento,
Inter Company Journal Entry,Entrada de Diário Entre Empresas,
Bank Entry,Lançamento Bancário,
Cash Entry,Entrada de Caixa,
Credit Card Entry,Lançamento de Cartão de Crédito,
Contra Entry,Contrapartida de Entrada,
Excise Entry,Lançamento de Impostos,
Write Off Entry,Lançamento de Abatimento,
Opening Entry,Lançamento de Abertura,
ACC-JV-.YYYY.-,ACC-JV-.YYYY.-,
Accounting Entries,Lançamentos Contábeis,
Total Debit,Débito Total,
Total Credit,Crédito Total,
Difference (Dr - Cr),Diferença ( Dr - Cr),
Make Difference Entry,Criar Lançamento de Contrapartida,
Total Amount Currency,Valor Total da Moeda,
Total Amount in Words,Valor Total Por Extenso,
Remark,Observação,
Paid Loan,Empréstimo Pago,
Inter Company Journal Entry Reference,Referência de Entrada de Diário Entre Empresas,
Write Off Based On,Abater Baseado Em,
Get Outstanding Invoices,Obter Notas Pendentes,
Write Off Amount,Valor do Abatimento,
Printing Settings,Configurações de Impressão,
Pay To / Recd From,Pagar Para / Recebido De,
Payment Order,Ordem de Pagamento,
Subscription Section,Seção de Inscrição,
Journal Entry Account,Conta de Lançamento no Livro Diário,
Account Balance,Saldo da Conta,
Party Balance,Saldo do Parceiro,
Accounting Dimensions,Dimensões Contábeis,
If Income or Expense,Se É Receita Ou Despesa,
Exchange Rate,Taxa de Câmbio,
Debit in Company Currency,Débito Em Moeda da Empresa,
Credit in Company Currency,Crédito Em Moeda da Empresa,
Payroll Entry,Entrada de Folha de Pagamento,
Employee Advance,Adiantamento À Colaboradores,
Reference Due Date,Data de Vencimento de Referência,
Loyalty Program Tier,Nível do Programa de Fidelidade,
Redeem Against,Resgatar Contra,
Expiry Date,Data de Validade,
Loyalty Point Entry Redemption,Resgate de Entrada do Ponto de Fidelidade,
Redemption Date,Data de Resgate,
Redeemed Points,Pontos Redimidos,
Loyalty Program Name,Nome do Programa de Fidelidade,
Loyalty Program Type,Tipo de Programa de Fidelidade,
Single Tier Program,Programa de Camada Única,
Multiple Tier Program,Programa de Múltiplos Níveis,
Customer Territory,Território do Cliente,
Auto Opt In (For all customers),Auto Opt In (para todos os clientes),
Collection Tier,Camada de Coleta,
Collection Rules,Regras de Coleta,
Redemption,Redenção,
Conversion Factor,Fator de Conversão,
1 Loyalty Points = How much base currency?,1 Pontos de fidelidade = Quanto de moeda base?,
Expiry Duration (in days),Duração de expiração (em dias),
Help Section,Seção de Ajuda,
Loyalty Program Help,Ajuda do Programa de Fidelidade,
Loyalty Program Collection,Coleção de Programas de Fidelidade,
Tier Name,Nome do Nível,
Minimum Total Spent,Total Mínimo Gasto,
Collection Factor (=1 LP),Fator de Coleta (= 1 Lp),
For how much spent = 1 Loyalty Point,Por quanto gastou = 1 Ponto de fidelidade,
Mode of Payment Account,Modo de Pagamento da Conta,
Default Account,Conta Padrão,
Default account will be automatically updated in POS Invoice when this mode is selected.,A conta padrão será atualizada automaticamente na Fatura POS quando esse modo for selecionado.,
**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.,A **Distribuição Mensal** ajuda-o a distribuir o Orçamento/Meta por vários meses caso o seu negócio seja sazonal.,
Distribution Name,Nome da Distribuição,
Name of the Monthly Distribution,Nome da Distribuição Mensal,
Monthly Distribution Percentages,Percentagens Distribuição Mensal,
Monthly Distribution Percentage,Distribuição Percentual Mensal,
Percentage Allocation,Alocação Percentual,
Create Missing Party,Criar Parceiro Desaparecido,
Create missing customer or supplier.,Criar cliente ou fornecedor faltando.,
Opening Invoice Creation Tool Item,Item de Ferramenta de Criação de Fatura de Abertura,
Temporary Opening Account,Conta de Abertura Temporária,
Party Account,Conta do Parceiro,
Type of Payment,Tipo de Pagamento,
ACC-PAY-.YYYY.-,ACC-PAY-.YYYY.-,
Receive,Receber,
Internal Transfer,Transferência Interna,
Payment Order Status,Status do Pedido de Pagamento,
Payment Ordered,Pagamento Pedido,
Payment From / To,Pagamento de / Para,
Company Bank Account,Conta Bancária da Empresa,
Party Bank Account,Conta Bancária do Parceiro,
Account Paid From,Conta de Origem do Pagamento,
Account Paid To,Recebido na Conta,
Paid Amount (Company Currency),Valor Pago (moeda da Empresa),
Received Amount,Total Recebido,
Received Amount (Company Currency),Total Recebido (moeda da Empresa),
Get Outstanding Invoice,Obter Fatura Pendente,
Payment References,Referências de Pagamento,
Writeoff,Liquidar,
Total Allocated Amount,Total Alocado,
Total Allocated Amount (Company Currency),Total Alocado (moeda da Empresa),
Set Exchange Gain / Loss,Definir Perda/ganho Com Câmbio,
Difference Amount (Company Currency),Total da Diferença (moeda da Empresa),
Write Off Difference Amount,Valor da Diferença do Abatimento,
Deductions or Loss,Dedução Ou Perda,
Payment Deductions or Loss,Deduções Ou Perdas de Pagamento,
Cheque/Reference Date,Data do Cheque/referência,
Payment Entry Deduction,Dedução de Registo de Pagamento,
Payment Entry Reference,Referência de Registo de Pagamento,
Allocated,Alocado,
Payment Gateway Account,Integração Com Api's de Meios de Pagamento,
Payment Account,Conta de Pagamento,
Default Payment Request Message,Mensagem Padrão de Pedido de Pagamento,
PMO-,PMO-,
Payment Order Type,Tipo de Ordem de Pagamento,
Payment Order Reference,Referência de Pedido de Pagamento,
Bank Account Details,Detalhes da Conta Bancária,
Payment Reconciliation,Conciliação de Pagamento,
Receivable / Payable Account,Conta de Recebimento/pagamento,
Bank / Cash Account,Banco / Conta Caixa,
From Invoice Date,A Partir da Data de Faturamento,
To Invoice Date,Até a Data de Faturamento,
Minimum Invoice Amount,Valor Mínimo da Fatura,
Maximum Invoice Amount,Valor Máximo da Fatura,
System will fetch all the entries if limit value is zero.,O sistema buscará todas as entradas se o valor limite for zero.,
Get Unreconciled Entries,Obter Lançamentos Não Conciliados,
Unreconciled Payment Details,Detalhes do Pagamento Não Conciliado,
Invoice/Journal Entry Details,Detalhes da Fatura/lançamento no Livro Diário,
Payment Reconciliation Invoice,Fatura da Conciliação de Pagamento,
Invoice Number,Número da Nota Fiscal,
Payment Reconciliation Payment,Pagamento da Conciliação de Pagamento,
Reference Row,Linha de Referência,
Allocated amount,Quantidade atribuída,
Payment Request Type,Solicitação de Pagamento,
Outward,Para Fora,
Inward,Interior,
ACC-PRQ-.YYYY.-,ACC-PRQ-.YYYY.-,
Transaction Details,Detalhes da Transação,
Amount in customer's currency,Total em moeda do cliente,
Is a Subscription,É uma assinatura,
Transaction Currency,Moeda de Transação,
Subscription Plans,Planos de Subscrição,
SWIFT Number,Número Rápido,
Recipient Message And Payment Details,Mensagem e Dados de Pagamento do Destinatário,
Make Sales Invoice,Fazer Fatura de Venda,
Mute Email,Mudo Email,
payment_url,payment_url,
Payment Gateway Details,Dados do Portal de Pagamento,
Payment Schedule,Agenda de Pagamentos,
Invoice Portion,Porção de Fatura,
Payment Amount,Valor do Pagamento,
Payment Term Name,Nome do Prazo de Pagamento,
Due Date Based On,Data de Vencimento Baseada Em,
Day(s) after invoice date,Dia (s) após a data da factura,
Day(s) after the end of the invoice month,Dia (s) após o final do mês da fatura,
Month(s) after the end of the invoice month,Mês (s) após o final do mês da factura,
Credit Days,Dias de Crédito,
Credit Months,Meses de Crédito,
Allocate Payment Based On Payment Terms,Alocar o Pagamento Com Base Nas Condições de Pagamento,
"If this checkbox is checked, paid amount will be splitted and allocated as per the amounts in payment schedule against each payment term","Se esta caixa de seleção estiver marcada, o valor pago será dividido e alocado de acordo com os valores na programação de pagamento contra cada condição de pagamento",
Payment Terms Template Detail,Detalhes do Modelo de Termos de Pagamento,
Closing Fiscal Year,Encerramento do Exercício Fiscal,
Closing Account Head,Conta de Fechamento,
"The account head under Liability or Equity, in which Profit/Loss will be booked","Conta sob Passivo ou Capital Próprio, no qual o Lucro / Prejuízo será escrito",
POS Customer Group,Grupo de Cliente PDV,
POS Field,Campo POS,
POS Item Group,Grupo de Itens PDV,
Company Address,Endereço da Companhia,
Update Stock,Atualizar Estoque,
Ignore Pricing Rule,Ignorar Regra de Preços,
Applicable for Users,Aplicável Para Usuários,
Sales Invoice Payment,Pagamento da Fatura de Venda,
Item Groups,Grupos de Itens,
Only show Items from these Item Groups,Mostrar apenas itens desses grupos de itens,
Customer Groups,Grupos de Clientes,
Only show Customer of these Customer Groups,Mostrar apenas o cliente desses grupos de clientes,
Write Off Account,Conta de Abatimentos,
Write Off Cost Center,Centro de Custo do Abatimento,
Account for Change Amount,Conta Para Troco,
Taxes and Charges,Impostos e Encargos,
Apply Discount On,Aplicar Discount On,
POS Profile User,Perfil de Usuário do PDV,
Apply On,Aplicar Em,
Price or Product Discount,Preço Ou Desconto do Produto,
Apply Rule On Item Code,Aplicar Regra no Código do Item,
Apply Rule On Item Group,Aplicar Regra no Grupo de Itens,
Apply Rule On Brand,Aplique a Regra na Marca,
Mixed Conditions,Condições Mistas,
Conditions will be applied on all the selected items combined. ,As condições serão aplicadas em todos os itens selecionados combinados.,
Is Cumulative,É cumulativo,
Coupon Code Based,Baseado Em Código de Cupom,
Discount on Other Item,Desconto no Outro Item,
Apply Rule On Other,Aplicar Regra a Outras,
Party Information,Informação do Parceiro,
Quantity and Amount,Quantidade e Quantidade,
Min Qty,Qtde Mínima,
Max Qty,Qtde Máxima,
Min Amt,Min Amt,
Max Amt,Max Amt,
Period Settings,Configurações do Período,
Margin,Margem,
Margin Type,Tipo da Margem,
Margin Rate or Amount,Percentual Ou Valor de Margem,
Price Discount Scheme,Esquema de Desconto de Preço,
Rate or Discount,Taxa Ou Desconto,
Discount Percentage,Percentagem de Desconto,
Discount Amount,Valor do Desconto,
For Price List,Para Lista de Preço,
Product Discount Scheme,Esquema de Desconto do Produto,
Same Item,Mesmo Item,
Free Item,Item Grátis,
Threshold for Suggestion,Limite Para Sugestão,
System will notify to increase or decrease quantity or amount ,O sistema notificará para aumentar ou diminuir a quantidade ou quantidade,
"Higher the number, higher the priority","Quanto maior o número, maior a prioridade",
Apply Multiple Pricing Rules,Aplicar Várias Regras de Precificação,
Apply Discount on Rate,Aplicar Desconto na Taxa,
Validate Applied Rule,Validar Regra Aplicada,
Rule Description,Descrição da Regra,
Pricing Rule Help,Regra Preços Ajuda,
Promotional Scheme Id,ID do Esquema Promocional,
Promotional Scheme,Esquema Promocional,
Pricing Rule Brand,Marca de Regra de Preços,
Pricing Rule Detail,Detalhe da Regra de Preços,
Child Docname,Child Docname,
Rule Applied,Regra Aplicada,
Pricing Rule Item Code,Código do Item da Regra de Precificação,
Pricing Rule Item Group,Grupo de Itens de Regras de Precificação,
Price Discount Slabs,Lajes de Desconto de Preço,
Promotional Scheme Price Discount,Desconto de Preço do Regime Promocional,
Product Discount Slabs,Lajes de Desconto do Produto,
Promotional Scheme Product Discount,Desconto do Produto do Esquema Promocional,
Min Amount,Quantidade Mínima,
Max Amount,Quantidade Máxima,
Discount Type,Tipo de Desconto,
ACC-PINV-.YYYY.-,ACC-PINV-.YYYY.-,
Tax Withholding Category,Categoria de Retenção Fiscal,
Edit Posting Date and Time,Editar Postagem Data e Hora,
Is Paid,Está Pago,
Is Return (Debit Note),É retorno (nota de débito),
Apply Tax Withholding Amount,Aplicar Montante de Retenção Fiscal,
Accounting Dimensions ,Dimensões Contábeis,
Supplier Invoice Details,Fornecedor Detalhes da Fatura,
Supplier Invoice Date,Data de Emissão da Nota Fiscal de Compra,
Return Against Purchase Invoice,Devolução Relacionada À Fatura de Compra,
Select Supplier Address,Selecione Um Endereço do Fornecedor,
Contact Person,Pessoa de Contato,
Select Shipping Address,Selecione Um Endereço de Entrega,
Currency and Price List,Moeda e Preço,
Price List Currency,Moeda da Lista de Preços,
Price List Exchange Rate,Taxa de Câmbio da Lista de Preços,
Set Accepted Warehouse,Definir Depósito Aceito,
Rejected Warehouse,Armazém de Itens Rejeitados,
Warehouse where you are maintaining stock of rejected items,Armazém onde você está mantendo estoque de itens rejeitados,
Raw Materials Supplied,Matérias-primas Fornecidas,
Supplier Warehouse,Armazém do Fornecedor,
Pricing Rules,Regras de Precificação,
Supplied Items,Itens Fornecidos,
Total (Company Currency),Total (moeda da Empresa),
Net Total (Company Currency),Total Líquido (moeda da Empresa),
Total Net Weight,Peso Líquido Total,
Shipping Rule,Regra de Envio,
Purchase Taxes and Charges Template,Modelo de Encargos e Impostos Sobre Compras,
Purchase Taxes and Charges,Impostos e Encargos Sobre Compras,
Tax Breakup,Desagregação de Impostos,
Taxes and Charges Calculation,Cálculo de Impostos e Encargos,
Taxes and Charges Added (Company Currency),Impostos e Taxas Acrescidos (moeda da Empresa),
Taxes and Charges Deducted (Company Currency),Impostos e Taxas Deduzidos (moeda da Empresa),
Total Taxes and Charges (Company Currency),Total de Impostos e Taxas (moeda da Empresa),
Taxes and Charges Added,Impostos e Encargos Adicionados,
Taxes and Charges Deducted,Impostos e Encargos Deduzidos,
Total Taxes and Charges,Total de Impostos e Encargos,
Additional Discount,Desconto Adicional,
Apply Additional Discount On,Aplicar Desconto Adicional Em,
Additional Discount Amount (Company Currency),Total do Desconto Adicional (moeda da Empresa),
Additional Discount Percentage,Percentual de Desconto Adicional,
Additional Discount Amount,Total do Desconto Adicional,
Grand Total (Company Currency),Total Geral (moeda da Empresa),
Rounding Adjustment (Company Currency),Ajuste de Arredondamento (moeda da Empresa),
Rounded Total (Company Currency),Total Arredondado (moeda da Empresa),
In Words (Company Currency),Por Extenso (moeda da Empresa),
Rounding Adjustment,Ajuste de Arredondamento,
In Words,Por Extenso,
Total Advance,Total Pago Adiantado,
Disable Rounded Total,Desativar Total Arredondado,
Cash/Bank Account,Conta do Caixa/banco,
Write Off Amount (Company Currency),Valor Abatido (moeda da Empresa),
Set Advances and Allocate (FIFO),Definir Adiantamentos e Alocar (fifo),
Get Advances Paid,Obter Adiantamentos Pagos,
Advances,Avanços,
Terms,Condições,
Terms and Conditions1,Termos e Condições,
Group same items,Mesmos itens do grupo,
Print Language,Idioma de Impressão,
"Once set, this invoice will be on hold till the set date","Depois de definida, esta fatura ficará em espera até a data definida",
Credit To,Crédito Para,
Party Account Currency,Moeda do Parceiro,
Against Expense Account,Contra a Conta de Despesas,
Inter Company Invoice Reference,Referência de Fatura Entre Empresas,
Is Internal Supplier,É fornecedor interno,
Start date of current invoice's period,Data de início do período de fatura atual,
End date of current invoice's period,Data final do período de fatura atual,
Update Auto Repeat Reference,Atualizar Referência de Repetição Automática,
Purchase Invoice Advance,Adiantamento da Fatura de Compra,
Purchase Invoice Item,Item da Fatura de Compra,
Quantity and Rate,Quantidade e Valor,
Received Qty,Qtde Recebida,
Accepted Qty,Quantidade Aceita,
Rejected Qty,Qtde Rejeitada,
UOM Conversion Factor,Fator de Conversão da Unidade de Medida,
Discount on Price List Rate (%),% de Desconto sobre o Preço da Lista de Preços,
Price List Rate (Company Currency),Preço da Lista de Preços (moeda da Empresa),
Rate ,Valor,
Rate (Company Currency),Preço (moeda da Empresa),
Amount (Company Currency),Total (moeda da Empresa),
Is Free Item,É item grátis,
Net Rate,Taxa Líquida,
Net Rate (Company Currency),Preço Líquido (moeda da Empresa),
Net Amount (Company Currency),Valor Líquido (moeda da Empresa),
Item Tax Amount Included in Value,Item Montante do Imposto Incluído no Valor,
Landed Cost Voucher Amount,Comprovante de Custo do Desembarque,
Raw Materials Supplied Cost,Custo de Fornecimento de Matérias-primas,
Accepted Warehouse,Armazém Aceito,
Serial No,Nº de Série,
Rejected Serial No,Nº de Série Rejeitado,
Expense Head,Conta de Despesas,
Is Fixed Asset,É Ativo Imobilizado,
Asset Location,Localização do Ativo,
Deferred Expense,Despesa Diferida,
Deferred Expense Account,Conta de Despesas Diferidas,
Service Stop Date,Data de Parada de Serviço,
Enable Deferred Expense,Ativar Despesa Adiada,
Service Start Date,Data de Início do Serviço,
Service End Date,Data de Término do Serviço,
Allow Zero Valuation Rate,Permitir Taxa de Avaliação Zero,
Item Tax Rate,Alíquota do Imposto do Item,
Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,O dado da tabela de imposto obtido a partir do definidor de item como uma string e armazenado neste campo.\n Utilizado para Impostos e Encargos,
Purchase Order Item,Item do Pedido de Compra,
Purchase Receipt Detail,Detalhe do Recibo de Compra,
Item Weight Details,Detalhes do Peso do Item,
Weight Per Unit,Peso Unitário,
Total Weight,Peso Total,
Weight UOM,Udm de Peso,
Page Break,Quebra de Página,
Consider Tax or Charge for,Considere Imposto Ou Encargo Para,
Valuation and Total,Valorização e Total,
Valuation,Avaliação,
Add or Deduct,Adicionar Ou Reduzir,
Deduct,Deduzir,
On Previous Row Amount,No Valor da Linha Anterior,
On Previous Row Total,No Total da Linha Anterior,
On Item Quantity,Na Quantidade do Item,
Reference Row #,Referência Linha #,
Is this Tax included in Basic Rate?,Este Imposto Está Incluído na Base de Cálculo?,
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Se marcado, o valor do imposto será considerado como já incluído na Impressão de Taxa / Impressão do Valor",
Account Head,Conta,
Tax Amount After Discount Amount,Total de Impostos Depois Montante do Desconto,
Item Wise Tax Detail ,Item Wise Tax Detail,
"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.\n\n#### Note\n\nThe 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.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **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.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. 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).\n9. 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.\n10. Add or Deduct: Whether you want to add or deduct the tax.","O modelo de impostos padrão que pode ser aplicado a todas as Operações de Compra. Este modelo pode conter a lista de títulos de impostos e também outros títulos de despesas como ""Envio"", ""Seguro"", ""Manutenção"" etc. \n\n #### Nota \n\n a taxa de imposto que definir aqui será a taxa normal de impostos para todos os **Itens**. Se houver **Itens** que têm taxas diferentes, eles devem ser adicionados na tabela de **Imposto do Item** no definidor de **Item**.\n\n #### Descrição das Colunas \n\n 1. Tipo de Cálculo: \n - Isto pode ser em **Total Líquido** (que é a soma do montante de base).\n - **No Total / Montante da Linha Anterior** (para os impostos ou encargos cumulativos). Se você essa opção, o imposto será aplicado como uma percentagem da linha anterior (na tabela de impostos) ou montante total.\n - **Real** (como mencionado).\n 2. Título da Conta: o livro de contabilidade em que este imposto será escrito\n 3. Centro de Custo: Se o imposto / taxa é uma rendimento (como o envio) ou despesa precisa ser reservado num Centro de Custo.\n 4. Descrição: a descrição do imposto (que será impresso em faturas / cotações).\n 5. Classificação: Taxa de imposto.\n 6. Montante: Montante das taxas.\n 7. Total: Total acumulado até este ponto.\n 8. Inserir Linha: Se for baseado no ""Total da Linha Anterior"", pode selecionar o número da linha que será tomado como base para este cálculo (o padrão é a linha anterior).\n 9. Considerar Imposto ou Encargo para: Nesta seção, pode especificar se o imposto / encargo é apenas para avaliação (não uma parte do total) ou apenas para o total (não adiciona valor ao item) ou para ambos.\n 10. Adicionar ou Deduzir: Se quer adicionar ou deduzir o imposto.",
ACC-SINV-.YYYY.-,ACC-SINV-.YYYY.-,
Include Payment (POS),Incluir Pagamento (PDV),
Offline POS Name,Nome do Pos Offline,
Is Return (Credit Note),É retorno (nota de crédito),
Return Against Sales Invoice,Devolução Contra Fatura de Venda,
Update Billed Amount in Sales Order,Atualizar Valor Cobrado no Pedido de Vendas,
Customer PO Details,Detalhes do Cliente PO,
Customer's Purchase Order,Pedido de Compra do Cliente,
Customer's Purchase Order Date,Data do Pedido de Compra do Cliente,
Customer Address,Endereço do Cliente,
Shipping Address Name,Endereço de Entrega,
Company Address Name,Nome da Endereço da Empresa,
Rate at which Customer Currency is converted to customer's base currency,Taxa na qual a moeda do cliente é convertida para a moeda base do cliente,
Rate at which Price list currency is converted to customer's base currency,Taxa na qual a moeda da lista de preços é convertida para a moeda base do cliente,
Set Source Warehouse,Definir Depósito de Origem,
Packing List,Lista de Remessa,
Packed Items,Pacotes de Itens,
Product Bundle Help,Pacote de Produtos Ajuda,
Time Sheet List,Lista de Registros de Tempo,
Time Sheets,Registros de Tempo,
Total Billing Amount,Valor Total do Faturamento,
Sales Taxes and Charges Template,Modelo de Encargos e Impostos Sobre Vendas,
Sales Taxes and Charges,Impostos e Taxas Sobre Vendas,
Loyalty Points Redemption,Resgate de Pontos de Fidelidade,
Redeem Loyalty Points,Resgatar Pontos de Fidelidade,
Redemption Account,Conta de Resgate,
Redemption Cost Center,Centro de Custo de Resgate,
In Words will be visible once you save the Sales Invoice.,Por extenso será visível quando você salvar a Fatura de Venda.,
Allocate Advances Automatically (FIFO),Alocar Avanços Automaticamente (FIFO),
Get Advances Received,Obter Adiantamentos Recebidos,
Base Change Amount (Company Currency),Troco (moeda da Empresa),
Write Off Outstanding Amount,Abater Saldo Devedor,
Terms and Conditions Details,Detalhes Dos Termos e Condições,
Is Internal Customer,É cliente interno,
Is Discounted,Tem Desconto,
Unpaid and Discounted,Não Pago e Descontado,
Overdue and Discounted,Em Atraso e Descontado,
Accounting Details,Detalhes da Contabilidade,
Debit To,Débito Para,
Is Opening Entry,É Lançamento de Abertura,
C-Form Applicable,Formulário-c Aplicável,
Commission Rate (%),Percentual de Comissão (%),
Sales Team1,Equipe de Vendas 1,
Against Income Account,Contra a Conta de Recebimentos,
Sales Invoice Advance,Adiantamento da Fatura de Venda,
Advance amount,Valor Adiantado,
Sales Invoice Item,Item da Fatura de Venda,
Customer's Item Code,Código do Item do Cliente,
Brand Name,Nome da Marca,
Qty as per Stock UOM,Qtde Por Udm do Estoque,
Discount and Margin,Desconto e Margem,
Rate With Margin,Taxa Com Margem,
Discount (%) on Price List Rate with Margin,Desconto (%) na Taxa da Lista de Preços com Margem,
Rate With Margin (Company Currency),Taxa Com Margem (moeda da Empresa),
Delivered By Supplier,Proferido Por Fornecedor,
Deferred Revenue,Receita Diferida,
Deferred Revenue Account,Conta de Receita Diferida,
Enable Deferred Revenue,Ativar Receita Diferida,
Stock Details,Detalhes do Estoque,
Customer Warehouse (Optional),Armazém do Cliente (opcional),
Available Batch Qty at Warehouse,Qtde Disponível do Lote no Armazén,
Available Qty at Warehouse,Qtde Disponível no Estoque,
Delivery Note Item,Item da Guia de Remessa,
Base Amount (Company Currency),Valor Base (moeda da Empresa),
Sales Invoice Timesheet,Registro de Tempo da Fatura de Venda,
Time Sheet,Registro de Tempo,
Billing Hours,Horas de Faturação,
Timesheet Detail,Detalhes do Registro de Tempo,
Tax Amount After Discount Amount (Company Currency),Valor do Imposto Após Desconto (moeda da Empresa),
Item Wise Tax Detail,Detalhes do Imposto Vinculados Ao Item,
Parenttype,Parenttype,
"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.\n\n#### Note\n\nThe 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.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **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.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. 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).\n9. 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.","O modelo de impostos padrão que pode ser aplicado a todas as Transações de Vendas. Este modelo pode conter a lista de livros fiscais e também outros livros de despesas / receitas como ""Envio"", ""Seguro"", ""Processamento"" etc. \n\n #### Nota \n\nA taxa de imposto que definir aqui será a taxa normal de IVA para todos os **Itens**. Se houver **Itens** que possuam taxas diferentes, eles devem ser adicionados na tabela **Imposto de Item** no definidor de **Item**.\n\n #### Descrição das Colunas \n\n 1. Tipo de Cálculo: \n - Isto pode ser no **Total Líquido** (que é a soma do montante base).\n - **Na linha Total / Montante Anterior** (para os impostos ou encargos cumulativos). Se selecionar esta opção, o imposto será aplicado como uma percentagem do montante da linha anterior (na tabela de impostos) ou montante total.\n - **Atual** (como indicado).\n 2. Título de Contas: o Livro de contas em que este imposto será escrito\n 3. Centro de Custo: Se o imposto / taxa for um rendimento (como por exemplo o envio) ou uma despesa, necessita ser reservado num Centro de Custo.\n 4. Descrição: Descrição do imposto (que será impresso em faturas / cotações).\n 5. Taxa: Montante de Imposto.\n 6. Valor: Valor dos impostos.\n 7. Total: Total acumulado até este ponto.\n 8. Inserir Linha: Se for baseado em ""Total da Linha Anterior"", pode selecionar o número da linha que será tomado como base para este cálculo (o padrão é a linha anterior).\n 9. Este imposto está incluído na Taxa Básica?: Se selecionar isto, significa que este imposto não será exibido abaixo da tabela de item, mas será incluído na Taxa Básica na sua tabela de item principal. Isto é útil quando quer atribuir um preço fixo (incluindo todos os impostos) para os clientes.",
* Will be calculated in the transaction.,* Será calculado na transação.,
From No,De Não,
To No,Para Não,
Is Company,É a empresa,
Current State,Estado Atual,
Purchased,Comprado,
From Shareholder,Do Acionista,
From Folio No,Do Folio No,
To Shareholder,Ao Acionista,
To Folio No,Para Folio No,
Equity/Liability Account,Conta de Patrimônio / Responsabilidade,
Asset Account,Conta de Ativo,
(including),(incluindo),
ACC-SH-.YYYY.-,ACC-SH-.YYYY.-,
Folio no.,Folio No.,
Address and Contacts,Endereços e Contatos,
Contact List,Lista de Contatos,
Hidden list maintaining the list of contacts linked to Shareholder,Lista escondida mantendo a lista de contatos ligados ao Acionista,
Specify conditions to calculate shipping amount,Especificar condições para calcular valor de frete,
Shipping Rule Label,Rótulo da Regra de Envio,
example: Next Day Shipping,exemplo: envio no dia seguinte,
Shipping Rule Type,Tipo de Regra de Envio,
Shipping Account,Conta de Envio,
Calculate Based On,Calcule Baseado Em,
Fixed,Fixo,
Net Weight,Peso Líquido,
Shipping Amount,Valor do Transporte,
Shipping Rule Conditions,Regra Condições de Envio,
Restrict to Countries,Restringir Aos Países,
Valid for Countries,Válido Para Países,
Shipping Rule Condition,Regra Condições de Envio,
A condition for a Shipping Rule,A condição para uma regra de Remessa,
From Value,De Valor,
To Value,Para o Valor,
Shipping Rule Country,Regra Envio País,
Subscription Period,Período de Inscrição,
Subscription Start Date,Data de Início da Assinatura,
Cancelation Date,Data de Cancelamento,
Trial Period Start Date,Data de Início do Período de Avaliação,
Trial Period End Date,Data de Término do Período de Avaliação,
Current Invoice Start Date,Data de Início da Fatura Atual,
Current Invoice End Date,Data Final da Fatura Atual,
Days Until Due,Dias Até o Vencimento,
Number of days that the subscriber has to pay invoices generated by this subscription,Número de dias que o assinante deve pagar as faturas geradas por esta assinatura,
Cancel At End Of Period,Cancelar no Final do Período,
Generate Invoice At Beginning Of Period,Gerar Fatura no Início do Período,
Plans,Planos,
Discounts,Descontos,
Additional DIscount Percentage,Percentual de Desconto Adicional,
Additional DIscount Amount,Total do Desconto Adicional,
Subscription Invoice,Fatura de Subscrição,
Subscription Plan,Plano de Assinatura,
Cost,Custo,
Billing Interval,Intervalo de Cobrança,
Billing Interval Count,Contagem de Intervalos de Faturamento,
"Number of intervals for the interval field e.g if Interval is 'Days' and Billing Interval Count is 3, invoices will be generated every 3 days","Número de intervalos para o campo de intervalo, por exemplo, se o intervalo for ';Dias'; e a Contagem de intervalos de faturamento for 3, as faturas serão geradas a cada 3 dias",
Payment Plan,Plano de Pagamento,
Subscription Plan Detail,Detalhe do Plano de Assinatura,
Plan,Plano,
Subscription Settings,Configurações de Assinatura,
Grace Period,Período de Carência,
Number of days after invoice date has elapsed before canceling subscription or marking subscription as unpaid,Número de dias após a data da fatura ter expirado antes de cancelar a assinatura ou marcar a assinatura como não remunerada,
Prorate,Proporcionado,
Tax Rule,Regras de Aplicação de Impostos,
Tax Type,Tipo de Imposto,
Use for Shopping Cart,Use Para Compras,
Billing City,Cidade de Faturamento,
Billing County,Distrito de Faturamento,
Billing State,Estado de Faturamento,
Billing Zipcode,Cep Para Cobrança,
Billing Country,País de Faturamento,
Shipping City,Cidade de Entrega,
Shipping County,Distrito de Entrega,
Shipping State,Estado de Entrega,
Shipping Zipcode,CEP de Entrega,
Shipping Country,País de Entrega,
Tax Withholding Account,Conta de Imposto Retido,
Tax Withholding Rates,Taxas de Imposto Retido,
Rates,Percentuais,
Tax Withholding Rate,Taxa de Retenção Fiscal,
Single Transaction Threshold,Limite Único de Transação,
Cumulative Transaction Threshold,Limite de Transação Cumulativa,
Agriculture Analysis Criteria,Critérios de Análise da Agricultura,
Linked Doctype,Documento Vinculado,
Water Analysis,Análise de Água,
Soil Analysis,Análise do Solo,
Plant Analysis,Análise de Planta,
Fertilizer,Fertilizante,
Soil Texture,Textura do Solo,
Weather,Clima,
Agriculture Manager,Gerente de Agricultura,
Agriculture User,Usuário da Agricultura,
Agriculture Task,Tarefa de Agricultura,
Task Name,Nome da Tarefa,
Start Day,Dia de Início,
End Day,Dia Final,
Holiday Management,Gestão de Férias,
Ignore holidays,Ignorar feriados,
Previous Business Day,Dia Útil Anterior,
Next Business Day,Próximo Dia Comercial,
Urgent,Urgente,
Crop,Colheita,
Crop Name,Nome da Cultura,
Scientific Name,Nome Científico,
"You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Você pode definir todas as tarefas que devem ser realizadas para esta cultura aqui. o campo do dia é usado para mencionar o dia em que a tarefa precisa ser realizada, 1 sendo o 1º dia, etc.",
Crop Spacing,Espaçamento de Colheita,
Crop Spacing UOM,Uom de Espaçamento de Colheitas,
Row Spacing,Espaçamento Entre Linhas,
Row Spacing UOM,Espaçamento de Linhas Udm,
Perennial,Perene,
Biennial,Bienal,
Planting UOM,Plantando UDM,
Planting Area,Área de plantação,
Yield UOM,Rendimento UDM,
Materials Required,Materiais Requisitados,
Produced Items,Artigos Produzidos,
Produce,Produzir,
Byproducts,Subprodutos,
Linked Location,Local Vinculado,
A link to all the Locations in which the Crop is growing,Um link para todos os locais em que a safra está crescendo,
This will be day 1 of the crop cycle,Este será o dia 1 do ciclo da cultura,
ISO 8601 standard,Norma ISO 8601,
Cycle Type,Tipo de Ciclo,
Less than a year,Menos de um ano,
The minimum length between each plant in the field for optimum growth,O comprimento mínimo entre cada planta no campo para o melhor crescimento,
The minimum distance between rows of plants for optimum growth,A distância mínima entre fileiras de plantas para o melhor crescimento,
Detected Diseases,Doenças Detectadas,
List of diseases detected on the field. When selected it'll automatically add a list of tasks to deal with the disease ,Lista de doenças detectadas no campo. Quando selecionado ele adicionará automaticamente uma lista de tarefas para lidar com a doença,
Detected Disease,Doença Detectada,
LInked Analysis,Linked Analysis,
Disease,Doença,
Tasks Created,Tarefas Criadas,
Common Name,Nome Comum,
Treatment Task,Tarefa de Tratamento,
Treatment Period,Período de Tratamento,
Fertilizer Name,Nome do Fertilizante,
Density (if liquid),Densidade (se líquido),
Fertilizer Contents,Conteúdo de Fertilizantes,
Fertilizer Content,Conteúdo de Fertilizante,
Linked Plant Analysis,Análise de Planta Vinculada,
Linked Soil Analysis,Análise de Solo Associada,
Linked Soil Texture,Textura de Solo Ligada,
Collection Datetime,Data de Coleta,
Laboratory Testing Datetime,Teste de Laboratório Data Tempo,
Result Datetime,Resultado Data Hora,
Plant Analysis Criterias,Critérios de Análise de Planta,
Plant Analysis Criteria,Critérios de Análise da Planta,
Minimum Permissible Value,Valor Mínimo Permissível,
Maximum Permissible Value,Valor Máximo Admissível,
Ca/K,Ca / K,
Ca/Mg,Ca / Mg,
Mg/K,Mg / K,
(Ca+Mg)/K,(Ca + Mg) / K,
Ca/(K+Ca+Mg),Ca / (k + Ca + Mg),
Soil Analysis Criterias,Critérios de Análise do Solo,
Soil Analysis Criteria,Critérios de Análise do Solo,
Soil Type,Tipo de Solo,
Loamy Sand,Loamy Sand,
Sandy Loam,Sandy Loam,
Loam,Barro,
Silt Loam,Silt Loam,
Sandy Clay Loam,Sandy Clay Loam,
Clay Loam,Barro de Argila,
Silty Clay Loam,Silly Clay Loam,
Sandy Clay,Argila Arenosa,
Silty Clay,Argila Silty,
Clay Composition (%),Composição da Argila (%),
Sand Composition (%),Composição da Areia (%),
Silt Composition (%),Composição do Silt (%),
Ternary Plot,Parcela Ternar,
Soil Texture Criteria,Critérios de Textura do Solo,
Type of Sample,Tipo de Amostra,
Container,Recipiente,
Origin,Origem,
Collection Temperature ,Temperatura de Coleta,
Storage Temperature,Temperatura de Armazenamento,
Appearance,Aparência,
Person Responsible,Pessoa Responsável,
Water Analysis Criteria,Critérios de Análise de Água,
Weather Parameter,Parâmetro do Tempo,
ACC-ASS-.YYYY.-,ACC-ASS-.YYYY.-,
Asset Owner,Proprietário de Ativos,
Asset Owner Company,Proprietário Proprietário Empresa,
Custodian,Custodiante,
Disposal Date,Data de Eliminação,
Journal Entry for Scrap,Lançamento no Livro Diário Para Sucata,
Available-for-use Date,Data Disponível Para Uso,
Calculate Depreciation,Calcular Depreciação,
Allow Monthly Depreciation,Permitir Depreciação Mensal,
Number of Depreciations Booked,Número de Depreciações Reservadas,
Finance Books,Livros Contábeis,
Straight Line,Linha Reta,
Double Declining Balance,Equilíbrio Decrescente Duplo,
Manual,Manual,
Value After Depreciation,Valor Após Depreciação,
Total Number of Depreciations,Número Total de Depreciações,
Frequency of Depreciation (Months),Frequência Das Depreciações (meses),
Next Depreciation Date,Próxima Data de Depreciação,
Depreciation Schedule,Tabela de Depreciação,
Depreciation Schedules,Tabelas de Depreciação,
Insurance details,Detalhes do Seguro,
Policy number,Número da polícia,
Insurer,Segurador,
Insured value,Valor segurado,
Insurance Start Date,Data de Início do Seguro,
Insurance End Date,Data Final do Seguro,
Comprehensive Insurance,Seguro Abrangente,
Maintenance Required,Manutenção Requerida,
Check if Asset requires Preventive Maintenance or Calibration,Verifique se o recurso requer manutenção preventiva ou calibração,
Booked Fixed Asset,Ativos Fixos Reservados,
Purchase Receipt Amount,Quantia do Recibo de Compra,
Default Finance Book,Livro Contábil Padrão,
Quality Manager,Gerente de Qualidade,
Asset Category Name,Ativo Categoria Nome,
Depreciation Options,Opções de Depreciação,
Enable Capital Work in Progress Accounting,Ativar Contabilidade de Capital Em Andamento,
Finance Book Detail,Detalhe do Livro Contábil,
Asset Category Account,Ativo Categoria Conta,
Fixed Asset Account,Conta do Ativo Imobilizado,
Accumulated Depreciation Account,Conta de Depreciação Acumulada,
Depreciation Expense Account,Conta de Depreciação,
Capital Work In Progress Account,Conta de Trabalho Em Andamento de Capital,
Asset Finance Book,Livro Contábil de Ativos,
Written Down Value,Valor Baixado,
Expected Value After Useful Life,Valor Esperado Após Sua Vida Útil,
Rate of Depreciation,Taxa de Depreciação,
In Percentage,Em Porcentagem,
Maintenance Team,Equipe de Manutenção,
Maintenance Manager Name,Nome do Gerente de Manutenção,
Maintenance Tasks,Tarefas de Manutenção,
Manufacturing User,Usuário de Fabricação,
Asset Maintenance Log,Registro de Manutenção de Ativos,
ACC-AML-.YYYY.-,ACC-AML-.YYYY.-,
Maintenance Type,Tipo de Manutenção,
Maintenance Status,Status da Manutenção,
Planned,Planejado,
Has Certificate ,Tem Certificado,
Certificate,Certificado,
Actions performed,Ações realizadas,
Asset Maintenance Task,Tarefa de Manutenção de Ativos,
Maintenance Task,Tarefa de Manutenção,
Preventive Maintenance,Manutenção Preventiva,
Calibration,Calibração,
2 Yearly,2 Anos,
Certificate Required,Certificado Necessário,
Assign to Name,Atribuir Ao Nome,
Next Due Date,Próxima Data de Vencimento,
Last Completion Date,Última Data de Conclusão,
Asset Maintenance Team,Equipe de Manutenção de Ativos,
Maintenance Team Name,Nome da Equipe de Manutenção,
Maintenance Team Members,Membros da Equipe de Manutenção,
Purpose,Finalidade,
Stock Manager,Gerente de Estoque,
Asset Movement Item,Item de Movimento de Ativos,
Source Location,Localização da Fonte,
From Employee,Do Colaborador,
Target Location,Localização Alvo,
To Employee,Para Empregado,
Asset Repair,Reparo de Ativos,
ACC-ASR-.YYYY.-,ACC-ASR-.YYYY.-,
Failure Date,Data de Falha,
Assign To Name,Atribuir Para Nomear,
Repair Status,Status do Reparo,
Error Description,Descrição de Erro,
Downtime,Tempo de Inatividade,
Repair Cost,Custo de Reparo,
Manufacturing Manager,Gerente de Fabricação,
Current Asset Value,Valor Atual do Ativo,
New Asset Value,Novo Valor do Ativo,
Make Depreciation Entry,Fazer Lançamento de Depreciação,
Finance Book Id,ID do Livro Contábil,
Location Name,Nome da Localização,
Parent Location,Localização Dos Pais,
Is Container,Container,
Check if it is a hydroponic unit,Verifique se é uma unidade hidropônica,
Location Details,Detalhes da Localização,
Latitude,Latitude,
Longitude,Longitude,
Area,Área,
Area UOM,UOM da área,
Tree Details,Detalhes da Árvore,
Maintenance Team Member,Membro da Equipe de Manutenção,
Team Member,Membro da Equipe,
Maintenance Role,Função de Manutenção,
Buying Settings,Configurações de Compras,
Settings for Buying Module,Configurações Para o Módulo de Compras,
Supplier Naming By,Nomeação do Fornecedor Por,
Default Supplier Group,Grupo de Fornecedores Padrão,
Default Buying Price List,Lista de Preço de Compra Padrão,
Backflush Raw Materials of Subcontract Based On,Backflush Matérias-primas de Subcontratação Com Base Em,
Material Transferred for Subcontract,Material Transferido Para Subcontrato,
Over Transfer Allowance (%),Excesso de Transferência (%),
Percentage you are allowed to transfer more against the quantity ordered. For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to transfer 110 units.,Porcentagem que você tem permissão para transferir mais em relação à quantidade solicitada. Por exemplo: Se você encomendou 100 unidades. e sua permissão for de 10% você poderá transferir 110 unidades.,
PUR-ORD-.YYYY.-,PUR-ORD-.YYYY.-,
Get Items from Open Material Requests,Obter Itens de Requisições de Material Abertas,
Fetch items based on Default Supplier.,Obter itens com base no fornecedor padrão.,
Required By,Entrega Em,
Order Confirmation No,Confirmação do Pedido Não,
Order Confirmation Date,Data de Confirmação do Pedido,
Customer Mobile No,Celular do Cliente,
Customer Contact Email,Cliente Fale Email,
Set Target Warehouse,Definir Armazém Alvo,
Sets 'Warehouse' in each row of the Items table.,Define ';Warehouse'; em cada linha da tabela de itens.,
Supply Raw Materials,Abastecimento de Matérias-primas,
Purchase Order Pricing Rule,Regra de Precificação de Pedidos de Compra,
Set Reserve Warehouse,Definir Armazém de Reserva,
In Words will be visible once you save the Purchase Order.,Por extenso será visível quando você salvar o Pedido de Compra.,
Advance Paid,Adiantamento Pago,
Tracking,Rastreamento,
% Billed,Faturado %,
% Received,Recebido %,
Ref SQ,Ref SQ,
Inter Company Order Reference,Referência de Pedidos Entre Empresas,
Supplier Part Number,Número da Peça do Fornecedor,
Billed Amt,Valor Faturado,
Warehouse and Reference,Armazém e Referência,
To be delivered to customer,Para ser entregue ao cliente,
Material Request Item,Item da Requisição de Material,
Supplier Quotation Item,Item do Orçamento de Fornecedor,
Against Blanket Order,Contra a Ordem Geral,
Blanket Order,Pedido de Cobertor,
Blanket Order Rate,Taxa de Ordem de Cobertura,
Returned Qty,Qtde Devolvida,
Purchase Order Item Supplied,Item Fornecido do Pedido de Compra,
BOM Detail No,Nº do Detalhe da LDM,
Stock Uom,Unidade de Medida do Estoque,
Raw Material Item Code,Código de Item de Matérias-primas,
Supplied Qty,Qtde Fornecida,
Purchase Receipt Item Supplied,Item do Recibo de Compra Fornecido,
Current Stock,Estoque Atual,
PUR-RFQ-.YYYY.-,PUR-RFQ-.YYYY.-,
For individual supplier,Para cada fornecedor,
Link to Material Requests,Link Para Solicitações de Materiais,
Message for Supplier,Mensagem Para o Fornecedor,
Request for Quotation Item,Solicitação de Orçamento do Item,
Required Date,Para o Dia,
Request for Quotation Supplier,Solicitação de Orçamento Para Fornecedor,
Send Email,Enviar Email,
Quote Status,Status da Cotação,
Download PDF,Transferir Pdf,
Supplier of Goods or Services.,Fornecedor de Bens Ou Serviços.,
Name and Type,Nome e Tipo,
SUP-.YYYY.-,SUP-.YYYY.-,
Default Bank Account,Conta Bancária Padrão,
Is Transporter,É transportador,
Represents Company,Representa Empresa,
Supplier Type,Tipo de Fornecedor,
Allow Purchase Invoice Creation Without Purchase Order,Permitir a Criação de Fatura de Compra Sem Ordem de Compra,
Allow Purchase Invoice Creation Without Purchase Receipt,Permitir a Criação de Fatura de Compra Sem Recibo de Compra,
Warn RFQs,Alertar Em Solicitações de Orçamentos,
Warn POs,Avisar Em Pedidos de Compra,
Prevent RFQs,Evitar Orçamentos,
Prevent POs,Evitar Pedidos de Compra,
Billing Currency,Moeda de Faturamento,
Default Payment Terms Template,Modelo de Termos de Pagamento Padrão,
Block Supplier,Fornecedor de Blocos,
Hold Type,Hold Type,
Leave blank if the Supplier is blocked indefinitely,Deixe em branco se o fornecedor estiver bloqueado indefinidamente,
Default Payable Accounts,Contas a Pagar Padrão,
Mention if non-standard payable account,Mencionar se a conta a pagar não padrão,
Default Tax Withholding Config,Configuração Padrão de Retenção de Imposto,
Supplier Details,Detalhes do Fornecedor,
Statutory info and other general information about your Supplier,Informações contratuais e outras informações gerais sobre o seu fornecedor,
PUR-SQTN-.YYYY.-,PUR-SQTN-.YYYY.-,
Supplier Address,Endereço do Fornecedor,
Link to material requests,Link para pedidos de material,
Rounding Adjustment (Company Currency,Ajuste de Arredondamento (moeda da Empresa,
Auto Repeat Section,Seção de Repetição Automática,
Is Subcontracted,É subcontratada,
Lead Time in days,Prazo de Entrega (em dias),
Supplier Score,Pontuação do Fornecedor,
Indicator Color,Cor do Indicador,
Evaluation Period,Periodo de Avaliação,
Per Week,Por Semana,
Per Month,Por Mês,
Per Year,Por Ano,
Scoring Setup,Configuração de Pontuação,
Weighting Function,Função de Ponderação,
"Scorecard variables can be used, as well as:\n{total_score} (the total score from that period),\n{period_number} (the number of periods to present day)\n","As variáveis do Scorecard podem ser usadas, bem como: {total_score} (a pontuação total desse período), {period_number} (o número de períodos até hoje)",
Scoring Standings,Classificação de Pontuação,
Criteria Setup,Configuração de Critérios,
Load All Criteria,Carregar Todos os Critérios,
Scoring Criteria,Critérios de Pontuação,
Scorecard Actions,Ações do Scorecard,
Warn for new Request for Quotations,Avisar ao criar novas Solicitações de Orçamento,
Warn for new Purchase Orders,Avisar ao criar novos Pedidos de Compra,
Notify Supplier,Notificar Fornecedor,
Notify Employee,Notificar Empregado,
Supplier Scorecard Criteria,Critérios do Scorecard do Fornecedor,
Criteria Name,Nome Dos Critérios,
Max Score,Pontuação Máxima,
Criteria Formula,Fórmula Critérios,
Criteria Weight,Critérios Peso,
Supplier Scorecard Period,Período do Scorecard do Fornecedor,
PU-SSP-.YYYY.-,PU-SSP-.YYYY.-,
Period Score,Pontuação do Período,
Calculations,Cálculos,
Criteria,Critério,
Variables,Variáveis,
Supplier Scorecard Setup,Configuração do Scorecard Fornecedor,
Supplier Scorecard Scoring Criteria,Critérios de Pontuação do Scorecard do Fornecedor,
Score,Ponto,
Supplier Scorecard Scoring Standing,Scorecard do Fornecedor Pontuação Permanente,
Standing Name,Nome Permanente,
Purple,Roxo,
Yellow,Amarelo,
Orange,Laranja,
Min Grade,Min Grade,
Max Grade,Max Grade,
Warn Purchase Orders,Avisar Em Pedidos de Compra,
Prevent Purchase Orders,Evitar Pedidos de Compra,
Employee ,Funcionário,
Supplier Scorecard Scoring Variable,Variável de Pontuação do Scorecard do Fornecedor,
Variable Name,Nome Variável,
Parameter Name,Nome do Parâmetro,
Supplier Scorecard Standing,Posição do Scorecard do Fornecedor,
Notify Other,Notificar Outro,
Supplier Scorecard Variable,Variável do Scorecard do Fornecedor,
Call Log,Registro de Chamadas,
Received By,Recebido Por,
Caller Information,Informações do Chamador,
Contact Name,Nome do Contato,
Lead ,Lead ,
Lead Name,Nome do Lead,
Ringing,Toque,
Missed,Perdido,
Call Duration in seconds,Duração da chamada em segundos,
Recording URL,URL de Gravação,
Communication Medium,Meio de Comunicação,
Communication Medium Type,Tipo de Meio de Comunicação,
Voice,Voz,
Catch All,Pegar Tudo,
"If there is no assigned timeslot, then communication will be handled by this group","Se não houver período de atividade atribuído, a comunicação será tratada por este grupo",
Timeslots,Intervalos de Tempo,
Communication Medium Timeslot,Meio de Comunicação Timeslot,
Employee Group,Grupo de Empregados,
Appointment,Compromisso,
Scheduled Time,Hora Marcada,
Unverified,Não Verificado,
Customer Details,Detalhes do Cliente,
Phone Number,Número de Telefone,
Skype ID,ID do Skype,
Linked Documents,Documentos Vinculados,
Appointment With,Compromisso Com,
Calendar Event,Evento do Calendário,
Appointment Booking Settings,Configurações de Reserva de Compromisso,
Enable Appointment Scheduling,Ativar Agendamento de Compromissos,
Agent Details,Detalhes do Agente,
Availability Of Slots,Disponibilidade de Slots,
Number of Concurrent Appointments,Número de Compromissos Simultâneos,
Agents,Agentes,
Appointment Details,Detalhes do Compromisso,
Appointment Duration (In Minutes),Duração da Consulta (em Minutos),
Notify Via Email,Notificar Por E-mail,
Notify customer and agent via email on the day of the appointment.,Notifique o cliente e o agente por e-mail no dia do compromisso.,
Number of days appointments can be booked in advance,Número de dias em que os compromissos podem ser agendados com antecedência,
Success Settings,Configurações de Sucesso,
Success Redirect URL,URL de redirecionamento de sucesso,
"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Deixe em branco para casa. Isso é relativo ao URL do site. Por exemplo, &quot;about&quot; será redirecionado para &quot;https://yoursitename.com/about&quot;",
Appointment Booking Slots,Horários de Agendamento,
Day Of Week,Dia da Semana,
From Time ,Hora De,
Campaign Email Schedule,Agenda de E-mail da Campanha,
Send After (days),Enviar Após (dias),
Signed,Assinado,
Party User,Usuário do Parceiro,
Unsigned,Não Assinado,
Fulfilment Status,Status de Cumprimento,
N/A,N / D,
Unfulfilled,Não Cumprido,
Partially Fulfilled,Cumprido Parcialmente,
Fulfilled,Realizada,
Lapsed,Caducado,
Contract Period,Período do Contrato,
Signee Details,Detalhes da Signee,
Signee,Signee,
Signed On,Inscrito Em,
Contract Details,Detalhes do Contrato,
Contract Template,Modelo de Contrato,
Contract Terms,Termos do Contrato,
Fulfilment Details,Detalhes de Cumprimento,
Requires Fulfilment,Requer Cumprimento,
Fulfilment Deadline,Prazo de Cumprimento,
Fulfilment Terms,Termos de Cumprimento,
Contract Fulfilment Checklist,Lista de Verificação de Cumprimento do Contrato,
Requirement,Requerimento,
Contract Terms and Conditions,Termos e Condições do Contrato,
Fulfilment Terms and Conditions,Termos e Condições de Cumprimento,
Contract Template Fulfilment Terms,Termos de Cumprimento do Modelo de Contrato,
Email Campaign,Campanha de E-mail,
Email Campaign For ,Campanha de E-mail Para,
Lead is an Organization,Lead é uma Empresa,
CRM-LEAD-.YYYY.-,CRM-LEAD-.YYYY.-,
Person Name,Nome da Pessoa,
Lost Quotation,Cotação Perdida,
Interested,Interessado,
Converted,Convertido,
Do Not Contact,Não Entre Em Contato,
From Customer,Do Cliente,
Campaign Name,Nome da Campanha,
Follow Up,Acompanhamento,
Next Contact By,Próximo Contato Por,
Next Contact Date,Data do Próximo Contato,
Ends On,Termina Em,
Address & Contact,Endereço e Contato,
Mobile No.,Telefone Celular,
Lead Type,Tipo de Lead,
Channel Partner,Canal de Parceria,
Consultant,Consultor,
Market Segment,Segmento de Renda,
Industry,Indústria,
Request Type,Tipo de Solicitação,
Product Enquiry,Consulta de Produto,
Request for Information,Solicitação de Informação,
Suggestions,Sugestões,
Blog Subscriber,Assinante do Blog,
LinkedIn Settings,Configurações do Linkedin,
Company ID,ID da Empresa,
OAuth Credentials,Credenciais Oauth,
Consumer Key,Chave do Consumidor,
Consumer Secret,Consumidor Secreto,
User Details,Detalhes do Usuario,
Person URN,Pessoa Urn,
Session Status,Status da Sessão,
Lost Reason Detail,Detalhe da Razão Perdida,
Opportunity Lost Reason,Oportunidade Razão Perdida,
Potential Sales Deal,Promoção de Vendas Potenciais,
CRM-OPP-.YYYY.-,CRM-OPP-.YYYY.-,
Opportunity From,Oportunidade De,
Customer / Lead Name,Nome do Cliente/Lead,
Opportunity Type,Tipo de Oportunidade,
Converted By,Convertido Por,
Sales Stage,Estágio de Vendas,
Lost Reason,Motivo da Perda,
Expected Closing Date,Data Prevista de Fechamento,
To Discuss,Para Discutir,
With Items,Com Itens,
Probability (%),Probabilidade (%),
Contact Info,Informações Para Contato,
Customer / Lead Address,Endereço do Cliente/Lead,
Contact Mobile No,Celular do Contato,
Enter name of campaign if source of enquiry is campaign,Digite o nome da campanha se o motivo da consulta foi uma campanha.,
Opportunity Date,Data da Oportunidade,
Opportunity Item,Item da Oportunidade,
Basic Rate,Taxa Básica,
Stage Name,Nome Artístico,
Social Media Post,Postagem Em Mídia Social,
Post Status,Status da Postagem,
Posted,Postou,
Share On,Compartilhar No,
Twitter,Twitter,
LinkedIn,Linkedin,
Twitter Post Id,Twitter Post Id,
LinkedIn Post Id,ID de Postagem no Linkedin,
Tweet,Tweet,
Twitter Settings,Configurações do Twitter,
API Secret Key,Chave Secreta Api,
Term Name,Nome do Período Letivo,
Term Start Date,Data de Início do Ano Letivo,
Term End Date,Data de Término do Período Letivo,
Academics User,Usuário Acadêmico,
Academic Year Name,Nome do Ano Letivo,
Article,Artigo,
LMS User,Usuário Lms,
Assessment Criteria Group,Critérios de Avaliação Grupo,
Assessment Group Name,Nome do Grupo de Avaliação,
Parent Assessment Group,Grupo de Avaliação Pai,
Assessment Name,Nome da Avaliação,
Grading Scale,Escala de Avaliação,
Examiner,Examinador,
Examiner Name,Nome do Examinador,
Supervisor,Supervisor,
Supervisor Name,Nome do Supervisor,
Evaluate,Avalie,
Maximum Assessment Score,Pontuação Máxima Assessment,
Assessment Plan Criteria,Critérios Plano de Avaliação,
Maximum Score,Nota Máxima,
Grade,Nota de Avaliação,
Assessment Result Detail,Avaliação Resultado Detalhe,
Assessment Result Tool,Avaliação Resultado Ferramenta,
Result HTML,Resultado Html,
Content Activity,Atividade de Conteúdo,
Last Activity ,Ultima Atividade,
Content Question,Questão de Conteúdo,
Question Link,Link da Pergunta,
Course Name,Nome do Curso,
Topics,Tópicos,
Hero Image,Imagem do Herói,
Default Grading Scale,Escala de Avaliação Padrão,
Education Manager,Gerente de Educação,
Course Activity,Atividade do Curso,
Course Enrollment,Inscrição no Curso,
Activity Date,Data da Atividade,
Course Assessment Criteria,Critérios de Avaliação do Curso,
Weightage,Peso,
Course Content,Conteúdo do Curso,
Quiz,Questionário,
Program Enrollment,Inscrição no Programa,
Enrollment Date,Data de Matrícula,
Instructor Name,Nome do Instrutor,
EDU-CSH-.YYYY.-,EDU-CSH-.YYYY.-,
Course Scheduling Tool,Ferramenta de Agendamento de Cursos,
Course Start Date,Data de Início do Curso,
To TIme,Até o Horário,
Course End Date,Data de Término do Curso,
Course Topic,Tópico do Curso,
Topic,Tópico,
Topic Name,Nome do Tópico,
Education Settings,Configurações de Educação,
Current Academic Year,Ano Acadêmico Em Curso,
Current Academic Term,Termo Acadêmico Atual,
Attendance Freeze Date,Data de Congelamento do Comparecimento,
Validate Batch for Students in Student Group,Validar Lote Para Estudantes Em Grupo de Estudantes,
"For Batch based Student Group, the Student Batch will be validated for every Student from the Program Enrollment.","Para o grupo de alunos com base em lote, o lote de estudante será validado para cada aluno da inscrição no programa.",
Validate Enrolled Course for Students in Student Group,Validar Curso Matriculado Para Alunos do Grupo Estudantil,
"For Course based Student Group, the Course will be validated for every Student from the enrolled Courses in Program Enrollment.","Para o Grupo de Estudantes com Curso, o Curso será validado para cada Estudante dos Cursos Inscritos em Inscrição no Programa.",
Make Academic Term Mandatory,Tornar o Mandato Acadêmico Obrigatório,
"If enabled, field Academic Term will be Mandatory in Program Enrollment Tool.","Se ativado, o Termo Acadêmico do campo será obrigatório na Ferramenta de Inscrição do Programa.",
Skip User creation for new Student,Pular criação de usuário para novo aluno,
"By default, a new User is created for every new Student. If enabled, no new User will be created when a new Student is created.","Por padrão, um novo usuário é criado para cada novo aluno. Se habilitado, nenhum novo usuário será criado quando um novo aluno for criado.",
Instructor Records to be created by,Registros de instrutor a serem criados por,
Employee Number,Número do Colaborador,
Fee Category,Categoria de Taxas,
Fee Component,Componente da Taxa,
Fees Category,Categoria de Taxas,
Fee Schedule,Cronograma de Taxas,
Fee Structure,Estrutura da Taxa,
EDU-FSH-.YYYY.-,EDU-FSH-.YYYY.-,
Fee Creation Status,Status da Criação de Taxas,
In Process,Em Processo,
Send Payment Request Email,Enviar E-mail de Pedido de Pagamento,
Student Category,Categoria do Aluno,
Fee Breakup for each student,Fee Breakup para cada aluno,
Total Amount per Student,Montante Total Por Aluno,
Institution,Instituição,
Fee Schedule Program,Programa de Programação de Taxas,
Student Batch,Série de Alunos,
Total Students,Total de Alunos,
Fee Schedule Student Group,Fee Schedule Student Group,
EDU-FST-.YYYY.-,EDU-FST-.YYYY.-,
EDU-FEE-.YYYY.-,EDU-FEE-.YYYY.-,
Include Payment,Incluir Pagamento,
Send Payment Request,Enviar Pedido de Pagamento,
Student Details,Detalhes do Aluno,
Student Email,E-mail do Aluno,
Grading Scale Name,Nome Escala de Avaliação,
Grading Scale Intervals,Intervalos da Escala de Avaliação,
Intervals,Intervalos,
Grading Scale Interval,Intervalo da Escala de Avaliação,
Grade Code,Código de Nota de Avaliação,
Threshold,Média,
Grade Description,Descrição da Nota de Avaliação,
Guardian,Responsável,
Guardian Name,Nome do Responsável,
Alternate Number,Número Alternativo,
Occupation,Ocupação,
Work Address,Endereço de Trabalho,
Guardian Of ,Responsável Por,
Students,Alunos,
Guardian Interests,Interesses do Responsável,
Guardian Interest,Interesse do Responsável,
Interest,Juros,
Guardian Student,Guardião Student,
EDU-INS-.YYYY.-,EDU-INS-.YYYY.-,
Instructor Log,Registro de Instrutor,
Other details,Outros detalhes,
Option,Opção,
Is Correct,Está Correto,
Program Name,Nome do Programa,
Program Abbreviation,Abreviação do Programa,
Courses,Cursos,
Is Published,Está Publicado,
Allow Self Enroll,Permitir Autoinscrição,
Is Featured,É destaque,
Intro Video,Vídeo Intro,
Program Course,Curso do Programa,
School House,School House,
Boarding Student,Estudante de Embarque,
Check this if the Student is residing at the Institute's Hostel.,Verifique se o estudante reside no albergue do Instituto.,
Walking,Caminhando,
Institute's Bus,Ônibus do Instituto,
Public Transport,Transporte Público,
Self-Driving Vehicle,Veículo de Auto-condução,
Pick/Drop by Guardian,Pick / Drop By Guardian,
Enrolled courses,Cursos matriculados,
Program Enrollment Course,Curso de Inscrição no Programa,
Program Enrollment Fee,Taxa de Inscrição no Programa,
Program Enrollment Tool,Ferramenta de Inscrição no Programa,
Get Students From,Obter Alunos De,
Student Applicant,Inscrição do Aluno,
Get Students,Obter Alunos,
Enrollment Details,Detalhes da Inscrição,
New Program,Novo Programa,
New Student Batch,Novo Lote de Estudantes,
Enroll Students,Matricular Alunos,
New Academic Year,Novo Ano Letivo,
New Academic Term,Novo Prazo Acadêmico,
Program Enrollment Tool Student,Ferramenta de Inscrição de Alunos no Programa,
Student Batch Name,Nome da Série de Alunos,
Program Fee,Taxa do Programa,
Question,Questão,
Single Correct Answer,Resposta Correta Única,
Multiple Correct Answer,Resposta Correta Múltipla,
Quiz Configuration,Configuração do Questionário,
Passing Score,Pontuação de Passagem,
Score out of 100,Pontuação de 100,
Max Attempts,Tentativas Máximas,
Enter 0 to waive limit,Digite 0 para renunciar ao limite,
Grading Basis,Base de Classificação,
Latest Highest Score,Última Pontuação Máxima,
Latest Attempt,Tentativa Mais Recente,
Quiz Activity,Atividade de Questionário,
Enrollment,Inscrição,
Pass,Passar,
Quiz Question,Quiz Question,
Quiz Result,Resultado do Teste,
Selected Option,Opção Selecionada,
Correct,Corrigir,
Wrong,Errado,
Room Name,Nome da Sala,
Room Number,Número da Sala,
Seating Capacity,Número de Assentos,
House Name,Nome Casa,
EDU-STU-.YYYY.-,EDU-STU-.YYYY.-,
Student Mobile Number,Número de Celular do Aluno,
Blood Group,Grupo Sanguíneo,
A+,A+,
A-,A-,
B+,B+,
B-,B-,
O+,O+,
O-,O-,
AB+,AB+,
AB-,AB-,
Nationality,Nacionalidade,
Home Address,Endereço Residencial,
Guardian Details,Detalhes do Responsável,
Guardians,Responsáveis,
Sibling Details,Dados de Irmão/irmã,
Siblings,Irmãos,
Exit,Saída,
Date of Leaving,Data de Saída,
Leaving Certificate Number,Deixando Número do Certificado,
Reason For Leaving,Motivo da Saída,
Student Admission,Admissão do Aluno,
Admission Start Date,Data de Início de Admissão,
Admission End Date,Data de Término de Admissão,
Eligibility and Details,Elegibilidade e Detalhes,
Student Admission Program,Programa de Admissão de Estudantes,
Minimum Age,Idade Minima,
Maximum Age,Máxima Idade,
Application Fee,Taxa de Inscrição,
Naming Series (for Student Applicant),Código Dos Documentos (para Condidato À Vaga de Estudo),
LMS Only,Apenas Lms,
EDU-APP-.YYYY.-,EDU-APP-.YYYY.-,
Application Date,Data de Candidatura,
Student Attendance Tool,Ferramenta de Presença Dos Alunos,
Group Based On,Grupo Baseado Em,
Students HTML,Alunos Html,
Group Based on,Grupo Baseado Em,
Student Group Name,Nome do Grupo de Alunos,
Max Strength,Força Máx.,
Set 0 for no limit,Defina 0 para sem limite,
Instructors,Instrutores,
Student Group Creation Tool,Ferramenta de Criação de Grupos de Alunos,
Leave blank if you make students groups per year,Deixe em branco se você fizer grupos de alunos por ano,
Get Courses,Obter Cursos,
Separate course based Group for every Batch,Grupo separado baseado em cursos para cada lote,
Leave unchecked if you don't want to consider batch while making course based groups. ,Deixe desmarcada se você não quiser considerar lote ao fazer cursos com base grupos.,
Student Group Creation Tool Course,Ferramenta de Criação de Grupo de Alunos,
Course Code,Código do Curso,
Student Group Instructor,Instrutor de Grupo de Estudantes,
Student Group Student,Aluno Grupo de Alunos,
Group Roll Number,Número de Rolo de Grupo,
Student Guardian,Responsável Pelo Aluno,
Relation,Relação,
Mother,Mãe,
Father,Pai,
Student Language,Student Idioma,
Student Leave Application,Pedido de Licença do Aluno,
Mark as Present,Marcar Como Presente,
Student Log,Log do Aluno,
Academic,Acadêmico,
Achievement,Realização,
Student Report Generation Tool,Ferramenta de Geração de Relatórios de Alunos,
Include All Assessment Group,Incluir Todo o Grupo de Avaliação,
Show Marks,Mostrar Marcas,
Add letterhead,Adicionar papel timbrado,
Print Section,Seção de Impressão,
Total Parents Teacher Meeting,Reunião Total de Professores de Pais,
Attended by Parents,Assistido Pelos Pais,
Assessment Terms,Termos de Avaliação,
Student Sibling,Irmão do Aluno,
Studying in Same Institute,Estudar no Mesmo Instituto,
NO,Não,
YES,Sim,
Student Siblings,Irmãos do Aluno,
Topic Content,Conteúdo do Tópico,
Amazon MWS Settings,Configurações do Amazon Mws,
ERPNext Integrations,Integrações Erpnext,
Enable Amazon,Ativar a Amazon,
MWS Credentials,Credenciais Mws,
Seller ID,ID do Vendedor,
AWS Access Key ID,ID da Chave de Acesso da Aws,
MWS Auth Token,Token de Autenticação do Mws,
Market Place ID,ID do Market Place,
AE,AE,
AU,AU,
BR,BR,
CA,CA,
CN,CN,
DE,DE,
ES,ES,
FR,FR,
JP,JP,
IT,IT,
MX,MX,
UK,UK,
US,US,
Customer Type,Tipo de Cliente,
Market Place Account Group,Grupo de Contas do Market Place,
After Date,Depois da Data,
Amazon will synch data updated after this date,A Amazon sincronizará os dados atualizados após essa data,
Sync Taxes and Charges,Sincronizar Impostos e Taxas,
Get financial breakup of Taxes and charges data by Amazon ,Obtenha a divisão financeira de impostos e encargos por dados da Amazon,
Sync Products,Produtos de Sincronização,
Always sync your products from Amazon MWS before synching the Orders details,Sempre sincronize seus produtos do Amazon MWS antes de sincronizar os detalhes dos pedidos,
Sync Orders,Sincronizar Pedidos,
Click this button to pull your Sales Order data from Amazon MWS.,Clique nesse botão para extrair os dados de sua ordem de venda do Amazon MWS.,
Enable Scheduled Sync,Habilitar Sincronização Programada,
Check this to enable a scheduled Daily synchronization routine via scheduler,Marque isto para habilitar uma rotina de sincronização diária programada via agendador,
Max Retry Limit,Limite Máximo de Nova Tentativa,
Exotel Settings,Configurações do Exotel,
Account SID,Sid da Conta,
API Token,Token da Api,
GoCardless Mandate,Mandato Gocardless,
Mandate,Mandato,
GoCardless Customer,Cliente Gocardless,
GoCardless Settings,Configurações Gocardless,
Webhooks Secret,Webhooks Secret,
Plaid Settings,Configurações Plaid,
Synchronize all accounts every hour,Sincronize todas as contas a cada hora,
Plaid Client ID,ID do Cliente da Manta,
Plaid Secret,Segredo da Manta,
Plaid Environment,Ambiente Xadrez,
sandbox,sandbox,
development,desenvolvimento,
production,produção,
QuickBooks Migrator,Migrator de Quickbooks,
Application Settings,Configurações do Aplicativo,
Token Endpoint,Ponto Final do Token,
Scope,Escopo,
Authorization Settings,Configurações de Autorização,
Authorization Endpoint,Ponto Final da Autorização,
Authorization URL,URL de Autorização,
Quickbooks Company ID,ID da Empresa de Quickbooks,
Company Settings,Configurações da Empresa,
Default Shipping Account,Conta de Envio Padrão,
Default Warehouse,Armazém Padrão,
Default Cost Center,Centro de Custo Padrão,
Undeposited Funds Account,Conta de Fundos Não Depositados,
Shopify Log,Log do Shopify,
Request Data,Solicitar Dados,
Shopify Settings,Configurações do Shopify,
status html,status html,
Enable Shopify,Ativar o Shopify,
App Type,Tipo de Aplicativo,
Last Sync Datetime,Data e Hora da Última Sincronização,
Shop URL,URL da Loja,
eg: frappe.myshopify.com,eg: frappe.myshopify.com,
Shared secret,Segredo partilhado,
Webhooks Details,Webhooks Detalhes,
Webhooks,Webhooks,
Customer Settings,Configurações do Cliente,
Default Customer,Cliente Padrão,
Customer Group will set to selected group while syncing customers from Shopify,O Grupo de clientes será definido para o grupo selecionado durante a sincronização dos clientes do Shopify,
For Company,Para a Empresa,
Cash Account will used for Sales Invoice creation,Conta de caixa será usada para criação de fatura de vendas,
Update Price from Shopify To ERPNext Price List,Atualizar preço de Shopify para lista de preços ERPNext,
Default Warehouse to to create Sales Order and Delivery Note,Armazém padrão para criar ordem de venda e nota de remessa,
Sales Order Series,Série de Pedidos de Vendas,
Import Delivery Notes from Shopify on Shipment,Importar notas de entrega do Shopify no envio,
Delivery Note Series,Série de Notas de Entrega,
Import Sales Invoice from Shopify if Payment is marked,Importar fatura de vendas do Shopify se o pagamento estiver marcado,
Sales Invoice Series,Série de Faturas de Vendas,
Shopify Tax Account,Conta Fiscal do Shopify,
Shopify Tax/Shipping Title,Título do Imposto / Envio do Shopify,
ERPNext Account,Conta ERPNext,
Shopify Webhook Detail,Detalhe Shopify Webhook,
Webhook ID,ID da Webhook,
Tally Migration,Migração Tally,
Master Data,Dados Mestre,
"Data exported from Tally that consists of the Chart of Accounts, Customers, Suppliers, Addresses, Items and UOMs","Dados exportados do Tally que consistem no plano de contas, clientes, fornecedores, endereços, itens e UOMs",
Is Master Data Processed,Os Dados Mestre São Processados,
Is Master Data Imported,Os Dados Mestre São Importados?,
Tally Creditors Account,Conta de Credores Tally,
Creditors Account set in Tally,Conta de Credores Definida no Tally,
Tally Debtors Account,Conta de Devedores Tally,
Debtors Account set in Tally,Conta de Devedores Definida no Tally,
Tally Company,Tally Company,
Company Name as per Imported Tally Data,Nome da Empresa Conforme Dados Importados do Tally,
Default UOM,Uom Padrão,
UOM in case unspecified in imported data,UOM em caso não especificado nos dados importados,
ERPNext Company,Empresa Erpnext,
Your Company set in ERPNext,Sua Empresa Configurada no Erpnext,
Processed Files,Arquivos Processados,
Parties,Festas,
UOMs,Unidades de Medida,
Vouchers,Vouchers,
Round Off Account,Conta de Arredondamento,
Day Book Data,Dados do Livro de Dia,
Day Book Data exported from Tally that consists of all historic transactions,Dados do Day Book exportados do Tally que consistem em todas as transações históricas,
Is Day Book Data Processed,Os Dados do Livro Diário São Processados,
Is Day Book Data Imported,Os Dados do Livro Diário São Importados,
Woocommerce Settings,Configurações do Woocommerce,
Enable Sync,Ativar Sincronização,
Woocommerce Server URL,URL do Servidor de Woocommerce,
Secret,Segredo,
API consumer key,Chave do consumidor da API,
API consumer secret,Segredo do consumidor da API,
Tax Account,Conta Fiscal,
Freight and Forwarding Account,Conta de Frete e Encaminhamento,
Creation User,Usuário de Criação,
"The user that will be used to create Customers, Items and Sales Orders. This user should have the relevant permissions.","O usuário que será usado para criar clientes, itens e pedidos de vendas. Este usuário deve ter as permissões relevantes.",
"This warehouse will be used to create Sales Orders. The fallback warehouse is ""Stores"".",Este armazém será usado para criar pedidos de vendas. o armazém de fallback é &quot;Lojas&quot;.,
"The fallback series is ""SO-WOO-"".",A série alternativa é &quot;SO-WOO-&quot;.,
This company will be used to create Sales Orders.,Essa empresa será usada para criar pedidos de vendas.,
Delivery After (Days),Entrega Após (dias),
This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.,Esse é o deslocamento padrão (dias) para a Data de entrega em pedidos de venda. o deslocamento de fallback é de 7 dias a partir da data de colocação do pedido.,
"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Essa é a UOM padrão usada para itens e pedidos de venda. a UOM de fallback é &quot;Nos&quot;.,
Endpoints,Endpoints,
Endpoint,Endpoint,
Antibiotic Name,Nome do Antibiótico,
Healthcare Administrator,Administrador de Serviço de Saúde,
Laboratory User,Usuário de Laboratório,
Is Inpatient,É paciente internado,
Default Duration (In Minutes),Duração Padrão (em Minutos),
Body Part,Parte do Corpo,
Body Part Link,Link da Parte do Corpo,
HLC-CPR-.YYYY.-,HLC-CPR-.YYYY.-,
Procedure Template,Modelo de Procedimento,
Procedure Prescription,Prescrição de Procedimento,
Service Unit,Unidade de Serviço,
Consumables,Consumíveis,
Consume Stock,Consumir Estoque,
Invoice Consumables Separately,Fatura de Consumíveis Separadamente,
Consumption Invoiced,Consumo Faturado,
Consumable Total Amount,Quantidade Total Consumível,
Consumption Details,Detalhes de Consumo,
Nursing User,Usuário de Enfermagem,
Clinical Procedure Item,Item de Procedimento Clínico,
Invoice Separately as Consumables,Fatura Separadamente Como Consumíveis,
Transfer Qty,Qtd de Transferência,
Actual Qty (at source/target),Qtde Real (na origem / destino),
Is Billable,É faturável,
Allow Stock Consumption,Permitir Consumo de Estoque,
Sample UOM,Amostra UDM,
Collection Details,Detalhes da Coleção,
Change In Item,Mudança no Item,
Codification Table,Tabela de Codificação,
Complaints,Reclamações,
Dosage Strength,Força de Dosagem,
Strength,Força,
Drug Prescription,Prescrição de Drogas,
Drug Name / Description,Nome / Descrição do Medicamento,
Dosage,Dosagem,
Dosage by Time Interval,Dosagem Por Intervalo de Tempo,
Interval,Intervalo,
Interval UOM,Uom Intervalo,
Hour,Hora,
Update Schedule,Programação de Atualização,
Exercise,Exercício,
Difficulty Level,Nível de Dificuldade,
Counts Target,Alvo de Contagens,
Counts Completed,Contagens Concluídas,
Assistance Level,Nível de Assistência,
Active Assist,Assistência Ativa,
Exercise Name,Nome do Exercício,
Body Parts,Partes do Corpo,
Exercise Instructions,Instruções de Exercício,
Exercise Video,Vídeo de Exercícios,
Exercise Steps,Etapas do Exercício,
Steps,Passos,
Steps Table,Tabela de Passos,
Exercise Type Step,Etapa de Tipo de Exercício,
Max number of visit,Número máximo de visitas,
Visited yet,Visitou Ainda,
Reference Appointments,Consultas de Referência,
Valid till,Válida até,
Fee Validity Reference,Referência de Validade da Taxa,
Basic Details,Detalhes Básicos,
HLC-PRAC-.YYYY.-,HLC-PRAC-.YYYY.-,
Mobile,Móvel,
Phone (R),Telefone (r),
Phone (Office),Telefone (escritório),
Employee and User Details,Detalhes do Funcionário e do Usuário,
Hospital,Hospital,
Appointments,Compromissos,
Practitioner Schedules,Horários do Praticante,
Charges,Cobranças,
Out Patient Consulting Charge,Cobrança de Consultoria de Paciente Externo,
Default Currency,Moeda Padrão,
Healthcare Schedule Time Slot,Slot de Tempo do Cronograma de Assistência Médica,
Parent Service Unit,Unidade de Serviço Dos Pais,
Service Unit Type,Tipo de Unidade de Serviço,
Allow Appointments,Permitir Compromissos,
Allow Overlap,Permitir Sobreposição,
Inpatient Occupancy,Ocupação de Paciente Internado,
Occupancy Status,Status de Ocupação,
Vacant,Vago,
Occupied,Ocupado,
Item Details,Detalhes do Item,
UOM Conversion in Hours,Conversão de UDM Em Horas,
Rate / UOM,Valor / Udm,
Change in Item,Mudança no Item,
Out Patient Settings,Configurações do Paciente,
Patient Name By,Nome do Paciente Por,
Patient Name,Nome do Paciente,
Link Customer to Patient,Ligar o Cliente Ao Paciente,
"If checked, a customer will be created, mapped to Patient.\nPatient Invoices will be created against this Customer. You can also select existing Customer while creating Patient.","Se marcado, um cliente será criado, mapeado para Paciente. as faturas do paciente serão criadas contra este Cliente. Você também pode selecionar o Cliente existente ao criar o Paciente.",
Default Medical Code Standard,Padrão do Código Médico Padrão,
Collect Fee for Patient Registration,Taxa de Recolha Para Registro de Pacientes,
Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,Marcar isto criará novos Pacientes com o status Desabilitado por padrão e só será habilitado após o faturamento da Taxa de Registro.,
Registration Fee,Taxa de Registro,
Automate Appointment Invoicing,Automatizar Faturamento de Agendamento,
Manage Appointment Invoice submit and cancel automatically for Patient Encounter,Gerenciar Compromisso Enviar fatura e cancelar automaticamente para Encontro do Paciente,
Enable Free Follow-ups,Habilitar Acompanhamentos Gratuitos,
Number of Patient Encounters in Valid Days,Número de Encontros Com Pacientes Em Dias Válidos,
The number of free follow ups (Patient Encounters in valid days) allowed,O número de acompanhamentos gratuitos (encontros com pacientes em dias válidos) permitidos,
Valid Number of Days,Número de Dias Válidos,
Time period (Valid number of days) for free consultations,Período de tempo (número válido de dias) para consultas gratuitas,
Default Healthcare Service Items,Itens de Serviço de Saúde Padrão,
"You can configure default Items for billing consultation charges, procedure consumption items and inpatient visits","Você pode configurar itens padrão para cobrança de despesas de consulta, itens de consumo de procedimento e visitas de pacientes",
Clinical Procedure Consumable Item,Item Consumível de Procedimento Clínico,
Default Accounts,Contas Padrão,
Default income accounts to be used if not set in Healthcare Practitioner to book Appointment charges.,Contas de renda padrão a serem usadas se não forem definidas no Healthcare Practitioner para reservar as despesas de Compromisso.,
Default receivable accounts to be used to book Appointment charges.,Contas a receber padrão a serem usadas para reservar despesas de compromissos.,
Out Patient SMS Alerts,Alertas de SMS Para Pacientes,
Patient Registration,Registro de Paciente,
Registration Message,Mensagem de Registro,
Confirmation Message,Mensagem de Confirmação,
Avoid Confirmation,Evite a Confirmação,
Do not confirm if appointment is created for the same day,Não confirme se o compromisso foi criado no mesmo dia,
Appointment Reminder,Lembrete de Compromisso,
Reminder Message,Mensagem de Lembrete,
Laboratory Settings,Configurações de Laboratório,
Create Lab Test(s) on Sales Invoice Submission,Criar Teste (s) de Laboratório no Envio de Fatura de Vendas,
Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,Marcar isso criará teste (s) de laboratório especificado (s) na fatura de vendas no envio.,
Create Sample Collection document for Lab Test,Criar documento de coleta de amostra para teste de laboratório,
Checking this will create a Sample Collection document  every time you create a Lab Test,Marcar isso criará um documento de coleta de amostra toda vez que você criar um teste de laboratório,
Employee name and designation in print,Nome do empregado e designação em impressão,
Check this if you want the Name and Designation of the Employee associated with the User who submits the document to be printed in the Lab Test Report.,Marque esta opção se desejar que o Nome e Designação do Funcionário associado ao Usuário que submete o documento sejam impressos no Relatório de Teste de Laboratório.,
Do not print or email Lab Tests without Approval,Não imprima ou envie por e-mail testes de laboratório sem aprovação,
Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,Marcar isso restringirá a impressão e o envio de documentos de teste de laboratório por e-mail a menos que tenham o status de aprovado.,
Custom Signature in Print,Assinatura Personalizada na Impressão,
Laboratory SMS Alerts,Alertas SMS Laboratoriais,
Result Printed Message,Resultado da Mensagem Impressa,
Result Emailed Message,Mensagem Enviada Por Email de Resultado,
Check In,Check-in,
Check Out,Confira,
HLC-INP-.YYYY.-,HLC-INP-.YYYY.-,
A Positive,Um Positivo,
A Negative,Um Negativo,
AB Positive,Ab Positivo,
AB Negative,Ab Negativo,
B Positive,B Positivo,
B Negative,B Negativo,
O Positive,O Positivo,
O Negative,O Negativo,
Date of birth,Data de Nascimento,
Admission Scheduled,Admissão Agendada,
Discharge Scheduled,Descarga Agendada,
Discharged,Descarregado,
Admission Schedule Date,Data de Agendamento de Admissão,
Admitted Datetime,Datetime Admitido,
Expected Discharge,Descarga Esperada,
Discharge Date,Data de Quitação,
Lab Prescription,Prescrição de Laboratório,
Lab Test Name,Nome do Teste de Laboratório,
Test Created,Test Criado,
Submitted Date,Data Enviada,
Approved Date,Data Aprovada,
Sample ID,Identificação da Amostra,
Lab Technician,Técnico de Laboratório,
Report Preference,Prevenção de Relatório,
Test Name,Nome do Teste,
Test Template,Modelo de Teste,
Test Group,Grupo de Teste,
Custom Result,Resultado Personalizado,
LabTest Approver,Labtest Approver,
Add Test,Adicionar Teste,
Normal Range,Intervalo Normal,
Result Format,Formato de Resultado,
Single,Solteiro,
Compound,Composto,
Descriptive,Descritivo,
Grouped,Agrupados,
No Result,Nenhum Resultado,
This value is updated in the Default Sales Price List.,Esse valor é atualizado na Lista de Preços de Vendas Padrão.,
Lab Routine,Rotina de Laboratório,
Result Value,Valor de Resultado,
Require Result Value,Exigir o Valor do Resultado,
Normal Test Template,Modelo de Teste Normal,
Patient Demographics,Demografia do Paciente,
HLC-PAT-.YYYY.-,HLC-PAT-.YYYY.-,
Middle Name (optional),Nome do Meio (opcional),
Inpatient Status,Status de Internação,
"If ""Link Customer to Patient"" is checked in Healthcare Settings and an existing Customer is not selected then, a Customer will be created for this Patient for recording transactions in Accounts module.","Se a opção &quot;Vincular cliente ao paciente&quot; estiver marcada nas configurações de saúde e um cliente existente não for selecionado, um cliente será criado para esse paciente para registrar transações no módulo Contas.",
Personal and Social History,História Pessoal e Social,
Marital Status,Estado Civil,
Married,Casado,
Divorced,Divorciado,
Widow,Viúva,
Patient Relation,Relação Com o Paciente,
"Allergies, Medical and Surgical History","Alergias, História Médica e Cirúrgica",
Allergies,Alergias,
Medication,Medicação,
Medical History,Histórico Médico,
Surgical History,História Cirúrgica,
Risk Factors,Fatores de Risco,
Occupational Hazards and Environmental Factors,Perigos Ocupacionais e Fatores Ambientais,
Other Risk Factors,Outros Fatores de Risco,
Patient Details,Detalhes do Paciente,
Additional information regarding the patient,Informações adicionais sobre o paciente,
HLC-APP-.YYYY.-,HLC-APP-.YYYY.-,
Patient Age,Idade do Paciente,
Get Prescribed Clinical Procedures,Obtenha Procedimentos Clínicos Prescritos,
Therapy,Terapia,
Get Prescribed Therapies,Obtenha Terapias Prescritas,
Appointment Datetime,Data e Hora do Compromisso,
Duration (In Minutes),Duração (em Minutos),
Reference Sales Invoice,Fatura de Venda de Referência,
More Info,Mais Informações,
Referring Practitioner,Referindo Praticante,
HLC-PA-.YYYY.-,HLC-PA-.YYYY.-,
Assessment Template,Modelo de Avaliação,
Assessment Datetime,Data da Avaliação,
Assessment Description,Descrição da Avaliação,
Assessment Sheet,Folha de Avaliação,
Total Score Obtained,Pontuação Total Obtida,
Scale Min,Escala Min,
Scale Max,Escala Máxima,
Patient Assessment Detail,Detalhe de Avaliação do Paciente,
Assessment Parameter,Parâmetro de Avaliação,
Patient Assessment Parameter,Parâmetro de Avaliação do Paciente,
Patient Assessment Sheet,Folha de Avaliação do Paciente,
Patient Assessment Template,Modelo de Avaliação do Paciente,
Assessment Parameters,Parâmetros de Avaliação,
Parameters,Parâmetros,
Assessment Scale,Escala de Avaliação,
Scale Minimum,Escala Mínima,
Scale Maximum,Escala Máxima,
HLC-ENC-.YYYY.-,HLC-ENC-.YYYY.-,
Encounter Date,Encontro Data,
Encounter Time,Hora do Encontro,
Encounter Impression,Encounter Impression,
Symptoms,Sintomas,
In print,Na impressão,
Medical Coding,Codificação Médica,
Procedures,Procedimentos,
Therapies,Terapias,
Review Details,Detalhes da Revisão,
Patient Encounter Diagnosis,Diagnóstico de Encontro Com Paciente,
Patient Encounter Symptom,Sintoma de Encontro Com Paciente,
HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
Attach Medical Record,Anexar Prontuário Médico,
Reference DocType,DocType de Referência,
Spouse,Cônjuge,
Family,Família,
Schedule Details,Detalhes da Programação,
Schedule Name,Nome da Programação,
Time Slots,Intervalos de Tempo,
Practitioner Service Unit Schedule,Programa de Unidade de Serviço do Praticante,
Procedure Name,Nome do Procedimento,
Appointment Booked,Nomeação Reservada,
Procedure Created,Procedimento Criado,
HLC-SC-.YYYY.-,HLC-SC-.YYYY.-,
Collected By,Coletado Por,
Particulars,Informações,
Result Component,Componente de Resultado,
HLC-THP-.YYYY.-,HLC-THP-.YYYY.-,
Therapy Plan Details,Detalhes do Plano de Terapia,
Total Sessions,Total de Sessões,
Total Sessions Completed,Total de Sessões Concluídas,
Therapy Plan Detail,Detalhe do Plano de Terapia,
No of Sessions,Nº de Sessões,
Sessions Completed,Sessões Concluídas,
Tele,Tele,
Exercises,Exercícios,
Therapy For,Terapia Para,
Add Exercises,Adicionar Exercícios,
Body Temperature,Temperatura Corporal,
Presence of a fever (temp &gt; 38.5 °C/101.3 °F or sustained temp &gt; 38 °C/100.4 °F),"Presença de febre (temperatura&gt; 38,5 ° C / 101,3 ° F ou temperatura sustentada&gt; 38 ° C / 100,4 ° F)",
Heart Rate / Pulse,Frequência Cardíaca / Pulso,
Adults' pulse rate is anywhere between 50 and 80 beats per minute.,A frequência de pulso dos adultos é entre 50 e 80 batimentos por minuto.,
Respiratory rate,Frequência respiratória,
Normal reference range for an adult is 16–20 breaths/minute (RCP 2012),O intervalo de referência normal para um adulto é de 16-20 respirações / minuto (RCP 2012),
Tongue,Língua,
Coated,Revestido,
Very Coated,Muito Revestido,
Normal,Normal,
Furry,Peludo,
Cuts,Cortes,
Abdomen,Abdômen,
Bloated,Inchado,
Fluid,Fluido,
Constipated,Constipado,
Reflexes,Reflexos,
Hyper,Hyper,
Very Hyper,Muito Hiper,
One Sided,Um Lado,
Blood Pressure (systolic),Pressão Sanguínea (sistólica),
Blood Pressure (diastolic),Pressão Sanguínea (diastólica),
Blood Pressure,Pressão Sanguínea,
"Normal resting blood pressure in an adult is approximately 120 mmHg systolic, and 80 mmHg diastolic, abbreviated ""120/80 mmHg""","A pressão arterial normal em repouso em um adulto é de aproximadamente 120 mmHg sistólica e 80 mmHg diastólica, abreviada &quot;120/80 mmHg&quot;",
Nutrition Values,Valores Nutricionais,
Height (In Meter),Altura (em Metros),
Weight (In Kilogram),Peso (em Quilograma),
BMI,IMC,
Hotel Room,Quarto de Hotel,
Hotel Room Type,Tipo de Quarto do Hotel,
Capacity,Capacidade,
Extra Bed Capacity,Capacidade de Cama Extra,
Hotel Manager,Gerente do Hotel,
Hotel Room Amenity,Amenidade do Quarto do Hotel,
Billable,Faturável,
Hotel Room Package,Pacote de Quarto de Hotel,
Amenities,Facilidades,
Hotel Room Pricing,Preços do Quarto do Hotel,
Hotel Room Pricing Item,Item do Preço do Quarto do Hotel,
Hotel Room Pricing Package,Pacote de Preços de Quarto de Hotel,
Hotel Room Reservation,Reserva de Quarto de Hotel,
Guest Name,Nome do Convidado,
Late Checkin,Entrada Tardia,
Booked,Reservado,
Hotel Reservation User,Usuário de Reserva de Hotel,
Hotel Room Reservation Item,Item de Reserva de Quarto de Hotel,
Hotel Settings,Configurações do Hotel,
Default Taxes and Charges,Impostos e Encargos Padrão,
Default Invoice Naming Series,Série de Nomeação de Fatura Padrão,
HR,Rh,
Date on which this component is applied,Data em que este componente é aplicado,
Salary Slip,Contracheque,
HR User,Usuário do Rh,
Job Applicant,Candidato À Vaga,
Body,Corpo,
Appraisal Template,Modelo de Avaliação,
Parent Department,Departamento Dos Pais,
Leave Block List,Lista de Bloqueio de Licença,
Days for which Holidays are blocked for this department.,Dias para que feriados são bloqueados para este departamento.,
Leave Approver,Aprovador de Licenças,
Expense Approver,Aprovador de Despesas,
Required Skills,Habilidades Necessárias,
Skills,Habilidades,
Driver,Motorista,
HR-DRI-.YYYY.-,HR-DRI-.YYYY.-,
Suspended,Suspenso,
Transporter,Transportador,
Applicable for external driver,Aplicável para driver externo,
Cellphone Number,Número do Celular,
License Details,Detalhes da Licença,
License Number,Número de Licença,
Issuing Date,Data de Emissão,
Driving License Categories,Categorias de Licenças de Condução,
Driving License Category,Categoria de Licença de Condução,
Fleet Manager,Gerente de Frota,
Driver licence class,Classe de carteira de motorista,
HR-EMP-,Hr-emp-,
Employment Type,Tipo de Emprego,
Emergency Contact,Contato de Emergência,
Emergency Contact Name,Nome do Contato de Emergência,
Emergency Phone,Telefone de Emergência,
ERPNext User,Usuário do Erpnext,
"System User (login) ID. If set, it will become default for all HR forms.","Identificação do usuário no sistema (login). Se for marcado, ele vai se tornar padrão para todos os formulários de RH.",
Create User Permission,Criar Permissão de Usuário,
This will restrict user access to other employee records,Isso restringirá o acesso do usuário a outros registros de funcionários,
Joining Details,Unindo Detalhes,
Offer Date,Data da Oferta,
Confirmation Date,Data de Confirmação,
Contract End Date,Data Final do Contrato,
Notice (days),Aviso Prévio ( Dias),
Date Of Retirement,Data da Aposentadoria,
Department and Grade,Departamento e Grau,
Reports to,Relatórios Para,
Attendance and Leave Details,Detalhes de Participação e Licença,
Attendance Device ID (Biometric/RF tag ID),ID do Dispositivo de Atendimento (id de Tag Biométrico / Rf),
Applicable Holiday List,Lista de Férias Aplicável,
Default Shift,Mudança Padrão,
Salary Mode,Modo de Salário,
Bank A/C No.,Nº Cta. Bancária,
Health Insurance,Plano de Saúde,
Health Insurance Provider,Provedor de Seguro de Saúde,
Health Insurance No,Seguro de Saúde Não,
Prefered Email,Email Preferido,
Personal Email,Email Pessoal,
Permanent Address Is,Endereço Permanente É,
Rented,Alugado,
Owned,Pertencente,
Permanent Address,Endereço Permanente,
Prefered Contact Email,Contato de Email Preferido,
Company Email,Email da Empresa,
Provide Email Address registered in company,Forneça o Endereço de Email registado na empresa,
Current Address Is,Endereço Atual É,
Current Address,Endereço Atual,
Personal Bio,Bio Pessoal,
Bio / Cover Letter,Bio / Carta de Apresentação,
Short biography for website and other publications.,Breve biografia para o site e outras publicações.,
Passport Number,Número do Passaporte,
Date of Issue,Data de Emissão,
Place of Issue,Local de Envio,
Widowed,Viúvo(a),
Family Background,Antecedentes Familiares,
"Here you can maintain family details like name and occupation of parent, spouse and children","Aqui você pode manter detalhes familiares como o nome e ocupação do cônjuge, pai e filhos",
Health Details,Detalhes Sobre a Saúde,
"Here you can maintain height, weight, allergies, medical concerns etc","Aqui você pode manter a altura, peso, alergias, restrições médicas, etc",
Educational Qualification,Qualificação Educacional,
Previous Work Experience,Experiência Anterior de Trabalho,
External Work History,Histórico Profissional no Exterior,
History In Company,Histórico na Empresa,
Internal Work History,História Trabalho Interno,
Resignation Letter Date,Data da Carta de Demissão,
Relieving Date,Data da Liberação,
Reason for Leaving,Motivo da Saída,
Leave Encashed?,Licenças Cobradas?,
Encashment Date,Data da Cobrança,
New Workplace,Novo Local de Trabalho,
Returned Amount,Valor Devolvido,
Advance Account,Conta de Adiantamentos,
Benefits Applied,Benefícios Aplicados,
Benefit Type and Amount,Tipo de Benefício e Montante,
Task Weight,Peso da Tarefa,
Employee Education,Escolaridade do Colaborador,
School/University,Escola / Universidade,
Graduate,Pós-graduação,
Post Graduate,Pós-graduação,
Under Graduate,Em Graduação,
Year of Passing,Ano de Passagem,
Class / Percentage,Classe / Percentual,
Major/Optional Subjects,Assuntos Principais / Opcionais,
Employee External Work History,Histórico de Trabalho Externo do Colaborador,
Total Experience,Experiência Total,
Default Leave Policy,Política de Licença Padrão,
Employee Group Table,Tabela de Grupo de Empregados,
ERPNext User ID,ID do Usuário do Erpnext,
Employee Internal Work History,Histórico de Trabalho Interno do Colaborador,
Activities,Actividades,
Employee Onboarding Activity,Atividade de Onboarding Dos Funcionários,
Employee Promotion Detail,Detalhe de Promoção do Funcionário,
Employee Transfer Property,Propriedade de Transferência do Empregado,
Unclaimed amount,Montante não reclamado,
Holiday List Name,Nome da Lista de Feriados,
Total Holidays,Total de Feriados,
Add Weekly Holidays,Adicionar Feriados Semanais,
Weekly Off,Descanso Semanal,
Add to Holidays,Adicionar Aos Feriados,
Holidays,Feriados,
Clear Table,Limpar Tabela,
Retirement Age,Idade Para Aposentadoria,
Enter retirement age in years,Insira a idade da aposentadoria em anos,
Stop Birthday Reminders,Interromper Lembretes de Aniversários,
Leave Settings,Deixe as Configurações,
Accepted,Aceito,
Printing Details,Imprimir Detalhes,
Job Title,Cargo,
Allocation,Alocação,
Select Employees,Selecione Colaboradores,
Allocate,Alocar,
Max Leaves Allowed,Max Folhas Permitidas,
Maximum Continuous Days Applicable,Máximo de Dias Contínuos Aplicáveis,
Select Payroll Period,Selecione Período de Pagamento,
Abbr,Abrev,
Condition and Formula,Condição e Fórmula,
Total Working Hours,Total de Horas de Trabalho,
Hour Rate,Valor Por Hora,
Bank Account No.,Nº Conta Bancária,
Earning & Deduction,Ganho &amp; Dedução,
Loan repayment,Pagamento do empréstimo,
Employee Loan,Empréstimo Para Colaboradores,
Total Principal Amount,Valor Total do Capital,
Total Interest Amount,Montante Total de Juros,
Total Loan Repayment,O Reembolso Total do Empréstimo,
net pay info,Informações de remuneração líquida,
Gross Pay - Total Deduction - Loan Repayment,Pagamento Bruto - Dedução Total - Reembolso do Empréstimo,
Net Pay (in words) will be visible once you save the Salary Slip.,Pagamento líquido (por extenso) será visível quando você salvar a folha de pagamento.,
Staffing Plan Details,Detalhes do Plano de Pessoal,
Optional,Opcional,
Costing,Custo,
Vehicle,Veículo,
License Plate,Placa do Veículo,
Odometer Value (Last),Quilometragem do Odômetro (última),
Acquisition Date,Data da Aquisição,
Chassis No,Nº do Chassi,
Vehicle Value,Valor do Veículo,
Insurance Details,Detalhes do Seguro,
Insurance Company,Companhia de Seguros,
Policy No,Nº da Apólice,
Additional Details,Detalhes Adicionais,
Fuel Type,Tipo de Combustível,
Petrol,Gasolina,
Diesel,Diesel,
Natural Gas,Gás Natural,
Electric,Elétrico,
Fuel UOM,Udm do Combustível,
Last Carbon Check,Última Inspeção de Emissão de Carbono,
Wheels,Rodas,
Doors,Portas,
last Odometer Value ,último valor do odômetro,
Service Detail,Detalhes da Manutenção do Veículo,
Hub Tracked Item,Item Rastreado Por Hub,
Hub Node,Hub Node,
Image List,Lista de Imagens,
Item Manager,Gerente de Item,
Hub User,Usuário do Hub,
Hub Password,Senha do Hub,
Hub Users,Usuários do Hub,
Marketplace Settings,Configurações do Marketplace,
Disable Marketplace,Desativar Mercado,
Marketplace URL (to hide and update label),URL do Marketplace (para ocultar e atualizar o rótulo),
Registered,Registrado,
Sync in Progress,Sincronização Em Andamento,
Hub Seller Name,Nome do Vendedor do Hub,
Custom Data,Dados Personalizados,
Repay From Salary,Reembolsar a Partir de Salário,
Regular Payment,Pagamento Frequente,
Loan Closure,Fechamento de Empréstimo,
Rate of Interest (%) Yearly,Taxa de Juros (%) Anual,
MAT-MSH-.YYYY.-,MAT-MSH-.YYYY.-,
Generate Schedule,Gerar Agenda,
Schedules,Horários,
Maintenance Schedule Detail,Detalhe da Programação da Manutenção,
Scheduled Date,Data Agendada,
Actual Date,Data Real,
Maintenance Schedule Item,Ítem da Programação da Manutenção,
Random,Aleatório,
No of Visits,Nº de Visitas,
MAT-MVS-.YYYY.-,MAT-MVS-.YYYY.-,
Maintenance Date,Data da Manutenção,
Maintenance Time,Horário da Manutenção,
Completion Status,Status de Conclusão,
Partially Completed,Parcialmente Concluída,
Fully Completed,Totalmente Concluído,
Unscheduled,Sem Agendamento,
Breakdown,Pane,
Purposes,Finalidades,
Customer Feedback,Comentário do Cliente,
Maintenance Visit Purpose,Finalidade da Visita de Manutenção,
Work Done,Trabalho Feito,
Against Document No,Contra o Documento Nº,
Against Document Detail No,Contra o Nº do Documento Detalhado,
MFG-BLR-.YYYY.-,MFG-BLR-.YYYY.-,
Order Type,Tipo de Pedido,
Blanket Order Item,Item de Ordem de Cobertura,
Ordered Quantity,Quantidade Encomendada,
Item to be manufactured or repacked,Item a ser fabricado ou reembalado,
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Quantidade do item obtido após a fabricação / reembalagem a partir de determinadas quantidades de matéria-prima,
Set rate of sub-assembly item based on BOM,Definir custo de semiacabado baseado na lista de materiais,
Allow Alternative Item,Permitir Item Alternativo,
Item UOM,Unidade de Medida do Item,
Conversion Rate,Taxa de Conversão,
Rate Of Materials Based On,Preço Dos Materiais Com Base Em,
With Operations,Com Operações,
Manage cost of operations,Gerenciar custo das operações,
Transfer Material Against,Transferir Material Contra,
Routing,Encaminhamento,
Materials,Materiais,
Quality Inspection Required,Inspeção de Qualidade Necessária,
Quality Inspection Template,Modelo de Inspeção de Qualidade,
Scrap,Sucata,
Scrap Items,Itens de Sucata,
Operating Cost,Custo de Operação,
Raw Material Cost,Custo de Matéria-prima,
Scrap Material Cost,Custo do Material Sucateado,
Operating Cost (Company Currency),Custo Operacional (moeda da Empresa),
Raw Material Cost (Company Currency),Custo da Matéria-prima (moeda da Empresa),
Scrap Material Cost(Company Currency),Custo de Material de Sucata (moeda da Empresa),
Total Cost,Custo Total,
Total Cost (Company Currency),Custo Total (moeda da Empresa),
Materials Required (Exploded),Materiais Necessários (lista Explodida),
Exploded Items,Itens Explodidos,
Show in Website,Mostrar no Site,
Item Image (if not slideshow),Imagem do Item (se não for slideshow),
Thumbnail,Miniatura,
Website Specifications,Especificações do Site,
Show Items,Mostrar Itens,
Show Operations,Mostrar Operações,
Website Description,Descrição do Site,
BOM Explosion Item,Item da Explosão da LDM,
Qty Consumed Per Unit,Qtde Consumida Por Unidade,
Include Item In Manufacturing,Incluir Item na Fabricação,
BOM Item,Item da LDM,
Item operation,Operação de item,
Rate & Amount,Taxa e Valor,
Basic Rate (Company Currency),Valor Base (moeda da Empresa),
Scrap %,Sucata %,
Original Item,Item Original,
BOM Operation,Operação da LDM,
Operation Time ,Tempo de Operação,
In minutes,Em Minutos,
Batch Size,Tamanho do Batch,
Base Hour Rate(Company Currency),Valor Por Hora Base (moeda da Empresa),
Operating Cost(Company Currency),Custo Operacional (moeda da Empresa),
BOM Scrap Item,Item de Sucata da LDM,
Basic Amount (Company Currency),Total Base (moeda da Empresa),
BOM Update Tool,Ferramenta de Atualização da Lista de Materiais,
"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.\nIt also updates latest price in all the BOMs.","Substitua uma lista de materiais específica em todas as outras BOMs onde é usado. Ele irá substituir o antigo link da BOM, atualizar o custo e regenerar a tabela &quot;BOM Explosion Item&quot; conforme nova lista técnica. Ele também atualiza o preço mais recente em todas as listas de materiais.",
Replace BOM,Substituir Lista de Materiais,
Current BOM,LDM Atual,
The BOM which will be replaced,A LDM que será substituída,
The new BOM after replacement,A nova LDM após substituição,
Replace,Substituir,
Update latest price in all BOMs,Atualize o preço mais recente em todas as LDMs,
BOM Website Item,LDM do Item do Site,
BOM Website Operation,LDM da Operação do Site,
Operation Time,Tempo da Operação,
PO-JOB.#####,PO-JOB. #####,
Timing Detail,Detalhe da Temporização,
Time Logs,Tempo Logs,
Total Time in Mins,Tempo Total Em Minutos,
Operation ID,ID da Operação,
Transferred Qty,Qtde Transferida,
Job Started,Job Started,
Started Time,Hora de Início,
Current Time,Hora Atual,
Job Card Item,Item do Cartão de Emprego,
Job Card Time Log,Registro de Tempo do Cartão de Trabalho,
Time In Mins,Tempo Em Mins,
Completed Qty,Qtde Concluída,
Manufacturing Settings,Configurações de Fabricação,
Raw Materials Consumption,Consumo de Matérias-primas,
Allow Multiple Material Consumption,Permitir o Consumo de Vários Materiais,
Backflush Raw Materials Based On,Confirmação de Matérias-primas Baseada Em,
Material Transferred for Manufacture,Material Transferido Para Fabricação,
Capacity Planning,Planejamento de Capacidade,
Disable Capacity Planning,Desativar Planejamento de Capacidade,
Allow Overtime,Permitir Hora Extra,
Allow Production on Holidays,Permitir a Produção Em Feriados,
Capacity Planning For (Days),Planejamento de Capacidade Para (dias),
Default Warehouses for Production,Armazéns Padrão Para Produção,
Default Work In Progress Warehouse,Armazém Padrão de Trabalho Em Andamento,
Default Finished Goods Warehouse,Armazém de Produtos Acabados,
Default Scrap Warehouse,Depósito de Sucata Padrão,
Overproduction Percentage For Sales Order,Porcentagem de Superprodução Para Pedido de Venda,
Overproduction Percentage For Work Order,Porcentagem de Superprodução Para Ordem de Serviço,
Other Settings,Outras Definições,
Update BOM Cost Automatically,Atualize Automaticamente o Preço da Lista de Materiais,
Material Request Plan Item,Item do Plano de Solicitação de Material,
Material Request Type,Tipo de Requisição de Material,
Material Issue,Saída de Material,
Customer Provided,Cliente Fornecido,
Minimum Order Quantity,Quantidade Mínima de Pedido,
Default Workstation,Estação de Trabalho Padrão,
Production Plan,Plano de Produção,
MFG-PP-.YYYY.-,MFG-PP-.YYYY.-,
Get Items From,Obter Itens De,
Get Sales Orders,Obter Pedidos de Venda,
Material Request Detail,Detalhes do Pedido de Material,
Get Material Request,Obter Requisições de Material,
Material Requests,Requisições de Material,
Get Items For Work Order,Obter Itens Para Ordem de Trabalho,
Material Request Planning,Planejamento de Solicitação de Material,
Include Non Stock Items,Inclua Itens Sem Estoque,
Include Subcontracted Items,Incluir Itens Subcontratados,
Ignore Existing Projected Quantity,Ignorar Quantidade Projetada Existente,
"To know more about projected quantity, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">click here</a>.","Para saber mais sobre a quantidade projetada, <a href=""https://erpnext.com/docs/user/manual/en/estoque/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">clique aqui</a>.",
Download Required Materials,Download de Materiais Necessários,
Get Raw Materials For Production,Obtenha Matérias-primas Para a Produção,
Total Planned Qty,Qtd Total Planejado,
Total Produced Qty,Qtd Total Produzido,
Material Requested,Material Solicitado,
Production Plan Item,Item do Planejamento de Produção,
Make Work Order for Sub Assembly Items,Fazer Ordem de Trabalho Para Itens de Submontagem,
"If enabled, system will create the work order for the exploded items against which BOM is available.","Se ativado, o sistema criará a ordem de serviço para os itens explodidos em relação aos quais a lista técnica está disponível.",
Planned Start Date,Data Planejada de Início,
Quantity and Description,Quantidade e Descrição,
material_request_item,material_request_item,
Product Bundle Item,Item do Pacote de Produtos,
Production Plan Material Request,Requisição de Material do Planejamento de Produção,
Production Plan Sales Order,Pedido de Venda do Plano de Produção,
Sales Order Date,Data do Pedido de Venda,
Routing Name,Nome de Roteamento,
MFG-WO-.YYYY.-,MFG-WO-.YYYY.-,
Item To Manufacture,Item Para Fabricação,
Material Transferred for Manufacturing,Material Transferido Para Fabricação,
Manufactured Qty,Qtde Fabricada,
Use Multi-Level BOM,Utilize LDM Multinível,
Plan material for sub-assemblies,Material de Plano de sub-conjuntos,
Skip Material Transfer to WIP Warehouse,Pule a Transferência de Material Para o Wip Warehouse,
Check if material transfer entry is not required,Verifique se a entrada de transferência de material não é necessária,
Backflush Raw Materials From Work-in-Progress Warehouse,Backflush de Matérias-primas do Armazém de Trabalho Em Andamento,
Update Consumed Material Cost In Project,Atualizar Custo de Material Consumido no Projeto,
Warehouses,Armazéns,
This is a location where raw materials are available.,Este é um local onde as matérias-primas estão disponíveis.,
Work-in-Progress Warehouse,Armazém de Trabalho Em Andamento,
This is a location where operations are executed.,Este é um local onde as operações são executadas.,
This is a location where final product stored.,Este é um local onde o produto final é armazenado.,
Scrap Warehouse,Armazém de Sucata,
This is a location where scraped materials are stored.,Este é um local onde os materiais raspados são armazenados.,
Required Items,Itens Necessários,
Actual Start Date,Data de Início Real,
Planned End Date,Data Planejada de Término,
Actual End Date,Data Final Real,
Operation Cost,Custo da Operação,
Planned Operating Cost,Custo Operacional Planejado,
Actual Operating Cost,Custo Operacional Real,
Additional Operating Cost,Custo Operacional Adicional,
Total Operating Cost,Custo de Operacional Total,
Manufacture against Material Request,Fabricação Vinculada a uma Requisição de Material,
Work Order Item,Item de Ordem de Trabalho,
Available Qty at Source Warehouse,Qtd Disponível no Armazém de Origem,
Available Qty at WIP Warehouse,Qtd Disponível no Armazém de Trabalho Em Andamento,
Work Order Operation,Operação de Ordem de Trabalho,
Operation Description,Descrição da Operação,
Operation completed for how many finished goods?,Operação concluída para quantos produtos acabados?,
Work in Progress,Trabalho Em Andamento,
Estimated Time and Cost,Tempo Estimado e Custo,
Planned Start Time,Horário Planejado de Início,
Planned End Time,Horário Planejado de Término,
in Minutes,Em Minutos,
Actual Time and Cost,Tempo e Custo Real,
Actual Start Time,Hora Real de Início,
Actual End Time,Tempo Final Real,
Updated via 'Time Log',Atualizado Via 'time Log',
Actual Operation Time,Tempo Real da Operação,
in Minutes\nUpdated via 'Time Log',"Em Minutos\natualizado Através do ""registo de Tempo""",
(Hour Rate / 60) * Actual Operation Time,(Valor por Hora / 60) * Tempo de operação real,
Workstation Name,Nome da Estação de Trabalho,
Production Capacity,Capacidade de Produção,
Operating Costs,Custos Operacionais,
Electricity Cost,Custo de Energia Elétrica,
per hour,por hora,
Consumable Cost,Custo Dos Consumíveis,
Rent Cost,Custo do Aluguel,
Wages,Salário,
Wages per hour,Salário por hora,
Net Hour Rate,Valor Hora Líquido,
Workstation Working Hour,Hora de Trabalho da Estação de Trabalho,
Certification Application,Aplicativo de Certificação,
Name of Applicant,Nome do Requerente,
Certification Status,Status de Certificação,
Yet to appear,Ainda para aparecer,
Certified,Certificado,
Not Certified,Não Certificado,
USD,USD,
INR,EM R,
Certified Consultant,Consultor Certificado,
Name of Consultant,Nome do Consultor,
Certification Validity,Validade de Certificação,
Discuss ID,Discutir ID,
GitHub ID,ID do GitHub,
Non Profit Manager,Gerente Sem Fins Lucrativos,
Chapter Head,Chefe de Capítulo,
Meetup Embed HTML,Meetup Embed Html,
chapters/chapter_name\nleave blank automatically set after saving chapter.,capítulos / chapter_name deixa em branco definido automaticamente depois de salvar o capítulo.,
Chapter Members,Membros do Capítulo,
Members,Membros,
Chapter Member,Membro do Capítulo,
Website URL,Endereço do Site,
Leave Reason,Motivo da Saída,
Donor Name,Nome do Doador,
Donor Type,Tipo de Doador,
Withdrawn,Retirado,
Grant Application Details ,Detalhes do Pedido de Concessão,
Grant Description,Descrição do Grant,
Requested Amount,Montante Requerido,
Has any past Grant Record,Já havia passado Grant Record,
Show on Website,Mostrar no Site,
Assessment  Mark (Out of 10),Marca de Avaliação (fora de 10),
Assessment  Manager,Gerente de Avaliação,
Email Notification Sent,Notificação Por Email Enviada,
NPO-MEM-.YYYY.-,NPO-MEM-.YYYY.-,
Membership Expiry Date,Data de Expiração da Associação,
Razorpay Details,Detalhes Razorpay,
Subscription ID,ID de Inscrição,
Customer ID,Identificação do Cliente,
Subscription Activated,Assinatura Ativada,
Subscription Start ,Início da Assinatura,
Subscription End,Fim da Assinatura,
Non Profit Member,Membro Sem Fins Lucrativos,
Membership Status,Status da Associação,
Member Since,Membro Desde,
Payment ID,ID de Pagamento,
Membership Settings,Configurações de Associação,
Enable RazorPay For Memberships,Habilitar Razorpay Para Assinaturas,
RazorPay Settings,Configurações Razorpay,
Billing Cycle,Ciclo de Faturamento,
Billing Frequency,Frequência de Cobrança,
"The number of billing cycles for which the customer should be charged. For example, if a customer is buying a 1-year membership that should be billed on a monthly basis, this value should be 12.","O número de ciclos de faturamento pelos quais o cliente deve ser cobrado. Por exemplo, se um cliente está comprando uma associação de 1 ano que deve ser cobrada mensalmente, esse valor deve ser 12.",
Razorpay Plan ID,ID do Plano Razorpay,
Volunteer Name,Nome do Voluntário,
Volunteer Type,Tipo de Voluntário,
Availability and Skills,Disponibilidade e Habilidades,
Availability,Disponibilidade,
Weekends,Finais de Semana,
Availability Timeslot,Calendário de Disponibilidade,
Morning,Manhã,
Afternoon,Tarde,
Evening,Noite,
Anytime,A Qualquer Momento,
Volunteer Skills,Habilidades Voluntárias,
Volunteer Skill,Habilidade Voluntária,
Homepage,Página Inicial,
Hero Section Based On,Seção de Herói Baseada Em,
Homepage Section,Seção da Página Inicial,
Hero Section,Seção Hero,
Tag Line,Slogan,
Company Tagline for website homepage,O Slogan da Empresa para página inicial do site,
Company Description for website homepage,A Descrição da Empresa para a página inicial do site,
Homepage Slideshow,Slideshow da Página Inicial,
"URL for ""All Products""","URL Para ""todos os Produtos""",
Products to be shown on website homepage,Produtos para serem mostrados na página inicial,
Homepage Featured Product,Produtos Em Destaque na Página Inicial,
route,rota,
Section Based On,Seção Baseada Em,
Section Cards,Seção Cartões,
Number of Columns,Numero de Colunas,
Number of columns for this section. 3 cards will be shown per row if you select 3 columns.,Número de colunas para esta seção. 3 cartões serão mostrados por linha se você selecionar 3 colunas.,
Section HTML,Seção Html,
Use this field to render any custom HTML in the section.,Use este campo para renderizar qualquer HTML personalizado na seção.,
Section Order,Ordem de Seção,
"Order in which sections should appear. 0 is first, 1 is second and so on.","Ordem em que seções devem aparecer. 0 é primeiro, 1 é o segundo e assim por diante.",
Homepage Section Card,Cartão de Seção da Página Inicial,
Subtitle,Subtítulo,
Products Settings,Configurações de Produtos,
Home Page is Products,Página Inicial É Produtos,
"If checked, the Home page will be the default Item Group for the website","Se for selecionado, a Página Inicial será o Grupo de Itens padrão do site",
Show Availability Status,Mostrar Status de Disponibilidade,
Product Page,Página do Produto,
Products per Page,Produtos Por Página,
Enable Field Filters,Ativar Filtros de Campo,
Item Fields,Campos de Item,
Enable Attribute Filters,Ativar Filtros de Atributo,
Attributes,Atributos,
Hide Variants,Ocultar Variantes,
Website Attribute,Atributo do Site,
Attribute,Atributo,
Website Filter Field,Campo de Filtro do Site,
Activity Cost,Custo da Atividade,
Billing Rate,Preço de Faturamento,
Costing Rate,Preço de Custo,
title,título,
Projects User,Usuário de Projetos,
Default Costing Rate,Preço de Custo Padrão,
Default Billing Rate,Preço de Faturamento Padrão,
Dependent Task,Tarefa Dependente,
Project Type,Tipo de Projeto,
% Complete Method,Método Para % Concluído,
Task Completion,Conclusão da Tarefa,
Task Progress,Progresso da Tarefa,
% Completed,% Concluído,
From Template,Do Modelo,
Project will be accessible on the website to these users,Projeto estará acessível no site para os usuários,
Copied From,Copiado De,
Start and End Dates,Datas de Início e Término,
Actual Time in Hours (via Timesheet),Tempo Real (em Horas),
Costing and Billing,Custos e Faturamento,
Total Costing Amount (via Timesheet),Montante Total de Custeio (via Timesheets),
Total Expense Claim (via Expense Claim),Reivindicação de Despesa Total (via Relatórios de Despesas),
Total Purchase Cost (via Purchase Invoice),Custo Total de Compra (via Fatura de Compra),
Total Sales Amount (via Sales Order),Valor Total Das Vendas (por Ordem do Cliente),
Total Billable Amount (via Timesheet),Valor Billable Total (via Timesheets),
Total Billed Amount (via Sales Invoice),Valor Total Faturado (através de Faturas de Vendas),
Total Consumed Material Cost (via Stock Entry),Custo Total de Material Consumido (via Entrada Em Estoque),
Gross Margin,Margem Bruta,
Gross Margin %,Margem Bruta %,
Monitor Progress,Monitorar o Progresso,
Collect Progress,Recolha Progresso,
Frequency To Collect Progress,Freqüência Para Coletar o Progresso,
Twice Daily,Duas Vezes Por Dia,
First Email,Primeiro Email,
Second Email,Segundo E-mail,
Time to send,Hora de enviar,
Day to Send,Dia Para Enviar,
Message will be sent to the users to get their status on the Project,A mensagem será enviada aos usuários para obter seu status no Projeto,
Projects Manager,Gerente de Projetos,
Project Template,Modelo de Projeto,
Project Template Task,Tarefa do Modelo de Projeto,
Begin On (Days),Comece Em (dias),
Duration (Days),Duração (dias),
Project Update,Atualização de Projeto,
Project User,Usuário do Projeto,
View attachments,Visualizar anexos,
Projects Settings,Configurações de Projetos,
Ignore Workstation Time Overlap,Ignorar a Sobreposição do Tempo da Estação de Trabalho,
Ignore User Time Overlap,Ignorar a Sobreposição do Tempo do Usuário,
Ignore Employee Time Overlap,Ignorar a Sobreposição do Tempo do Empregado,
Weight,Peso,
Parent Task,Tarefa Dos Pais,
Timeline,Timeline,
Expected Time (in hours),Tempo esperado (em horas),
% Progress,% de Progresso,
Is Milestone,É Milestone,
Task Description,Descrição da Tarefa,
Dependencies,Dependências,
Dependent Tasks,Tarefas Dependentes,
Depends on Tasks,Depende de Tarefas,
Actual Start Date (via Timesheet),Data de Início Real (via Registro de Tempo),
Actual Time in Hours (via Timesheet),Tempo Real (em horas),
Actual End Date (via Timesheet),Data Final Real (via Registro de Tempo),
Total Expense Claim (via Expense Claim),Reivindicação Despesa Total (via Despesa Claim),
Review Date,Data da Revisão,
Closing Date,Data de Encerramento,
Task Depends On,Tarefa Depende De,
Task Type,Tipo de Tarefa,
TS-.YYYY.-,TS-.YYYY.-,
Employee Detail,Detalhes do Colaborador,
Billing Details,Dados de Faturação,
Total Billable Hours,Total de Horas Trabalhadas,
Total Billed Hours,Horas Totais Faturadas,
Total Costing Amount,Valor Total Dos Custos,
Total Billable Amount,Valor Total Faturável,
Total Billed Amount,Valor Total Faturado,
% Amount Billed,Valor Faturado %,
Hrs,Hrs,
Costing Amount,Valor de Custo,
Corrective/Preventive,Corretivo / Preventivo,
Corrective,Corretivo,
Preventive,Preventivo,
Resolution,Solução,
Resolutions,Resoluções,
Quality Action Resolution,Resolução de Ação de Qualidade,
Quality Feedback Parameter,Parâmetro de Feedback de Qualidade,
Quality Feedback Template Parameter,Parâmetro de Modelo de Feedback de Qualidade,
Quality Goal,Objetivo de Qualidade,
Monitoring Frequency,Freqüência de Monitoramento,
Weekday,Dia da Semana,
Objectives,Objetivos,
Quality Goal Objective,Objetivo Objetivo de Qualidade,
Objective,Objetivo,
Agenda,Agenda,
Minutes,Minutos,
Quality Meeting Agenda,Agenda da Reunião de Qualidade,
Quality Meeting Minutes,Minutos da Reunião de Qualidade,
Minute,Minuto,
Parent Procedure,Procedimento Pai,
Processes,Processos,
Quality Procedure Process,Processo de Procedimento de Qualidade,
Process Description,Descrição do Processo,
Link existing Quality Procedure.,Vincule o Procedimento de Qualidade existente.,
Additional Information,Informação Adicional,
Quality Review Objective,Objetivo de Revisão de Qualidade,
DATEV Settings,Configurações Datev,
Regional,Regional,
Consultant ID,ID do consultor,
GST HSN Code,Código GST HSN,
HSN Code,Código HSN,
GST Settings,Configurações de GST,
GST Summary,Resumo do GST,
GSTIN Email Sent On,E-mail do GSTIN enviado,
GST Accounts,Contas GST,
B2C Limit,Limite B2C,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Defina o valor da fatura para B2C. B2CL e B2CS calculados com base neste valor da fatura.,
GSTR 3B Report,Relatório GSTR 3B,
January,Janeiro,
February,Fevereiro,
March,Março,
April,Abril,
August,Agosto,
September,Setembro,
October,Outubro,
November,Novembro,
December,Dezembro,
JSON Output,Saída JSON,
Invoices with no Place Of Supply,Faturas sem lugar de suprimento,
Import Supplier Invoice,Fatura de Fornecedor de Importação,
Invoice Series,Série de Faturas,
Upload XML Invoices,Carregar Faturas Xml,
Zip File,Arquivo Zip,
Import Invoices,Faturas de Importação,
Click on Import Invoices button once the zip file has been attached to the document. Any errors related to processing will be shown in the Error Log.,Clique no botão Importar faturas quando o arquivo zip tiver sido anexado ao documento. Quaisquer erros relacionados ao processamento serão mostrados no log de erros.,
Lower Deduction Certificate,Certificado de Menor Dedução,
Certificate Details,Detalhes do Certificado,
194A,194A,
194C,194C,
194D,194D,
194H,194H,
194I,194I,
194J,194J,
194LA,194LA,
194LBB,194LBB,
194LBC,194LBC,
Certificate No,Certificado Nº,
Deductee Details,Detalhes do Deductee,
PAN No,Pan No,
Validity Details,Detalhes de Validade,
Rate Of TDS As Per Certificate,Taxa de Tds Conforme Certificado,
Certificate Limit,Limite de Certificado,
Invoice Series Prefix,Prefixo da Série de Fatura,
Active Menu,Menu Ativo,
Restaurant Menu,Menu do Restaurante,
Price List (Auto created),Lista de preços (criada automaticamente),
Restaurant Manager,Gerente de Restaurante,
Restaurant Menu Item,Item do Menu do Restaurante,
Restaurant Order Entry,Entrada de Pedido de Restaurante,
Restaurant Table,Mesa de Restaurante,
Click Enter To Add,Clique em Enter para Adicionar,
Last Sales Invoice,Última Fatura de Vendas,
Current Order,Ordem Atual,
Restaurant Order Entry Item,Item de Entrada de Pedido de Restaurante,
Served,Servido,
Restaurant Reservation,Reserva de Restaurante,
Waitlisted,Colocado na Lista de Espera,
No Show,No Show,
No of People,Número de Pessoas,
Reservation Time,Tempo de Reserva,
Reservation End Time,Hora de Término da Reserva,
No of Seats,Número de Assentos,
Minimum Seating,Assentos Mínimos,
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Acompanhe as Campanhas de Vendas. Acompanhe os Leads, Orçamentos, Ordens de Venda, etc. das Campanhas para medir o Retorno do Investimento.",
SAL-CAM-.YYYY.-,SAL-CAM-.YYYY.-,
Campaign Schedules,Horários de Campanha,
Buyer of Goods and Services.,Comprador de Produtos e Serviços.,
CUST-.YYYY.-,CUST-.YYYY.-,
Default Company Bank Account,Conta Bancária da Empresa Padrão,
From Lead,Do Lead,
Account Manager,Gerente de Contas,
Allow Sales Invoice Creation Without Sales Order,Permitir a Criação de Faturas de Vendas Sem Pedido de Vendas,
Allow Sales Invoice Creation Without Delivery Note,Permitir a Criação de Faturas de Vendas Sem Nota de Entrega,
Default Price List,Lista de Preços Padrão,
Primary Address and Contact Detail,Endereço Principal e Detalhes de Contato,
"Select, to make the customer searchable with these fields","Selecione, para tornar o cliente pesquisável com esses campos",
Customer Primary Contact,Contato Primário do Cliente,
"Reselect, if the chosen contact is edited after save","Reseleccione, se o contato escolhido for editado após salvar",
Customer Primary Address,Endereço Principal do Cliente,
"Reselect, if the chosen address is edited after save","Reseleccione, se o endereço escolhido for editado após salvar",
Primary Address,Endereço Primário,
Mention if non-standard receivable account,Mencione se a conta a receber não for a conta padrão,
Credit Limit and Payment Terms,Limite de Crédito e Termos de Pagamento,
Additional information regarding the customer.,Informações adicionais sobre o cliente.,
Sales Partner and Commission,Parceiro de Vendas e Comissão,
Commission Rate,Percentual de Comissão,
Sales Team Details,Detalhes da Equipe de Vendas,
Customer POS id,ID de PDV do Cliente,
Customer Credit Limit,Limite de Crédito do Cliente,
Bypass Credit Limit Check at Sales Order,Controle do Limite de Crédito de Bypass na Ordem do Cliente,
Industry Type,Tipo de Indústria,
MAT-INS-.YYYY.-,MAT-INS-.YYYY.-,
Installation Date,Data de Instalação,
Installation Time,O Tempo de Instalação,
Installation Note Item,Item da Nota de Instalação,
Installed Qty,Qtde Instalada,
Lead Source,Origem do Lead,
Period Start Date,Data de Início do Período,
Period End Date,Data de Término do Período,
Cashier,Caixa,
Difference,Diferença,
Modes of Payment,Modos de Pagamento,
Linked Invoices,Faturas Vinculadas,
POS Closing Voucher Details,Detalhes do Voucher de Fechamento do PDV,
Collected Amount,Montante Recolhido,
Expected Amount,Quantidade Esperada,
POS Closing Voucher Invoices,Faturas de Vouchers de Fechamento de Ponto de Venda,
Quantity of Items,Quantidade de Itens,
"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**. \n\nThe package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".\n\nFor 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 Product Bundle Item.\n\nNote: BOM = Bill of Materials","Agrega um grupo de **Itens** noutro **Item**. Isto é útil se estiver a agrupar certos **Itens** num pacote e manter o estoque dos **Itens ** embalados e não o **Item** agregado.\n\nO pacote de **Item** terá ""Item em Estoque"" como ""Não"" e ""É Item de Vendas"" como ""Sim"".\n\nPor exemplo: se está a vender Computadores e Mochilas separadamente e tem um preço especial se o cliente comprar ambos, então, o Computador + Mochila será um novo Item de Pacote de Produtos.\n\nObservação: LDM = Lista de Materiais",
Parent Item,Item Pai,
List items that form the package.,Lista de itens que compõem o pacote.,
SAL-QTN-.YYYY.-,SAL-QTN-.YYYY.-,
Quotation To,Orçamento Para,
Rate at which customer's currency is converted to company's base currency,Taxa na qual a moeda do cliente é convertida para a moeda base da empresa,
Rate at which Price list currency is converted to company's base currency,Taxa na qual a moeda da lista de preços é convertida para a moeda base da empresa,
Additional Discount and Coupon Code,Código Adicional de Desconto e Cupom,
Referral Sales Partner,Parceiro de Vendas de Referência,
In Words will be visible once you save the Quotation.,Por extenso será visível quando você salvar o orçamento.,
Term Details,Detalhes Dos Termos,
Quotation Item,Item do Orçamento,
Against Doctype,Contra o DocType,
Against Docname,Contra o Docname,
Additional Notes,Notas Adicionais,
SAL-ORD-.YYYY.-,SAL-ORD-.YYYY.-,
Skip Delivery Note,Ignorar Nota de Entrega,
In Words will be visible once you save the Sales Order.,Por extenso será visível quando você salvar o Pedido de Venda.,
Track this Sales Order against any Project,Acompanhar este Pedido de Venda relacionado a qualquer projeto,
Billing and Delivery Status,Status do Faturamento e Entrega,
Not Delivered,Não Entregue,
Fully Delivered,Totalmente Entregue,
Partly Delivered,Parcialmente Entregue,
Not Applicable,Não Aplicável,
%  Delivered,% Entregue,
% of materials delivered against this Sales Order,% do material entregue deste Pedido de Venda,
% of materials billed against this Sales Order,% do material faturado deste Pedido de Venda,
Not Billed,Não Faturado,
Fully Billed,Totalmente Faturado,
Partly Billed,Parcialmente Faturado,
Ensure Delivery Based on Produced Serial No,Garantir a Entrega Com Base no Número de Série Produzido,
Supplier delivers to Customer,O fornecedor entrega diretamente ao cliente,
Delivery Warehouse,Armazém de Entrega,
Planned Quantity,Quantidade Planejada,
For Production,Para Produção,
Work Order Qty,Quantidade de Ordem de Serviço,
Produced Quantity,Quantidade Produzida,
Used for Production Plan,Usado Para o Plano de Produção,
Sales Partner Type,Tipo de Parceiro de Vendas,
Contact No.,Nº Contato.,
Contribution (%),Contribuição (%),
Contribution to Net Total,Contribuição Para o Total Líquido,
Selling Settings,Configurações de Vendas,
Settings for Selling Module,Configurações do Módulo de Vendas,
Customer Naming By,Nomeação de Cliente Por,
Campaign Naming By,Nomeação de Campanha Por,
Default Customer Group,Grupo de Clientes Padrão,
Default Territory,Território Padrão,
Close Opportunity After Days,Fechar Oportunidade Após Dias,
Default Quotation Validity Days,Dias de Validade de Cotação Padrão,
Sales Update Frequency,Frequência de Atualização de Vendas,
Each Transaction,Cada Transação,
SMS Center,Centro de SMS,
Send To,Enviar Para,
All Contact,Todo Contato,
All Customer Contact,Todo Contato do Cliente,
All Supplier Contact,Todos Contatos de Fornecedor,
All Sales Partner Contact,Todos Contatos de Parceiros de Vendas,
All Lead (Open),Todos Leads Em Aberto,
All Employee (Active),Todos Colaboradores (ativos),
All Sales Person,Todos Vendedores,
Create Receiver List,Criar Lista de Receptor,
Receiver List,Lista de Recebedores,
Messages greater than 160 characters will be split into multiple messages,Mensagens maiores do que 160 caracteres vão ser divididos em múltiplas mensagens,
Total Characters,Total de Personagens,
Total Message(s),Total de Mensagem(s),
Authorization Control,Controle de Autorização,
Authorization Rule,Regra de Autorização,
Average Discount,Desconto Médio,
Customerwise Discount,Desconto Referente Ao Cliente,
Itemwise Discount,Desconto Relativo Ao Item,
Customer or Item,Cliente Ou Item,
Customer / Item Name,Nome do Cliente/produto,
Authorized Value,Valor Autorizado,
Applicable To (Role),Aplicável Para (função),
Applicable To (Employee),Aplicável Para (colaborador),
Applicable To (User),Aplicável Para (usuário),
Applicable To (Designation),Aplicável Para (designação),
Approving Role (above authorized value),Função de Aprovador (para autorização de valor excedente),
Approving User  (above authorized value),Usuário Habilitado para Aprovar (acima do valor autorizado),
Brand Defaults,Padrões de Marca,
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Entidade Legal / Subsidiária com um Plano de Contas separado pertencente à Organização.,
Change Abbreviation,Mudar Abreviação,
Parent Company,Empresa-mãe,
Default Values,Valores Padrão,
Default Holiday List,Lista Padrão de Feriados,
Default Selling Terms,Termos de Venda Padrão,
Default Buying Terms,Termos de Compra Padrão,
Create Chart Of Accounts Based On,Criar Plano de Contas Baseado Em,
Standard Template,Template Padrão,
Existing Company,Empresa Existente,
Chart Of Accounts Template,Modelo de Plano de Contas,
Existing Company ,Companhia Existente,
Date of Establishment,Data de Estabelecimento,
Sales Settings,Configurações de Vendas,
Monthly Sales Target,Meta de Vendas Mensais,
Sales Monthly History,Histórico Mensal de Vendas,
Transactions Annual History,Histórico Anual de Transações,
Total Monthly Sales,Total de Vendas Mensais,
Default Cash Account,Conta Caixa Padrão,
Default Receivable Account,Contas a Receber Padrão,
Round Off Cost Center,Centro de Custo de Arredondamento,
Discount Allowed Account,Conta Permitida Com Desconto,
Discount Received Account,Conta Recebida Com Desconto,
Exchange Gain / Loss Account,Conta de Ganho / Perda Com Câmbio,
Unrealized Exchange Gain/Loss Account,Conta de Ganho / Perda de Câmbio Não Realizada,
Allow Account Creation Against Child Company,Permitir Criação de Conta Contra Empresa-filha,
Default Payable Account,Contas a Pagar Padrão,
Default Employee Advance Account,Conta Padrão de Adiantamento À Colaboradores,
Default Cost of Goods Sold Account,Conta de Custo Padrão de Mercadorias Vendidas,
Default Income Account,Conta Padrão de Recebimento,
Default Deferred Revenue Account,Conta de Receita Diferida Padrão,
Default Deferred Expense Account,Conta de Despesas Diferidas Padrão,
Default Payroll Payable Account,Conta Padrão Para Folha de Pagamentos,
Default Expense Claim Payable Account,Conta Paga de Pedido de Despesa Padrão,
Stock Settings,Configurações de Estoque,
Enable Perpetual Inventory,Habilitar Inventário Perpétuo,
Default Inventory Account,Conta de Inventário Padrão,
Stock Adjustment Account,Conta de Ajuste,
Fixed Asset Depreciation Settings,Configurações de Depreciação do Ativo Imobilizado,
Series for Asset Depreciation Entry (Journal Entry),Série Para Lançamento de Depreciação de Ativos (lançamento no Livro Diário),
Gain/Loss Account on Asset Disposal,Conta de Ganho / Perda Com Descarte de Ativos,
Asset Depreciation Cost Center,Centro de Custo do Ativo Depreciado,
Budget Detail,Detalhe do Orçamento,
Exception Budget Approver Role,Função de Aprovação do Orçamento de Exceção,
Company Info,Informações da Empresa,
For reference only.,Apenas para referência.,
Company Logo,Logotipo da Empresa,
Date of Incorporation,Data de Incorporação,
Date of Commencement,Data de Início,
Phone No,Nº de Telefone,
Company Description,Descrição da Empresa,
Registration Details,Detalhes de Registro,
Company registration numbers for your reference. Tax numbers etc.,Números de registro da empresa para sua referência. Exemplo: CNPJ IE etc,
Delete Company Transactions,Excluir Transações Companhia,
Currency Exchange,Câmbio,
Specify Exchange Rate to convert one currency into another,Especifique Taxa de Câmbio para converter uma moeda em outra,
From Currency,De Moeda,
To Currency,A Moeda,
For Buying,Para Comprar,
For Selling,À venda,
Customer Group Name,Nome do Grupo de Clientes,
Parent Customer Group,Grupo de Clientes Pai,
Only leaf nodes are allowed in transaction,Somente nós-folha são permitidos em transações,
Mention if non-standard receivable account applicable,Mencione se a conta a receber aplicável não for a conta padrão,
Credit Limits,Limites de Crédito,
Email Digest,Resumo Por Email,
Send regular summary reports via Email.,Enviar relatórios periódicos de síntese via Email.,
Email Digest Settings,Configurações do Resumo Por Email,
How frequently?,Com que frequência?,
Next email will be sent on:,Próximo email será enviado em:,
Note: Email will not be sent to disabled users,Observação: Emails não serão enviado para usuários desabilitados,
Profit & Loss,Lucro e Perdas,
New Income,Novas Receitas,
New Expenses,Novas Despesas,
Annual Income,Receita Anual,
Annual Expenses,Despesas Anuais,
Bank Balance,Saldo Bancário,
Bank Credit Balance,Saldo de Crédito Bancário,
Receivables,Recebíveis,
Payables,Contas a Pagar,
Sales Orders to Bill,Ordens de Vendas Para Faturamento,
Purchase Orders to Bill,Pedidos de Compra Para Fatura,
New Sales Orders,Novos Pedidos de Venda,
New Purchase Orders,Novos Pedidos de Compra,
Sales Orders to Deliver,Ordens de Vendas Para Entregar,
Purchase Orders to Receive,Pedidos de Compra a Receber,
New Purchase Invoice,Nova Fatura de Compra,
New Quotations,Novas Cotações,
Open Quotations,Citações Abertas,
Open Issues,Incidentes Abertos,
Open Projects,Projetos Abertos,
Purchase Orders Items Overdue,Itens de Pedidos de Compra Em Atraso,
Upcoming Calendar Events,Próximos Eventos do Calendário,
Open To Do,Atribuições Em Aberto,
Add Quote,Adicionar Citar,
Global Defaults,Padrões Globais,
Default Company,Empresa Padrão,
Current Fiscal Year,Ano Fiscal Atual,
Default Distance Unit,Unidade de Distância Padrão,
Hide Currency Symbol,Ocultar Símbolo de Moeda,
Do not show any symbol like $ etc next to currencies.,Não mostrar nenhum símbolo como R$ etc ao lado de moedas.,
"If disable, 'Rounded Total' field will not be visible in any transaction","Desativa campo ""total arredondado"" em qualquer tipo de transação",
Disable In Words,Desativar Por Extenso,
"If disable, 'In Words' field will not be visible in any transaction","Desativa campo ""por extenso"" em qualquer tipo de transação",
Item Classification,Classificação do Item,
General Settings,Configurações Gerais,
Item Group Name,Nome do Grupo de Itens,
Parent Item Group,Grupo de Item Pai,
Item Group Defaults,Padrões de Grupo de Itens,
Item Tax,Imposto do Item,
Check this if you want to show in website,Marque esta opção se você deseja mostrar no site,
Show this slideshow at the top of the page,Mostrar esta apresentação de slides no topo da página,
HTML / Banner that will show on the top of product list.,HTML / Faixa que vai ser mostrada no topo da lista de produtos.,
Set prefix for numbering series on your transactions,Definir prefixo para séries de numeração em suas transações,
Setup Series,Configuração de Séries,
Select Transaction,Selecione a Transação,
Help HTML,Ajuda HTML,
Series List for this Transaction,Lista de séries para esta transação,
User must always select,O Usuário deve sempre selecionar,
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Marque esta opção se você deseja forçar o usuário a selecionar uma série antes de salvar. Não haverá nenhum padrão se você marcar isso.,
Update Series,Atualizar Séries,
Change the starting / current sequence number of an existing series.,Alterar o número sequencial de início/atual de uma série existente.,
Prefix,Prefixo,
This is the number of the last created transaction with this prefix,Este é o número da última transação criada com este prefixo,
Update Series Number,Atualizar Números de Séries,
Quotation Lost Reason,Motivo da Perda do Orçamento,
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 / filial / revendedor que vende os produtos de empresas de uma comissão.,
Sales Partner Name,Nome do Parceiro de Vendas,
Partner Type,Tipo de Parceiro,
Address & Contacts,Endereços e Contatos,
Address Desc,Descrição do Endereço,
Contact Desc,Descrição do Contato,
Sales Partner Target,Metas do Parceiro de Vendas,
Targets,Metas,
Show In Website,Mostrar no Site,
Referral Code,Código de Referencia,
To Track inbound purchase,Para rastrear compras de entrada,
Logo,Logotipo,
Partner website,Site Parceiro,
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 várias pessoas das vendas ** ** para que você pode definir e monitorar as metas.,
Name and Employee ID,Nome e ID do Colaborador,
Sales Person Name,Nome do Vendedor,
Parent Sales Person,Vendedor Pai,
Select company name first.,Selecione o nome da empresa por primeiro.,
Sales Person Targets,Metas do Vendedor,
Set targets Item Group-wise for this Sales Person.,Estabelecer Metas para este Vendedor por Grupo de Itens,
Supplier Group Name,Nome do Grupo de Fornecedores,
Parent Supplier Group,Grupo de Fornecedores Pai,
Target Detail,Detalhe da Meta,
Target Qty,Meta de Qtde,
Target  Amount,Valor da Meta,
Target Distribution,Distribuição de Metas,
"Standard Terms and Conditions that can be added to Sales and Purchases.\n\nExamples:\n\n1. Validity of the offer.\n1. Payment Terms (In Advance, On Credit, part advance etc).\n1. What is extra (or payable by the Customer).\n1. Safety / usage warning.\n1. Warranty if any.\n1. Returns Policy.\n1. Terms of shipping, if applicable.\n1. Ways of addressing disputes, indemnity, liability, etc.\n1. Address and Contact of your Company.","Termos e Condições Padrão que podem ser adicionados às Compras e Vendas.\n\n Exemplos: \n\n 1. Validade da oferta.\n 1. Condições de pagamento (Com Antecedência, no Crédito, parte com antecedência etc).\n 1. o que é adicional (ou a pagar pelo Cliente).\n 1. Aviso de segurança / utilização.\n 1. Garantia, se houver.\n 1. Política de Devolução.\n 1. Condições de entrega, caso seja aplicável.\n 1. Formas de abordar litígios, indemnização, responsabilidade, etc. \n 1. Endereço e Contacto da sua Empresa.",
Applicable Modules,Módulos Aplicáveis,
Terms and Conditions Help,Ajuda de Termos e Condições,
Classification of Customers by region,Classificação dos clientes por região,
Territory Name,Nome do Território,
Parent Territory,Território Pai,
Territory Manager,Gestor de Territórios,
For reference,Para referência,
Territory Targets,Metas do Território,
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Definir orçamentos para Grupos de Itens neste território. Você também pode incluir a sazonalidade defininda na Distribuição.,
UOM Name,Nome da Unidade de Medida,
Check this to disallow fractions. (for Nos),Marque esta opção para não permitir frações. (Para n),
Website Item Group,Grupo de Itens do Site,
Cross Listing of Item in multiple groups,Listagem cruzada dos produtos que pertencem à vários grupos,
Default settings for Shopping Cart,As configurações padrão para Carrinho de Compras,
Enable Shopping Cart,Ativar Carrinho de Compras,
Display Settings,Configurações de Exibição,
Show Public Attachments,Mostrar Anexos Públicos,
Show Price,Mostrar Preço,
Show Stock Availability,Mostrar Disponibilidade de Estoque,
Show Contact Us Button,Mostrar Entre Em Contato Conosco,
Show Stock Quantity,Mostrar a Quantidade de Estoque,
Show Apply Coupon Code,Mostrar Aplicar Código de Cupom,
Allow items not in stock to be added to cart,Permitir que itens não em estoque sejam adicionados ao carrinho,
Prices will not be shown if Price List is not set,Os preços não serão mostrados se a lista de preços não estiver configurada,
Quotation Series,Séries de Orçamento,
Checkout Settings,Configurações de Vendas,
Enable Checkout,Ativar Caixa,
Payment Success Url,URL de Confirmação de Pagamento,
After payment completion redirect user to selected page.,Após a conclusão do pagamento redirecionar usuário para a página selecionada.,
Batch Details,Detalhes do Lote,
Batch ID,ID do Lote,
image,imagem,
Parent Batch,Lote Pai,
Manufacturing Date,Data de Fabricação,
Batch Quantity,Quantidade de Lote,
Batch UOM,Lote UDM,
Source Document Type,Tipo de Documento de Origem,
Source Document Name,Nome do Documento de Origem,
Batch Description,Descrição do Lote,
Bin,Caixa,
Reserved Quantity,Quantidade Reservada,
Actual Quantity,Quantidade Real,
Requested Quantity,Quantidade Solicitada,
Reserved Qty for sub contract,Qtd reservada para subcontrato,
Moving Average Rate,Taxa da Média Móvel,
FCFS Rate,Taxa Fcfs,
Customs Tariff Number,Número de Tarifa Alfandegária,
Tariff Number,Número de Tarifas,
Delivery To,Entregar Para,
MAT-DN-.YYYY.-,MAT-DN-.YYYY.-,
Is Return,É Devolução,
Issue Credit Note,Emitir Nota de Crédito,
Return Against Delivery Note,Devolução Contra Guia de Remessa,
Customer's Purchase Order No,Nº do Pedido de Compra do Cliente,
Billing Address Name,Endereço de Faturamento,
Required only for sample item.,Necessário apenas para o item de amostra.,
"If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.","Se você criou um modelo padrão de Impostos e Taxas de Vendas Modelo, selecione um e clique no botão abaixo.",
In Words will be visible once you save the Delivery Note.,Por extenso será visível quando você salvar a Guia de Remessa.,
In Words (Export) will be visible once you save the Delivery Note.,Por extenso (Exportação) será visível quando você salvar a Guia de Remessa.,
Transporter Info,Informações da Transportadora,
Driver Name,Nome do Motorista,
Track this Delivery Note against any Project,Acompanhar este Guia de Remessa contra qualquer projeto,
Inter Company Reference,Referência Entre Empresas,
Print Without Amount,Imprimir Sem Valores,
% Installed,Instalado %,
% of materials delivered against this Delivery Note,% do material entregue contra esta Guia de Remessa,
Installation Status,Status da Instalação,
Excise Page Number,Número de Página do Imposto,
Instructions,Instruções,
From Warehouse,Armazém de Origem,
Against Sales Order,Relacionado Ao Pedido de Venda,
Against Sales Order Item,Relacionado Ao Item do Pedido de Venda,
Against Sales Invoice,Contra a Fatura de Venda,
Against Sales Invoice Item,Contra o Item da Fatura de Venda,
Available Batch Qty at From Warehouse,Qtde Disponível do Lote no Armazém,
Available Qty at From Warehouse,Qtde Disponível no Armazém de Origem,
Delivery Settings,Configurações de Entrega,
Dispatch Settings,Configurações de Despacho,
Dispatch Notification Template,Modelo de Notificação de Despacho,
Dispatch Notification Attachment,Anexo de Notificação de Despacho,
Leave blank to use the standard Delivery Note format,Deixe em branco para usar o formato padrão de nota de entrega,
Send with Attachment,Enviar com anexo,
Delay between Delivery Stops,Atraso entre paradas de entrega,
Delivery Stop,Parada de Entrega,
Lock,Trancar,
Visited,Visitado,
Order Information,Informação do Pedido,
Contact Information,Informações de Contato,
Email sent to,Email Enviado para,
Dispatch Information,Informação de Despacho,
Estimated Arrival,Chegada Estimada,
MAT-DT-.YYYY.-,MAT-DT-.YYYY.-,
Initial Email Notification Sent,Notificação Inicial de E-mail Enviada,
Delivery Details,Detalhes da Entrega,
Driver Email,E-mail do Motorista,
Driver Address,Endereço do Driver,
Total Estimated Distance,Distância Total Estimada,
Distance UOM,Distância UDM,
Departure Time,Hora de Partida,
Delivery Stops,Paradas de Entrega,
Calculate Estimated Arrival Times,Calcule os Horários de Chegada Estimados,
Use Google Maps Direction API to calculate estimated arrival times,Use a API de direção do Google Maps para calcular os tempos estimados de chegada,
Optimize Route,Otimizar Rota,
Use Google Maps Direction API to optimize route,Use a API de direção do Google Maps para otimizar a rota,
In Transit,Em Trânsito,
Fulfillment User,Usuário de Cumprimento,
"A Product or a Service that is bought, sold or kept in stock.","Um produto ou um serviço que é comprado, vendido ou mantido em estoque.",
STO-ITEM-.YYYY.-,STO-ITEM-.YYYY.-,
Variant Of,Variante De,
"If item is a variant of another item then description, image, pricing, taxes etc will be set from the template unless explicitly specified","Se o item é uma variante de outro item, em seguida, descrição, imagem, preços, impostos etc será definido a partir do modelo, a menos que explicitamente especificado",
Is Item from Hub,É Item do Hub,
Default Unit of Measure,Unidade de Medida Padrão,
Maintain Stock,Manter Estoque,
Standard Selling Rate,Valor de Venda Padrão,
Auto Create Assets on Purchase,Criar Automaticamente Ativos na Compra,
Asset Naming Series,Série de Nomenclatura de Ativos,
Over Delivery/Receipt Allowance (%),Sobretaxa de Entrega / Recebimento (%),
Barcodes,Códigos de Barra,
Shelf Life In Days,Vida Útil Em Dias,
End of Life,Validade,
Default Material Request Type,Tipo de Requisição de Material Padrão,
Valuation Method,Método de Avaliação,
FIFO,FIFO,
Moving Average,Média Móvel,
Warranty Period (in days),Período de Garantia (em dias),
Auto re-order,Reposição Automática,
Reorder level based on Warehouse,Nível de reposição baseado no Armazén,
Will also apply for variants unless overrridden,Também se aplica a variantes a não ser que seja sobrescrito,
Units of Measure,Unidades de Medida,
Will also apply for variants,Também se aplica às variantes,
Serial Nos and Batches,Números de Série e Lotes,
Has Batch No,Tem Nº de Lote,
Automatically Create New Batch,Criar Novo Lote Automaticamente,
Batch Number Series,Série de Números Em Lote,
"Example: ABCD.#####. If series is set and Batch No is not mentioned in transactions, then automatic batch number will be created based on this series. If you always want to explicitly mention Batch No for this item, leave this blank. Note: this setting will take priority over the Naming Series Prefix in Stock Settings.","Exemplo: ABCD. #####. Se a série estiver configurada e o número de lote não for mencionado nas transações, o número de lote automático será criado com base nessa série. Se você sempre quiser mencionar explicitamente o Lote Não para este item, deixe em branco. Nota: esta configuração terá prioridade sobre o prefixo da série de nomeação em Configurações de estoque.",
Has Expiry Date,Tem Data de Expiração,
Retain Sample,Manter a Amostra,
Max Sample Quantity,Quantidade Máx. de Amostra,
Maximum sample quantity that can be retained,Quantidade máxima de amostras que pode ser mantida,
Has Serial No,Tem Nº de Série,
Serial Number Series,Séries de Nº de Série,
"Example: ABCD.#####\nIf series is set and Serial No is not mentioned in transactions, then automatic serial number will be created based on this series. If you always want to explicitly mention Serial Nos for this item. leave this blank.","Exemplo: ABCD ##### Se a série está configurada e o Nr. de Série não é mencionado nas transações, então será criado um número de série automático com base nesta série. Se sempre quis mencionar explicitamente os Números de Série para este item, deixe isto em branco.",
Variants,Variantes,
Has Variants,Tem Variantes,
"If this item has variants, then it cannot be selected in sales orders etc.","Se este item tem variantes, então ele não pode ser selecionado em pedidos de venda etc.",
Variant Based On,Variant Based On,
Item Attribute,Atributos do Item,
"Sales, Purchase, Accounting Defaults","Vendas, Compra, Padrões Contábeis",
Item Defaults,Padrões de Item,
"Purchase, Replenishment Details","Compra, Detalhes de Reabastecimento",
Is Purchase Item,É item de compra,
Default Purchase Unit of Measure,Unidade de Medida de Compra Padrão,
Minimum Order Qty,Pedido Mínimo,
Minimum quantity should be as per Stock UOM,A quantidade mínima deve ser de acordo com a UOM de estoque,
Average time taken by the supplier to deliver,Tempo médio necessário para entrega do fornecedor.,
Is Customer Provided Item,Item Fornecido Pelo Cliente,
Delivered by Supplier (Drop Ship),Entregue Pelo Fornecedor (drop Ship),
Supplier Items,Itens do Fornecedor,
Foreign Trade Details,Detalhes Comércio Exterior,
Country of Origin,País de Origem,
Sales Details,Detalhes de Vendas,
Default Sales Unit of Measure,Unidade de Medida de Vendas Padrão,
Is Sales Item,É item de venda,
Max Discount (%),Desconto Máx. (%),
No of Months,Não de Meses,
Customer Items,Itens de Clientes,
Inspection Criteria,Critérios de Inspeção,
Inspection Required before Purchase,Inspeção Requerida antes da Compra,
Inspection Required before Delivery,Inspeção Requerida antes da Entrega,
Default BOM,LDM Padrão,
Supply Raw Materials for Purchase,Abastecimento de Matérias-primas Para a Compra,
If subcontracted to a vendor,Se subcontratada a um fornecedor,
Customer Code,Código do Cliente,
Default Item Manufacturer,Fabricante do Item Padrão,
Default Manufacturer Part No,Número da Peça do Fabricante Padrão,
Show in Website (Variant),Mostar no Site (variante),
Items with higher weightage will be shown higher,Os itens com maior weightage será mostrado maior,
Show a slideshow at the top of the page,Mostrar uma apresentação de slides no topo da página,
Website Image,Imagem do Site,
Website Warehouse,Armazém do Site,
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Mostrar ""Em Estoque"" ou ""Esgotado"" baseado no estoque disponível neste armazén.",
Website Item Groups,Grupos de Itens do Site,
List this Item in multiple groups on the website.,Listar este item em vários grupos no site.,
Copy From Item Group,Copiar do Item do Grupo,
Website Content,Conteúdo do Site,
You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,Você pode usar qualquer marcação válida do Bootstrap 4 nesse campo. Será mostrado na sua página de itens.,
Total Projected Qty,Quantidade Total Projetada,
Hub Publishing Details,Detalhes da Publicação do Hub,
Publish in Hub,Publicar no Hub,
Publish Item to hub.erpnext.com,Publicar Item para hub.erpnext.com,
Hub Category to Publish,Categoria Hub Para Publicar,
Hub Warehouse,Hub Warehouse,
"Publish ""In Stock"" or ""Not in Stock"" on Hub based on stock available in this warehouse.",Publicar &quot;Em estoque&quot; ou &quot;Não disponível&quot; no Hub com base nas ações disponíveis neste armazém.,
Synced With Hub,Sincronizado Com o Hub,
Item Alternative,Alternativa de Itens,
Alternative Item Code,Código de Item Alternativo,
Two-way,Em Dois Sentidos,
Alternative Item Name,Nome Alternativo do Item,
Attribute Name,Nome do Atributo,
Numeric Values,Valores Numéricos,
From Range,Da Faixa,
Increment,Incremento,
To Range,Para a Faixa,
Item Attribute Values,Valores Dos Atributos,
Item Attribute Value,Item Atributo Valor,
Attribute Value,Atributo Valor,
Abbreviation,Abreviatura,
"This will be appended to the Item Code of the variant. For example, if your abbreviation is ""SM"", and the item code is ""T-SHIRT"", the item code of the variant will be ""T-SHIRT-SM""","Isso vai ser anexado ao Código do item da variante. Por exemplo, se a sua abreviatura é ""SM"", e o código do item é ""t-shirt"", o código do item da variante será ""T-shirt-SM""",
Item Barcode,Código de Barras do Item,
Barcode Type,Tipo de Código de Barras,
EAN,EAN,
UPC-A,UPC-A,
Item Customer Detail,Detalhe do Cliente do Item,
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Para a comodidade dos clientes, estes códigos podem ser usados em formatos de impressão, como Notas Fiscais e Guias de Remessa",
Ref Code,Código de Ref.,
Item Default,Item Padrão,
Purchase Defaults,Padrões de Compra,
Default Buying Cost Center,Centro de Custo Padrão de Compra,
Default Supplier,Fornecedor Padrão,
Default Expense Account,Conta Padrão de Despesa,
Sales Defaults,Padrões de Vendas,
Default Selling Cost Center,Centro de Custo Padrão de Vendas,
Item Manufacturer,Item Fabricante,
Item Price,Preço do Item,
Packing Unit,Unidade de Embalagem,
Quantity  that must be bought or sold per UOM,Quantidade que deve ser comprada ou vendida por UOM,
Item Quality Inspection Parameter,Parâmetro de Inspeção de Qualidade do Item,
Acceptance Criteria,Critérios de Aceitação,
Item Reorder,Reposição de Item,
Check in (group),Entrada (grupo),
Request for,Solicitado Para,
Re-order Level,Nível de Reposição,
Re-order Qty,Qtde Para Reposição,
Item Supplier,Fornecedor do Item,
Item Variant,Item Variant,
Item Variant Attribute,Variant Item Atributo,
Do not update variants on save,Não atualize as variantes em salvar,
Fields will be copied over only at time of creation.,Os campos serão copiados apenas no momento da criação.,
Allow Rename Attribute Value,Permitir Renomear o Valor do Atributo,
Rename Attribute Value in Item Attribute.,Renomeie o Valor do Atributo no Atributo do Item.,
Copy Fields to Variant,Copiar Campos Para Variante,
Item Website Specification,Especificação do Site do Item,
Table for Item that will be shown in Web Site,Tabela para o item que será mostrado no Web Site,
Landed Cost Item,Custo de Desembarque do Item,
Receipt Document Type,Tipo de Documento de Recibo,
Receipt Document,Documento de Recibo,
Applicable Charges,Encargos Aplicáveis,
Purchase Receipt Item,Item do Recibo de Compra,
Landed Cost Purchase Receipt,Recibo de Compra do Custo de Desembarque,
Landed Cost Taxes and Charges,Impostos e Encargos Sobre Custos de Desembarque,
Landed Cost Voucher,Comprovante de Custos de Desembarque,
MAT-LCV-.YYYY.-,MAT-LCV-.YYYY.-,
Purchase Receipts,Recibos de Compra,
Purchase Receipt Items,Itens do Recibo de Compra,
Get Items From Purchase Receipts,Obter Itens de Recibos de Compra,
Distribute Charges Based On,Distribuir Encargos Baseado Em,
Landed Cost Help,Custo de Desembarque Ajuda,
Manufacturers used in Items,Fabricantes utilizados em Itens,
Limited to 12 characters,Limitados a 12 caracteres,
MAT-MR-.YYYY.-,MAT-MR-.YYYY.-,
Partially Ordered,Parcialmente Comprados,
Transferred,Transferido,
% Ordered,% Comprado,
Terms and Conditions Content,Conteúdo Dos Termos e Condições,
Quantity and Warehouse,Quantidade e Armazém,
Lead Time Date,Prazo de Entrega,
Min Order Qty,Pedido Mínimo,
Packed Item,Item do Pacote da Guia de Remessa,
To Warehouse (Optional),Para o Armazém (opcional),
Actual Batch Quantity,Quantidade Real do Lote,
Prevdoc DocType,Prevdoc DocType,
Parent Detail docname,Nome do documento do detalhe pai,
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Gerar lista de embalagem para os pacotes a serem entregues. Usado para identificar número do pacote, o conteúdo do pacote e seu peso.",
Indicates that the package is a part of this delivery (Only Draft),Indica que o pacote é uma parte desta entrega (Só Rascunho),
MAT-PAC-.YYYY.-,MAT-PAC-.YYYY.-,
From Package No.,Do Nº do Pacote,
Identification of the package for the delivery (for print),Identificação do pacote para a Entrega (para impressão),
To Package No.,Até Nº do Pacote,
If more than one package of the same type (for print),Se mais do que uma embalagem do mesmo tipo (para impressão),
Package Weight Details,Detalhes de Peso do Pacote,
The net weight of this package. (calculated automatically as sum of net weight of items),O peso líquido do pacote. (Calculado automaticamente como soma do peso líquido dos itens),
Net Weight UOM,Unidade de Medida do Peso Líquido,
Gross Weight,Peso Bruto,
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),
Gross Weight UOM,Unidade de Medida do Peso Bruto,
Packing Slip Item,Item da Lista de Embalagem,
DN Detail,Detalhe DN,
STO-PICK-.YYYY.-,Sto-pick-.aaa.-,
Material Transfer for Manufacture,Transferência de Material Para Fabricação,
Qty of raw materials will be decided based on the qty of the Finished Goods Item,A quantidade de matérias-primas será decidida com base na quantidade do item de produtos acabados,
Parent Warehouse,Armazém Pai,
Items under this warehouse will be suggested,Itens sob este armazém serão sugeridos,
Get Item Locations,Obter Locais de Itens,
Item Locations,Localizações Dos Itens,
Pick List Item,Item da Lista de Seleção,
Picked Qty,Qtd Escolhido,
Price List Master,Cadastro da Lista de Preços,
Price List Name,Nome da Lista de Preços,
Price Not UOM Dependent,Preço Não Dependente da UDM,
Applicable for Countries,Aplicável Para os Países,
Price List Country,Preço da Lista País,
MAT-PRE-.YYYY.-,MAT-PRE-.YYYY.-,
Supplier Delivery Note,Nota de Entrega do Fornecedor,
Time at which materials were received,Horário em que os materiais foram recebidos,
Return Against Purchase Receipt,Devolução Contra Recibo de Compra,
Rate at which supplier's currency is converted to company's base currency,Taxa na qual a moeda do fornecedor é convertida para a moeda base da empresa,
Sets 'Accepted Warehouse' in each row of the items table.,Define ';Armazém Aceito'; em cada linha da tabela de itens.,
Sets 'Rejected Warehouse' in each row of the items table.,Define ';Rejeitado Armazém'; em cada linha da tabela de itens.,
Raw Materials Consumed,Matérias-primas Consumidas,
Get Current Stock,Obter Estoque Atual,
Consumed Items,Itens Consumidos,
Add / Edit Taxes and Charges,Adicionar / Editar Impostos e Encargos,
Auto Repeat Detail,Detalhe de Repetição Automática,
Transporter Details,Detalhes da Transportadora,
Vehicle Number,Placa do Veículo,
Vehicle Date,Data do Veículo,
Received and Accepted,Recebeu e Aceitou,
Accepted Quantity,Quantidade Aceita,
Rejected Quantity,Quantidade Rejeitada,
Accepted Qty as per Stock UOM,Qtd Aceita Conforme UDM de Estoque,
Sample Quantity,Quantidade da Amostra,
Rate and Amount,Preço e Total,
MAT-QA-.YYYY.-,MAT-QA-.YYYY.-,
Report Date,Data do Relatório,
Inspection Type,Tipo de Inspeção,
Item Serial No,Nº de Série do Item,
Sample Size,Tamanho da Amostra,
Inspected By,Inspecionado Por,
Readings,Leituras,
Quality Inspection Reading,Leitura da Inspeção de Qualidade,
Reading 1,Leitura 1,
Reading 2,Leitura 2,
Reading 3,Leitura 3,
Reading 4,Leitura 4,
Reading 5,Leitura 5,
Reading 6,Leitura 6,
Reading 7,Leitura 7,
Reading 8,Leitura 8,
Reading 9,Leitura 9,
Reading 10,Leitura 10,
Quality Inspection Template Name,Nome do Modelo de Inspeção de Qualidade,
Quick Stock Balance,Balanço Rápido de Estoque,
Available Quantity,Quantidade Disponível,
Distinct unit of an Item,Unidade distinta de um item,
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Armazém só pode ser alterado através de entrada / entrega da nota / recibo de compra,
Purchase / Manufacture Details,Detalhes Compra / Fabricação,
Creation Document Type,Tipo de Criação do Documento,
Creation Document No,Número de Criação do Documento,
Creation Date,Data de Criação,
Creation Time,Horário de Criação,
Asset Details,Detalhes do Ativo,
Asset Status,Status do Ativo,
Delivery Document Type,Tipo do Documento de Entrega,
Delivery Document No,Nº do Documento de Entrega,
Delivery Time,Prazo de Entrega,
Invoice Details,Detalhes da Fatura,
Warranty / AMC Details,Garantia / Detalhes do Cam,
Warranty Expiry Date,Data de Validade da Garantia,
AMC Expiry Date,Data de Validade do Cam,
Under Warranty,Sob Garantia,
Out of Warranty,Fora de Garantia,
Under AMC,Sob Cam,
Out of AMC,Fora do Cam,
Warranty Period (Days),Período de Garantia (dias),
Serial No Details,Detalhes do Nº de Série,
MAT-STE-.YYYY.-,MAT-STE-.YYYY.-,
Stock Entry Type,Tipo de Entrada de Estoque,
Stock Entry (Outward GIT),Entrada de Estoque (git Externo),
Material Consumption for Manufacture,Consumo de Material Para Manufatura,
Repack,Reembalar,
Send to Subcontractor,Enviar Para Subcontratado,
Delivery Note No,Nº da Guia de Remessa,
Sales Invoice No,Nº da Nota Fiscal de Venda,
Purchase Receipt No,Nº do Recibo de Compra,
Inspection Required,Inspeção Obrigatória,
From BOM,Da LDM,
For Quantity,Para Quantidade,
As per Stock UOM,Em UDM do Estoque,
Including items for sub assemblies,Incluindo itens para subconjuntos,
Default Source Warehouse,Armazém de Origem Padrão,
Source Warehouse Address,Endereço do Depósito de Origem,
Default Target Warehouse,Armazém de Destino Padrão,
Target Warehouse Address,Endereço do Depósito de Destino,
Update Rate and Availability,Atualizar Valor e Disponibilidade,
Total Incoming Value,Valor Total Recebido,
Total Outgoing Value,Valor Total de Saída,
Total Value Difference (Out - In),Diferença do Valor Total (saída - Entrada),
Additional Costs,Custos Adicionais,
Total Additional Costs,Total de Custos Adicionais,
Customer or Supplier Details,Detalhes do Cliente Ou Fornecedor,
Per Transferred,Por Transferido,
Stock Entry Detail,Detalhe do Lançamento no Estoque,
Basic Rate (as per Stock UOM),Preço Unitário (de Acordo Com a UDM do Estoque),
Basic Amount,Valor Base,
Additional Cost,Custo Adicional,
Serial No / Batch,N º de Série / Lote,
BOM No. for a Finished Good Item,Nº da LDM Para Um Item Acabado,
Material Request used to make this Stock Entry,Requisição de Material usada para fazer esta Entrada de Material,
Subcontracted Item,Item Subcontratado,
Against Stock Entry,Contra Entrada de Estoque,
Stock Entry Child,Filho de Entrada de Estoque,
PO Supplied Item,Item Fornecido Po,
Reference Purchase Receipt,Recibo de Compra de Referência,
Stock Ledger Entry,Lançamento do Livro de Inventário,
Outgoing Rate,Taxa de Saída,
Actual Qty After Transaction,Qtde Real Após a Transação,
Stock Value Difference,Diferença de Valor do Estoque,
Stock Queue (FIFO),Fila do Estoque (peps),
Is Cancelled,É Cancelado,
Stock Reconciliation,Conciliação de Estoque,
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 você a atualizar ou corrigir a quantidade ea valorização das ações no sistema. Ele é geralmente usado para sincronizar os valores do sistema e que realmente existe em seus armazéns.,
MAT-RECO-.YYYY.-,MAT-RECO-.YYYY.-,
Reconciliation JSON,Reconciliação Json,
Stock Reconciliation Item,Item da Conciliação de Estoque,
Before reconciliation,Antes da conciliação,
Current Serial No,Número de Série Atual,
Current Valuation Rate,Taxa Atual de Avaliação,
Current Amount,Valor Atual,
Quantity Difference,Diferença de Quantidade,
Amount Difference,Valor da Diferença,
Item Naming By,Nomeação de Item Por,
Default Item Group,Grupo de Itens Padrão,
Default Stock UOM,Unidade de Medida Padrão do Estoque,
Sample Retention Warehouse,Armazém de Retenção de Amostra,
Default Valuation Method,Método de Avaliação Padrão,
Show Barcode Field,Mostrar Campo Código de Barras,
Convert Item Description to Clean HTML,Converter a Descrição do Item Para Html Limpo,
Allow Negative Stock,Permitir Estoque Negativo,
Automatically Set Serial Nos based on FIFO,Número de Série automaticamente definido com base na FIFO,
Auto Material Request,Requisição de Material Automática,
Inter Warehouse Transfer Settings,Configurações de Transferência Entre Armazéns,
Freeze Stock Entries,Congelar Lançamentos no Estoque,
Stock Frozen Upto,Estoque Congelado Até,
Batch Identification,Identificação do Lote,
Use Naming Series,Usar a Série de Nomes,
Naming Series Prefix,Prefixo do Código de Documentos,
UOM Category,Categoria de UDM,
UOM Conversion Detail,Detalhe da Conversão de Unidade de Medida,
Variant Field,Campo Variante,
A logical Warehouse against which stock entries are made.,Um Depósito lógico contra o qual as entradas de estoque são feitas.,
Warehouse Detail,Detalhes do Armazén,
Warehouse Name,Nome do Armazén,
Warehouse Contact Info,Informações de Contato do Armazén,
PIN,PIN,
ISS-.YYYY.-,ISS-.YYYY.-,
Raised By (Email),Levantadas Por (email),
Issue Type,Tipo de Problema,
Issue Split From,Divisão do Problema De,
Service Level,Nível de Serviço,
Response By,Resposta Por,
Response By Variance,Resposta Por Variação,
Ongoing,Em Progresso,
Resolution By,Resolução Por,
Resolution By Variance,Resolução Por Variação,
Service Level Agreement Creation,Criação de Acordo de Nível de Serviço,
First Responded On,Primeira Resposta Em,
Resolution Details,Detalhes da Solução,
Opening Date,Data de Abertura,
Opening Time,Horário de Abertura,
Resolution Date,Data da Solução,
Via Customer Portal,Através do Portal do Cliente,
Support Team,Equipe de Pós-vendas,
Issue Priority,Prioridade do Incidente,
Service Day,Dia do Serviço,
Workday,Dia de Trabalho,
Default Priority,Prioridade Padrão,
Priorities,Prioridades,
Support Hours,Horas de Suporte,
Support and Resolution,Suporte e Resolução,
Default Service Level Agreement,Contrato de Nível de Serviço Padrão,
Entity,Entidade,
Agreement Details,Detalhes do Contrato,
Response and Resolution Time,Resposta e Tempo de Resolução,
Service Level Priority,Prioridade de Nível de Serviço,
Resolution Time,Tempo de Resolução,
Support Search Source,Fonte de Pesquisa de Suporte,
Source Type,Tipo de Fonte,
Query Route String,String de Rota de Consulta,
Search Term Param Name,Termo de Pesquisa Param Name,
Response Options,Opções de Resposta,
Response Result Key Path,Caminho da Chave do Resultado da Resposta,
Post Route String,Cadeia de Rota de Postagem,
Post Route Key List,Lista de Chaves Pós-rota,
Post Title Key,Post Title Key,
Post Description Key,Chave de Descrição de Postagens,
Link Options,Opções de Link,
Source DocType,DocType de Origem,
Result Title Field,Campo de Título do Resultado,
Result Preview Field,Campo de Prévia do Resultado,
Result Route Field,Campo de Rota do Resultado,
Service Level Agreements,Acordos de Nível de Serviço,
Track Service Level Agreement,Acompanhar o Nível de Serviço,
Allow Resetting Service Level Agreement,Permitir Redefinição do Contrato de Nível de Serviço,
Close Issue After Days,Fechar Incidente Após Dias,
Auto close Issue after 7 days,Fechar atuomaticamente o incidente após 7 dias,
Support Portal,Portal de Suporte,
Get Started Sections,Seções Iniciais,
Show Latest Forum Posts,Mostrar as Últimas Mensagens do Fórum,
Forum Posts,Posts no Fórum,
Forum URL,URL do Fórum,
Get Latest Query,Obter Consulta Mais Recente,
Response Key List,Lista de Chaves de Resposta,
Post Route Key,Post Route Key,
Search APIs,Apis de Pesquisa,
SER-WRN-.YYYY.-,SER-WRN-.YYYY.-,
Issue Date,Data do Incidente,
Item and Warranty Details,Itens e Garantia Detalhes,
Warranty / AMC Status,Garantia / Status do Cam,
Resolved By,Resolvido Por,
Service Address,Endereço da Manutenção do Veículo,
If different than customer address,Se diferente do endereço do cliente,
Raised By,Levantadas Por,
From Company,Da Empresa,
Rename Tool,Ferramenta de Renomear,
Utilities,Utilitários,
Type of document to rename.,Tipo de documento a ser renomeado.,
File to Rename,Arquivo Para Renomear,
"Attach .csv file with two columns, one for the old name and one for the new name","Anexar arquivo.csv com duas colunas, uma para o nome antigo e um para o novo nome",
Rename Log,Renomear Log,
SMS Log,Log de SMS,
Sender Name,Nome do Remetente,
Sent On,Enviado Em,
No of Requested SMS,Nº de SMS Pedidos,
Requested Numbers,Números Solicitadas,
No of Sent SMS,Nº de SMS Enviados,
Sent To,Enviado Para,
Absent Student Report,Relatório de Frequência do Aluno,
Assessment Plan Status,Status do Plano de Avaliação,
Asset Depreciation Ledger,Livro Razão de Depreciação de Ativos,
Asset Depreciations and Balances,Depreciação de Ativos e Saldos,
Available Stock for Packing Items,Estoque Disponível Para o Empacotamento de Itens,
Bank Clearance Summary,Resumo da Liquidação Bancária,
Batch Item Expiry Status,Status do Vencimento do Item do Lote,
Batch-Wise Balance History,Balanço Por Histórico de Lotes,
BOM Explorer,Bom Explorer,
BOM Search,Pesquisar LDM,
BOM Stock Calculated,Bom Estoque Calculado,
BOM Variance Report,Relatório de Variação da Lista Técnica,
Campaign Efficiency,Eficiência da Campanha,
Cash Flow,Fluxo de Caixa,
Completed Work Orders,Ordens de Trabalho Concluídas,
To Produce,Para Produzir,
Produced,Produzido,
Consolidated Financial Statement,Declaração Financeira Consolidada,
Course wise Assessment Report,Relatório de Avaliação do Curso,
Customer Acquisition and Loyalty,Aquisição de Clientes e Fidelização,
Customer Credit Balance,Saldo de Crédito do Cliente,
Customer Ledger Summary,Resumo do Ledger de Clientes,
Customer-wise Item Price,Preço de Item Ao Consumidor,
Customers Without Any Sales Transactions,Clientes Sem Qualquer Transação de Vendas,
Daily Timesheet Summary,Resumo Diário Dos Registros de Tempo,
DATEV,DATEV,
Delayed Item Report,Relatório de Item Atrasado,
Delayed Order Report,Relatório de Pedidos Atrasados,
Delivered Items To Be Billed,Itens Entregues Mas Não Faturados,
Delivery Note Trends,Tendência de Remessas,
Electronic Invoice Register,Registro de Fatura Eletrônica,
Employee Billing Summary,Resumo de Cobrança de Funcionários,
Employee Birthday,Aniversário Dos Colaboradores,
Employee Information,Informações do Colaborador,
Employee Leave Balance,Saldo de Licenças do Colaborador,
Employee Leave Balance Summary,Resumo do Saldo de Empregados,
Eway Bill,Conta de Saída,
Expiring Memberships,Membros Vencedores,
Fichier des Ecritures Comptables [FEC],Fichier Des Ecritures Comptables [fec],
Final Assessment Grades,Avaliação Final de Notas,
Fixed Asset Register,Registro de Ativo Fixo,
Gross and Net Profit Report,Relatório de Lucro Bruto e Líquido,
GST Itemised Purchase Register,Registo de compra por itens do GST,
GST Itemised Sales Register,Registro de vendas detalhado GST,
GST Purchase Register,Registro de Compra de GST,
GST Sales Register,GST Sales Register,
GSTR-1,GSTR-1,
GSTR-2,GSTR-2,
Hotel Room Occupancy,Ocupação do Quarto do Hotel,
HSN-wise-summary of outward supplies,HSN-wise-resumo de fontes externas,
Inactive Customers,Clientes Inativos,
Inactive Sales Items,Itens de Vendas Inativas,
IRS 1099,IRS 1099,
Issued Items Against Work Order,Itens Emitidos Contra Ordem de Serviço,
Projected Quantity as Source,Quantidade Projetada Como Fonte,
Item Balance (Simple),Balanço de Itens (simples),
Item Price Stock,Preço do Item Preço,
Item Prices,Preços de Itens,
Item Shortage Report,Relatório de Itens Em Falta no Estoque,
Item Variant Details,Item Variant Details,
Item-wise Price List Rate,Lista de Preços Por Item,
Item-wise Purchase History,Histórico de Compras Por Item,
Item-wise Purchase Register,Registro de Compras Por Item,
Item-wise Sales History,Histórico de Vendas Por Item,
Item-wise Sales Register,Registro de Vendas Por Item,
Items To Be Requested,Itens Para Requisitar,
Reserved,Reservado,
Itemwise Recommended Reorder Level,Níves de Reposição Recomendados Por Item,
Lead Details,Detalhes do Lead,
Lead Owner Efficiency,Eficiência do Proprietário de Leads,
Lost Opportunity,Oportunidade Perdida,
Maintenance Schedules,Horários de Manutenção,
Material Requests for which Supplier Quotations are not created,Itens Requisitados mas não Cotados,
Open Work Orders,Abrir Ordens de Serviço,
Qty to Deliver,Qtde Para Entregar,
Patient Appointment Analytics,Análise de Consulta de Paciente,
Payment Period Based On Invoice Date,Prazo Médio de Pagamento Baseado na Emissão da Nota,
Pending SO Items For Purchase Request,Itens Pendentes da Ordem de Venda Por Solicitação de Compra,
Procurement Tracker,Procurement Tracker,
Product Bundle Balance,Saldo do Pacote de Produtos,
Production Analytics,Análise de Produção,
Profit and Loss Statement,Demonstrativo de Resultados,
Profitability Analysis,Análise de Lucratividade,
Project Billing Summary,Resumo de Cobrança do Projeto,
Project wise Stock Tracking,Rastreio de Estoque por Projeto,
Project wise Stock Tracking ,Controlo de Estoque por Projeto,
Prospects Engaged But Not Converted,Clientes Prospectados Mas Não Convertidos,
Purchase Analytics,Analítico de Compras,
Purchase Invoice Trends,Tendência de Faturas de Compra,
Qty to Receive,Qtde Para Receber,
Received Qty Amount,Quantidade de Quantidade Recebida,
Billed Qty,Quantidade Faturada,
Purchase Order Trends,Tendência de Pedidos de Compra,
Purchase Receipt Trends,Tendência de Recebimentos,
Purchase Register,Registro de Compras,
Quotation Trends,Tendência de Orçamentos,
Received Items To Be Billed,Itens Recebidos Mas Não Faturados,
Qty to Order,Qtde Para Encomendar,
Requested Items To Be Transferred,Items Solicitados Mas Não Transferidos,
Qty to Transfer,Qtde Para Transferir,
Sales Analytics,Analítico de Vendas,
Sales Invoice Trends,Tendência de Faturamento de Vendas,
Sales Order Trends,Tendência de Pedidos de Venda,
Sales Partner Commission Summary,Resumo da Comissão do Parceiro de Vendas,
Sales Partner Target Variance based on Item Group,Desvio-alvo do parceiro de vendas com base no grupo de itens,
Sales Partner Transaction Summary,Resumo de Transação do Parceiro de Vendas,
Sales Partners Commission,Comissão Dos Parceiros de Vendas,
Invoiced Amount (Exclusive Tax),Valor Faturado (imposto Exclusivo),
Average Commission Rate,Percentual de Comissão Médio,
Sales Payment Summary,Resumo de Recebimento de Vendas,
Sales Person Commission Summary,Resumo da Comissão de Vendas,
Sales Person Target Variance Based On Item Group,Desvio de Meta de Pessoa de Vendas Com Base no Grupo de Itens,
Sales Person-wise Transaction Summary,Resumo de Vendas Por Vendedor,
Sales Register,Registro de Vendas,
Serial No Service Contract Expiry,Vencimento do Contrato de Serviço Com Nº de Série,
Serial No Status,Status do Nº de Série,
Serial No Warranty Expiry,Vencimento da Garantia Com Nº de Série,
Stock Ageing,Envelhecimento do Estoque,
Stock and Account Value Comparison,Comparação de Estoque e Valor da Conta,
Stock Projected Qty,Projeção de Estoque,
Student and Guardian Contact Details,Student And Guardian Detalhes de Contato,
Student Batch-Wise Attendance,Controle de Frequência Por Série de Alunos,
Student Fee Collection,Cobrança de Taxa do Aluno,
Student Monthly Attendance Sheet,Folha de Presença Mensal do Aluno,
Subcontracted Item To Be Received,Item Subcontratado a Ser Recebido,
Subcontracted Raw Materials To Be Transferred,Matérias-primas Subcontratadas a Serem Transferidas,
Supplier Ledger Summary,Resumo do Ledger de Fornecedores,
Supplier-Wise Sales Analytics,Análise de Vendas Por Fornecedor,
Support Hour Distribution,Distribuição de Horas de Suporte,
TDS Computation Summary,Resumo de Computação Tds,
TDS Payable Monthly,Tds a Pagar Mensalmente,
Territory Target Variance Based On Item Group,Desvio Alvo do Território Baseado no Grupo de Itens,
Territory-wise Sales,Vendas Por Território,
Total Stock Summary,Resumo de Estoque Total,
Trial Balance,Balancete,
Trial Balance (Simple),Balancete (simples),
Trial Balance for Party,Balancete Por Parceiro,
Warehouse wise Item Balance Age and Value,Warehouse wise Item Equilíbrio Idade e Valor,
Work Order Stock Report,Relatório de Estoque de Ordem de Trabalho,
Work Orders in Progress,Ordens de Serviço Em Andamento,
Validation Error,Erro de Validação,
Automatically Process Deferred Accounting Entry,Processo Automático de Entrada Contábil Diferida,
Bank Clearance,Liquidação Bancária,
Bank Clearance Detail,Detalhe de Liquidação de Banco,
Update Cost Center Name / Number,Atualizar Nome / Número do Centro de Custo,
Journal Entry Template,Modelo de Entrada no Livro Diário,
Template Title,Título do Modelo,
Journal Entry Type,Tipo de Lançamento de Diário,
Journal Entry Template Account,Conta de Modelo de Lançamento Contábil,
Process Deferred Accounting,Processo de Contabilidade Diferida,
Manual entry cannot be created! Disable automatic entry for deferred accounting in accounts settings and try again,A entrada manual não pode ser criada! Desative a entrada automática para contabilidade diferida nas configurações de contas e tente novamente,
End date cannot be before start date,A data de término não pode ser anterior à data de início,
Total Counts Targeted,Total de Contagens Almejadas,
Total Counts Completed,Total de Contagens Concluídas,
Counts Targeted: {0},Contagens Direcionadas: {0},
Material Request Warehouse,Armazém de Solicitação de Material,
Select warehouse for material requests,Selecione o armazém para pedidos de material,
Transfer Materials For Warehouse {0},Transferir Materiais Para Armazém {0},
Production Plan Material Request Warehouse,Armazém de Solicitação de Material do Plano de Produção,
Sets 'Source Warehouse' in each row of the items table.,Define ';Source Warehouse'; em cada linha da tabela de itens.,
Sets 'Target Warehouse' in each row of the items table.,Define ';Armazém de destino'; em cada linha da tabela de itens.,
Show Cancelled Entries,Mostrar Entradas Canceladas,
Backdated Stock Entry,Entrada de Estoque Retroativa,
Row #{}: Currency of {} - {} doesn't matches company currency.,Linha # {}: Moeda de {} - {} não corresponde à moeda da empresa.,
{} Assets created for {},{} Ativos criados para {},
{0} Number {1} is already used in {2} {3},{0} Número {1} já é usado em {2} {3},
Update Bank Clearance Dates,Atualizar Datas de Liquidação de Banco,
Healthcare Practitioner: ,Profissional de Saúde:,
Lab Test Conducted: ,Teste de Laboratório Realizado:,
Lab Test Event: ,Evento de Teste de Laboratório:,
Lab Test Result: ,Resultado do Teste de Laboratório:,
Clinical Procedure conducted: ,Procedimento clínico conduzido:,
Therapy Session Charges: {0},Custos da Sessão de Terapia: {0},
Therapy: ,Terapia:,
Therapy Plan: ,Plano de Terapia:,
Total Counts Targeted: ,Total de Contagens Almejadas:,
Total Counts Completed: ,Total de Contagens Concluídas:,
Andaman and Nicobar Islands,Ilhas Andaman e Nicobar,
Andhra Pradesh,Andhra Pradesh,
Arunachal Pradesh,Arunachal Pradesh,
Assam,Assam,
Bihar,Bihar,
Chandigarh,Chandigarh,
Chhattisgarh,Chhattisgarh,
Dadra and Nagar Haveli,Dadra e Nagar Haveli,
Daman and Diu,Damão e Diu,
Delhi,Délhi,
Goa,Goa,
Gujarat,Gujarat,
Haryana,Haryana,
Himachal Pradesh,Himachal Pradesh,
Jammu and Kashmir,Jammu e Caxemira,
Jharkhand,Jharkhand,
Karnataka,Karnataka,
Kerala,Kerala,
Lakshadweep Islands,Ilhas Lakshadweep,
Madhya Pradesh,Madhya Pradesh,
Maharashtra,Maharashtra,
Manipur,Manipur,
Meghalaya,Meghalaya,
Mizoram,Mizoram,
Nagaland,Nagaland,
Odisha,Odisha,
Other Territory,Outro Território,
Pondicherry,Pondicherry,
Punjab,Punjab,
Rajasthan,Rajasthan,
Sikkim,Sikkim,
Tamil Nadu,Tamil Nadu,
Telangana,Telangana,
Tripura,Tripura,
Uttar Pradesh,Uttar Pradesh,
Uttarakhand,Uttarakhand,
West Bengal,Bengala Ocidental,
Is Mandatory,É mandatório,
Published on,Publicado Em,
Service Received But Not Billed,Serviço Recebido Mas Não Cobrado,
Deferred Accounting Settings,Configurações de Contabilidade Diferida,
Book Deferred Entries Based On,Entradas Diferidas do Livro Com Base Em,
Days,Dias,
Months,Meses,
Book Deferred Entries Via Journal Entry,Livro de Lançamentos Diferidos Via Lançamento de Diário,
Submit Journal Entries,Enviar Entradas de Diário,
If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,Se esta opção estiver desmarcada as entradas de diário serão salvas em um estado de rascunho e terão que ser enviadas manualmente,
Enable Distributed Cost Center,Habilitar Centro de Custo Distribuído,
Distributed Cost Center,Centro de Custo Distribuído,
Dunning,Dunning,
DUNN-.MM.-.YY.-,DUNN-.MM.-. YY.-,
Overdue Days,Dias Vencidos,
Dunning Type,Tipo de Cobrança,
Dunning Fee,Taxa de Cobranca,
Dunning Amount,Quantia de Cobrança,
Resolved,Resolvido,
Unresolved,Não Resolvido,
Printing Setting,Configuração de Impressão,
Body Text,Texto de Corpo,
Closing Text,Texto de Fechamento,
Resolve,Resolver,
Dunning Letter Text,Texto Para Carta de Cobrança,
Is Default Language,É o idioma padrão,
Letter or Email Body Text,Carta Ou Texto do Corpo do Email,
Letter or Email Closing Text,Texto de Fechamento de Carta Ou E-mail,
Body and Closing Text Help,Ajuda do Corpo e do Texto de Fechamento,
Overdue Interval,Intervalo Vencido,
Dunning Letter,Carta de Cobrança,
"This section allows the user to set the Body and Closing text of the Dunning Letter for the Dunning Type based on language, which can be used in Print.","Esta seção permite que o usuário defina o Corpo e o texto de fechamento da Carta de Cobrança para o Tipo de Cobrança com base no idioma, que pode ser usado na Impressão.",
Reference Detail No,Detalhe de Referência Nº,
Custom Remarks,Observações Personalizadas,
Please select a Company first.,Selecione uma empresa primeiro.,
"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Linha # {0}: o tipo de documento de referência deve ser pedido de venda, fatura de venda, lançamento contábil manual ou cobrança",
POS Closing Entry,Entrada de fechamento de PDV,
POS Opening Entry,Entrada de abertura de PDV,
POS Transactions,Transações PDV,
POS Closing Entry Detail,Detalhe de entrada de fechamento de PDV,
Opening Amount,Quantidade de Abertura,
Closing Amount,Valor de Fechamento,
POS Closing Entry Taxes,Impostos de Entrada de Fechamento de PDV,
POS Invoice,Fatura PDV,
ACC-PSINV-.YYYY.-,ACC-PSINV-.YYYY.-,
Consolidated Sales Invoice,Fatura de Vendas Consolidada,
Return Against POS Invoice,Retorno Contra Fatura de PDV,
Consolidated,Consolidado,
POS Invoice Item,Item de Fatura de PDV,
POS Invoice Merge Log,Registro de Fusão de Faturas de PDV,
POS Invoices,Faturas PDV,
Consolidated Credit Note,Nota de Crédito Consolidada,
POS Invoice Reference,Referência de Fatura de PDV,
Set Posting Date,Definir Data de Postagem,
Opening Balance Details,Detalhes do Saldo Inicial,
POS Opening Entry Detail,Detalhe de Entrada de Abertura de PDV,
POS Payment Method,Método de Pagamento PDV,
Payment Methods,Métodos de Pagamento,
Process Statement Of Accounts,Extrato de Contas do Processo,
General Ledger Filters,Filtros de Contabilidade Geral,
Customers,Clientes,
Select Customers By,Selecionar Clientes Por,
Fetch Customers,Buscar Clientes,
Send To Primary Contact,Enviar Para Contato Principal,
Print Preferences,Preferências de Impressão,
Include Ageing Summary,Incluir Resumo de Envelhecimento,
Enable Auto Email,Habilitar Auto Email,
Filter Duration (Months),Duração do Filtro (meses),
CC To,Cc Para,
Help Text,Texto de Ajuda,
Emails Queued,Emails na Fila,
Process Statement Of Accounts Customer,Declaração de Processo de Contas do Cliente,
Billing Email,E-mail de Cobrança,
Primary Contact Email,Email do Contato Principal,
PSOA Cost Center,Centro de Custo Psoa,
PSOA Project,Projeto Psoa,
ACC-PINV-RET-.YYYY.-,ACC-PINV-RET-.YYYY.-,
Supplier GSTIN,Fornecedor Gstin,
Place of Supply,Local de Abastecimento,
Select Billing Address,Selecione o Endereço de Faturamento,
GST Details,Detalhes GST,
GST Category,Categoria GST,
Registered Regular,Regular Registrado,
Registered Composition,Composição Registrada,
Unregistered,Não Registrado,
SEZ,SEZ,
Overseas,No Exterior,
UIN Holders,Detentores de Uin,
With Payment of Tax,Com Pagamento de Imposto,
Without Payment of Tax,Sem Pagamento de Imposto,
Invoice Copy,Cópia de Fatura,
Original for Recipient,Original Para Destinatário,
Duplicate for Transporter,Duplicado Para Transportador,
Duplicate for Supplier,Duplicado Para Fornecedor,
Triplicate for Supplier,Triplicado Para Fornecedor,
Reverse Charge,Carga Reversa,
Y,Y,
N,N,
E-commerce GSTIN,E-commerce GSTIN,
Reason For Issuing document,Motivo de emissão do documento,
01-Sales Return,01-Devolução de vendas,
02-Post Sale Discount,02-Desconto pós venda,
03-Deficiency in services,03-Deficiência nos serviços,
04-Correction in Invoice,04-Correção na Nota Fiscal,
05-Change in POS,05-Mudança no POS,
06-Finalization of Provisional assessment,06-Finalização da Avaliação Provisória,
07-Others,07-Outros,
Eligibility For ITC,Elegibilidade para ITC,
Input Service Distributor,Distribuidor de Serviço de Entrada,
Import Of Service,Importação de Serviço,
Import Of Capital Goods,Importação de Bens de Capital,
Ineligible,Inelegível,
All Other ITC,Todos os outros ITC,
Availed ITC Integrated Tax,Imposto integrado ITC disponível,
Availed ITC Central Tax,Imposto Central ITC disponível,
Availed ITC State/UT Tax,Imposto ITC / UT disponível,
Availed ITC Cess,Taxa ITC Disponível,
Is Nil Rated or Exempted,É Nil Classificado ou Isento,
Is Non GST,Não é GST,
ACC-SINV-RET-.YYYY.-,ACC-SINV-RET-.YYYY.-,
E-Way Bill No.,E-way Bill No.,
Is Consolidated,Está Consolidado,
Billing Address GSTIN,Endereço de Cobrança Gstin,
Customer GSTIN,Cliente GSTIN,
GST Transporter ID,ID do transportador GST,
Distance (in km),Distância (em Km),
Road,Estrada,
Air,Ar,
Rail,Rail,
Ship,Navio,
GST Vehicle Type,Tipo de veículo GST,
Over Dimensional Cargo (ODC),Carga Over Dimensional (ODC),
Consumer,Consumidor,
Deemed Export,Exportação Considerada,
Port Code,Código Portuário,
 Shipping Bill Number, Número da Fatura de Remessa,
Shipping Bill Date,Data da Fatura de Remessa,
Subscription End Date,Data Final da Assinatura,
Follow Calendar Months,Siga os Meses do Calendário,
If this is checked subsequent new invoices will be created on calendar  month and quarter start dates irrespective of current invoice start date,Se esta opção estiver marcada novas faturas subsequentes serão criadas nas datas de início do mês e do trimestre independentemente da data de início da fatura atual,
Generate New Invoices Past Due Date,Gerar Novas Faturas Vencidas,
New invoices will be generated as per schedule even if current invoices are unpaid or past due date,Novas faturas serão geradas de acordo com o cronograma mesmo se as faturas atuais não forem pagas ou vencidas,
Document Type ,Tipo de Documento,
Subscription Price Based On,Preço da Assinatura Com Base Em,
Fixed Rate,Taxa Fixa,
Based On Price List,Com Base na Lista de Preços,
Monthly Rate,Taxa Mensal,
Cancel Subscription After Grace Period,Cancelar Assinatura Após o Período de Carência,
Source State,Estado Fonte,
Is Inter State,É entre estados,
Purchase Details,Detalhes da Compra,
Depreciation Posting Date,Data de Lançamento de Depreciação,
"By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ","Por padrão, o nome do fornecedor é definido de acordo com o nome do fornecedor inserido. Se você deseja que os fornecedores sejam nomeados por um",
 choose the 'Naming Series' option., escolha a opção ';Naming Series';.,
Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,Configure a Lista de Preços padrão ao criar uma nova transação de Compra. os preços dos itens serão obtidos desta lista de preços.,
"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice or Receipt without creating a Purchase Order first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Order' checkbox in the Supplier master.","Se esta opção estiver configurada como ';Sim';, o ERPNext impedirá que você crie uma fatura ou recibo de compra sem criar um pedido de compra primeiro. Esta configuração pode ser substituída por um fornecedor específico ativando a caixa de seleção ';Permitir criação de fatura de compra sem pedido de compra'; no mestre de fornecedores.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice without creating a Purchase Receipt first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Receipt' checkbox in the Supplier master.","Se esta opção estiver configurada como ';Sim';, o ERPNext impedirá que você crie uma fatura de compra sem criar um recibo de compra primeiro. Esta configuração pode ser substituída por um fornecedor específico ativando a caixa de seleção ';Permitir criação de fatura de compra sem recibo de compra'; no mestre de fornecedores.",
Quantity & Stock,Quantidade e Estoque,
Call Details,Detalhes da Chamada,
Authorised By,Autorizado Por,
Signee (Company),Signatário (empresa),
Signed By (Company),Assinado Por (empresa),
First Response Time,Tempo de Primeira Resposta,
Request For Quotation,Solicitação de Orçamento,
Opportunity Lost Reason Detail,Detalhe do Motivo da Oportunidade Perdida,
Access Token Secret,Segredo do Token de Acesso,
Add to Topics,Adicionar Aos Tópicos,
...Adding Article to Topics,... Adicionando Artigo aos Tópicos,
Add Article to Topics,Adicionar Artigo Aos Tópicos,
This article is already added to the existing topics,Este artigo já foi adicionado aos tópicos existentes,
Add to Programs,Adicionar a Programas,
Programs,Programas,
...Adding Course to Programs,... Adicionando Curso aos Programas,
Add Course to Programs,Adicionar Curso a Programas,
This course is already added to the existing programs,Este curso já está adicionado aos programas existentes,
Learning Management System Settings,Configurações do Sistema de Gerenciamento de Aprendizagem,
Enable Learning Management System,Habilitar Sistema de Gestão de Aprendizagem,
Learning Management System Title,Título do Sistema de Gestão de Aprendizagem,
...Adding Quiz to Topics,... Adicionando questionário aos tópicos,
Add Quiz to Topics,Adicionar Questionário a Tópicos,
This quiz is already added to the existing topics,Este questionário já foi adicionado aos tópicos existentes,
Enable Admission Application,Habilitar Solicitação de Admissão,
EDU-ATT-.YYYY.-,EDU-ATT-.YYYY.-,
Marking attendance,Marcando presença,
Add Guardians to Email Group,Adicionar Tutores Ao Grupo de E-mail,
Attendance Based On,Presença Com Base Em,
Check this to mark the student as present in case the student is not attending the institute to participate or represent the institute in any event.\n\n,Marque esta opção para marcar o aluno como presente caso o aluno não esteja frequentando o instituto para participar ou representar o instituto em qualquer evento.,
Add to Courses,Adicionar Aos Cursos,
...Adding Topic to Courses,... Adicionando Tópico aos Cursos,
Add Topic to Courses,Adicionar Tópico Aos Cursos,
This topic is already added to the existing courses,Este tópico já foi adicionado aos cursos existentes,
"If Shopify does not have a customer in the order, then while syncing the orders, the system will consider the default customer for the order","Se o Shopify não tiver um cliente no pedido, enquanto sincroniza os pedidos, o sistema irá considerar o cliente padrão para o pedido",
The accounts are set by the system automatically but do confirm these defaults,As contas são definidas pelo sistema automaticamente mas confirmam esses padrões,
Default Round Off Account,Conta de Arredondamento Padrão,
Failed Import Log,Log de Importação Com Falha,
Fixed Error Log,Log de Erro Corrigido,
Company {0} already exists. Continuing will overwrite the Company and Chart of Accounts,A empresa {0} já existe. Continuar substituirá a Empresa e o Plano de Contas,
Meta Data,Meta Dados,
Unresolve,Não Resolver,
Create Document,Criar Documento,
Mark as unresolved,Marcar como não resolvido,
TaxJar Settings,Configurações de Taxjar,
Sandbox Mode,Modo Sandbox,
Enable Tax Calculation,Habilitar Cálculo de Impostos,
Create TaxJar Transaction,Criar Transação TaxJar,
Credentials,Credenciais,
Live API Key,Chave de API Ativa,
Sandbox API Key,Sandbox API Key,
Configuration,Configuração,
Tax Account Head,Chefe da Contabilidade Fiscal,
Shipping Account Head,Chefe da Contabilidade de Despacho,
Practitioner Name,Nome do Praticante,
Enter a name for the Clinical Procedure Template,Insira um nome para o modelo de procedimento clínico,
Set the Item Code which will be used for billing the Clinical Procedure.,Defina o código do item que será usado para cobrar o procedimento clínico.,
Select an Item Group for the Clinical Procedure Item.,Selecione Um Grupo de Itens Para o Item de Procedimento Clínico.,
Clinical Procedure Rate,Taxa de Procedimento Clínico,
Check this if the Clinical Procedure is billable and also set the rate.,Verifique se o Procedimento Clínico é faturável e defina também a taxa.,
Check this if the Clinical Procedure utilises consumables. Click ,Verifique se o procedimento clínico utiliza consumíveis. Clique,
 to know more, para saber mais,
"You can also set the Medical Department for the template. After saving the document, an Item will automatically be created for billing this Clinical Procedure. You can then use this template while creating Clinical Procedures for Patients. Templates save you from filling up redundant data every single time. You can also create templates for other operations like Lab Tests, Therapy Sessions, etc.","Você também pode definir o Departamento Médico para o modelo. Após salvar o documento, um Item será criado automaticamente para cobrança deste Procedimento Clínico. Você pode então usar este modelo ao criar procedimentos clínicos para pacientes. os modelos evitam que você preencha dados redundantes todas as vezes. Você também pode criar modelos para outras operações, como testes de laboratório, sessões de terapia, etc.",
Descriptive Test Result,Resultado de Teste Descritivo,
Allow Blank,Permitir Em Branco,
Descriptive Test Template,Modelo de Teste Descritivo,
"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Se você deseja rastrear a folha de pagamento e outras operações de HRMS para um Practitoner, crie um Employee e vincule-o aqui.",
Set the Practitioner Schedule you just created. This will be used while booking appointments.,Defina a programação do profissional que acabou de criar. Isso será usado durante a reserva de compromissos.,
Create a service item for Out Patient Consulting.,Crie um item de serviço para Consultoria Externa.,
"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.","Se este profissional de saúde trabalhar para o departamento de pacientes internados, crie um item de serviço para visitas de pacientes internados.",
Set the Out Patient Consulting Charge for this Practitioner.,Defina a Taxa de Consultoria Externa para este Médico.,
"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","Se este profissional de saúde também trabalhar para o departamento de pacientes internados, defina o custo da visita de internação para este médico.",
"If checked, a customer will be created for every Patient. Patient Invoices will be created against this Customer. You can also select existing Customer while creating a Patient. This field is checked by default.","Se marcado, um cliente será criado para cada paciente. as faturas do paciente serão criadas para este cliente. Você também pode selecionar um cliente existente ao criar um paciente. Este campo é marcado por padrão.",
Collect Registration Fee,Cobrar Taxa de Registro,
"If your Healthcare facility bills registrations of Patients, you can check this and set the Registration Fee in the field below. Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.","Se a sua unidade de saúde cobra os registros dos pacientes, você pode verificar isso e definir a taxa de registro no campo abaixo. Marcar isto criará novos Pacientes com o status Desabilitado por padrão e só será habilitado após o faturamento da Taxa de Registro.",
Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,Marcar isto irá criar automaticamente uma fatura de vendas sempre que um compromisso for agendado para um paciente.,
Healthcare Service Items,Itens de Serviços de Saúde,
"You can create a service item for Inpatient Visit Charge and set it here. Similarly, you can set up other Healthcare Service Items for billing in this section. Click ","Você pode criar um item de serviço para Taxa de visita de paciente internado e configurá-lo aqui. da mesma forma, você pode configurar outros itens de serviço de saúde para cobrança nesta seção. Clique",
Set up default Accounts for the Healthcare Facility,Configurar contas padrão para o estabelecimento de saúde,
"If you wish to override default accounts settings and configure the Income and Receivable accounts for Healthcare, you can do so here.","Se desejar substituir as configurações de contas padrão e configurar as contas de receita e a receber para saúde, você pode fazer isso aqui.",
Out Patient SMS alerts,Alertas de SMS de paciente externo,
"If you want to send SMS alert on Patient Registration, you can enable this option. Similary, you can set up Out Patient SMS alerts for other functionalities in this section. Click ","Se você deseja enviar um alerta por SMS no Registro do Paciente, pode ativar esta opção. da mesma forma, você pode configurar alertas SMS de paciente externo para outras funcionalidades nesta seção. Clique",
Admission Order Details,Detalhes do Pedido de Admissão,
Admission Ordered For,Admissão Solicitada Para,
Expected Length of Stay,Tempo Esperado de Estadia,
Admission Service Unit Type,Tipo de Unidade de Serviço de Admissão,
Healthcare Practitioner (Primary),Médico de Saúde (primário),
Healthcare Practitioner (Secondary),Profissional de Saúde (secundário),
Admission Instruction,Instrução de Admissão,
Chief Complaint,Queixa Principal,
Medications,Remédios,
Investigations,Investigações,
Discharge Detials,Detials de Descarga,
Discharge Ordered Date,Data do Pedido de Alta,
Discharge Instructions,Instruções de Alta,
Follow Up Date,Data de Acompanhamento,
Discharge Notes,Notas de Descarga,
Processing Inpatient Discharge,Processando Alta Hospitalar,
Processing Patient Admission,Processando Admissão de Paciente,
Check-in time cannot be greater than the current time,O horário de check-in não pode ser maior que o horário atual,
Process Transfer,Transferência de Processo,
HLC-LAB-.YYYY.-,HLC-LAB-.YYYY.-,
Expected Result Date,Data de Resultado Esperada,
Expected Result Time,Tempo de Resultado Esperado,
Printed on,Impresso Em,
Requesting Practitioner,Médico Solicitante,
Requesting Department,Departamento Solicitante,
Employee (Lab Technician),Funcionário (técnico de Laboratório),
Lab Technician Name,Nome do Técnico de Laboratório,
Lab Technician Designation,Designação de Técnico de Laboratório,
Compound Test Result,Resultado do Teste Composto,
Organism Test Result,Resultado do Teste de Organismo,
Sensitivity Test Result,Resultado do Teste de Sensibilidade,
Worksheet Print,Impressão de Planilha,
Worksheet Instructions,Instruções da Planilha,
Result Legend Print,Impressão da Legenda do Resultado,
Print Position,Posição de Impressão,
Bottom,Inferior,
Top,Topo,
Both,Ambos,
Result Legend,Legenda do Resultado,
Lab Tests,Testes de Laboratório,
No Lab Tests found for the Patient {0},Nenhum teste de laboratório encontrado para o paciente {0},
"Did not send SMS, missing patient mobile number or message content.","Não enviou SMS, falta o número do celular do paciente ou conteúdo da mensagem.",
No Lab Tests created,Nenhum teste de laboratório criado,
Creating Lab Tests...,Criando Testes de Laboratório...,
Lab Test Group Template,Modelo de Grupo de Teste de Laboratório,
Add New Line,Adicionar Nova Linha,
Secondary UOM,UOM secundário,
"<b>Single</b>: Results which require only a single input.\n<br>\n<b>Compound</b>: Results which require multiple event inputs.\n<br>\n<b>Descriptive</b>: Tests which have multiple result components with manual result entry.\n<br>\n<b>Grouped</b>: Test templates which are a group of other test templates.\n<br>\n<b>No Result</b>: Tests with no results, can be ordered and billed but no Lab Test will be created. e.g.. Sub Tests for Grouped results","<b>Único</b> : Resultados que requerem apenas uma única entrada.<br> <b>Composto</b> : Resultados que requerem várias entradas de eventos.<br> <b>Descritivo</b> : testes que possuem vários componentes de resultado com entrada manual de resultados.<br> <b>Agrupados</b> : modelos de teste que são um grupo de outros modelos de teste.<br> <b>Sem resultado</b> : testes sem resultados podem ser solicitados e cobrados, mas nenhum teste de laboratório será criado. por exemplo. Subtestes para resultados agrupados",
"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ","Se desmarcado, o item não estará disponível em Faturas de Vendas para faturamento, mas pode ser usado na criação de teste de grupo.",
Description ,Descrição,
Descriptive Test,Teste Descritivo,
Group Tests,Testes de Grupo,
Instructions to be printed on the worksheet,Instruções a serem impressas na planilha,
"Information to help easily interpret the test report, will be printed as part of the Lab Test result.",As informações para ajudar a interpretar facilmente o relatório do teste serão impressas como parte do resultado do teste de laboratório.,
Normal Test Result,Resultado de Teste Normal,
Secondary UOM Result,Resultado UOM Secundário,
Italic,Itálico,
Underline,Sublinhado,
Organism,Organismo,
Organism Test Item,Item de Teste de Organismo,
Colony Population,População da Colônia,
Colony UOM,Colônia UOM,
Tobacco Consumption (Past),Consumo de Tabaco (passado),
Tobacco Consumption (Present),Consumo de Tabaco (presente),
Alcohol Consumption (Past),Consumo de Álcool (passado),
Alcohol Consumption (Present),Consumo de Álcool (presente),
Billing Item,Item de Cobrança,
Medical Codes,Códigos Médicos,
Clinical Procedures,Procedimentos Clínicos,
Order Admission,Admissão de Pedido,
Scheduling Patient Admission,Agendamento de Admissão de Paciente,
Order Discharge,Descarga de Pedido,
Sample Details,Detalhes da Amostra,
Collected On,Recolhido Em,
No. of prints,Nº de impressões,
Number of prints required for labelling the samples,Número de impressões necessárias para rotular as amostras,
HLC-VTS-.YYYY.-,HLC-VTS-.YYYY.-,
Payroll Cost Center,Centro de Custo de Folha de Pagamento,
Approvers,Aprovadores,
The first Approver in the list will be set as the default Approver.,O primeiro aprovador da lista será definido como o aprovador padrão.,
Shift Request Approver,Aprovador de Solicitação de Turno,
PAN Number,Número PAN,
Provident Fund Account,Conta do Fundo de Previdência,
MICR Code,Código MICR,
Repay unclaimed amount from salary,Reembolsar quantia não reclamada do salário,
Deduction from salary,Dedução do salário,
Expired Leaves,Folhas Vencidas,
If this is not checked the loan by default will be considered as a Demand Loan,Se esta opção não for marcada o empréstimo por padrão será considerado um empréstimo à vista,
This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Esta conta é usada para registrar reembolsos de empréstimos do mutuário e também desembolsar empréstimos para o mutuário,
This account is capital account which is used to allocate capital for loan disbursal account ,Esta conta é a conta de capital que é usada para alocar capital para a conta de desembolso do empréstimo,
This account will be used for booking loan interest accruals,Esta conta será usada para reservar acréscimos de juros de empréstimos,
This account will be used for booking penalties levied due to delayed repayments,Esta conta será usada para multas de reserva cobradas devido a atrasos nos pagamentos,
Variant BOM,Bom Variante,
Template Item,Item de Modelo,
Select template item,Selecione o item do modelo,
Select variant item code for the template item {0},Selecione o código do item variante para o item modelo {0},
Downtime Entry,Entrada de Tempo de Inatividade,
DT-,DT-,
Workstation / Machine,Estação de Trabalho / Máquina,
Operator,Operador,
In Mins,Em Mins,
Downtime Reason,Motivo de Inatividade,
Stop Reason,Razão de Parada,
Excessive machine set up time,Tempo excessivo de configuração da máquina,
Unplanned machine maintenance,Manutenção não planejada da máquina,
On-machine press checks,Verificações de impressão na máquina,
Machine operator errors,Erros do operador da máquina,
Machine malfunction,Mau funcionamento da máquina,
Electricity down,Corte de eletricidade,
Operation Row Number,Número da Linha de Operação,
Operation {0} added multiple times in the work order {1},Operação {0} adicionada várias vezes na ordem de serviço {1},
"If ticked, multiple materials can be used for a single Work Order. This is useful if one or more time consuming products are being manufactured.","Se marcado, vários materiais podem ser usados para uma única Ordem de Serviço. Isso é útil se um ou mais produtos demorados estiverem sendo fabricados.",
Backflush Raw Materials,Matérias-primas de Backflush,
"The Stock Entry of type 'Manufacture' is known as backflush. Raw materials being consumed to manufacture finished goods is known as backflushing. <br><br> When creating Manufacture Entry, raw-material items are backflushed based on BOM of production item. If you want raw-material items to be backflushed based on Material Transfer entry made against that Work Order instead, then you can set it under this field.","A entrada de estoque do tipo ';Fabricação'; é conhecida como backflush. a matéria-prima consumida na fabricação de produtos acabados é conhecida como backflushing.<br><br> Ao criar a entrada de produção, os itens de matéria-prima são backflushing com base na lista técnica do item de produção. Se você deseja que os itens de matéria-prima sejam submetidos a backflush com base na entrada de transferência de material feita para aquela ordem de serviço, então você pode defini-la neste campo.",
Work In Progress Warehouse,Armazém de Trabalho Em Andamento,
This Warehouse will be auto-updated in the Work In Progress Warehouse field of Work Orders.,Este armazém será atualizado automaticamente no campo Armazém de trabalho em andamento das ordens de serviço.,
Finished Goods Warehouse,Armazém de Produtos Acabados,
This Warehouse will be auto-updated in the Target Warehouse field of Work Order.,Este armazém será atualizado automaticamente no campo Armazém de destino da Ordem de Serviço.,
"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.","Se marcado, o custo de BOM será atualizado automaticamente com base na Taxa de avaliação / Taxa de lista de preços / última taxa de compra de matérias-primas.",
Source Warehouses (Optional),Armazéns de Origem (opcional),
"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.","O sistema coletará os materiais dos depósitos selecionados. Se não for especificado, o sistema criará uma solicitação de material para compra.",
Lead Time,Tempo de Espera,
PAN Details,Detalhes do PAN,
Create Customer,Criar Cliente,
Invoicing,Faturamento,
Enable Auto Invoicing,Ativar Faturamento Automático,
Send Membership Acknowledgement,Enviar Reconhecimento de Sócio,
Send Invoice with Email,Enviar fatura com e-mail,
Membership Print Format,Formato de Impressão de Membros,
Invoice Print Format,Formato de Impressão da Fatura,
Revoke <Key></Key>,Revogar&lt;key&gt;&lt;/key&gt;,
You can learn more about memberships in the manual. ,Você pode aprender mais sobre associações no manual.,
ERPNext Docs,Erpnext Docs,
Regenerate Webhook Secret,Gerar Segredo do Webhook Novamente,
Generate Webhook Secret,Gerar Segredo do Webhook,
Copy Webhook URL,Copiar URL do Webhook,
Linked Item,Item Vinculado,
Feedback By,Feedback De,
Manufacturing Section,Seção de Manufatura,
"By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ","Por padrão, o Nome do cliente é definido de acordo com o Nome completo inserido. Se você deseja que os clientes sejam nomeados por um",
Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,Configure a Lista de preços padrão ao criar uma nova transação de vendas. os preços dos itens serão obtidos desta lista de preços.,
"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice or Delivery Note without creating a Sales Order first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Sales Order' checkbox in the Customer master.","Se esta opção estiver configurada ';Sim';, o ERPNext impedirá que você crie uma fatura de venda ou nota de entrega sem criar um pedido de venda primeiro. Essa configuração pode ser substituída para um determinado cliente, ativando a caixa de seleção ';Permitir criação de fatura de vendas sem pedido de venda'; no mestre de clientes.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice without creating a Delivery Note first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Delivery Note' checkbox in the Customer master.","Se esta opção estiver configurada como ';Sim';, o ERPNext impedirá que você crie uma fatura de venda sem criar uma nota de entrega primeiro. Esta configuração pode ser substituída para um determinado cliente, habilitando a caixa de seleção ';Permitir criação de fatura de vendas sem nota de entrega'; no mestre do cliente.",
Default Warehouse for Sales Return,Armazém Padrão Para Devolução de Vendas,
Default In Transit Warehouse,Padrão no Armazém de Trânsito,
Enable Perpetual Inventory For Non Stock Items,Habilitar Estoque Permanente Para Itens Fora de Estoque,
HRA Settings,Configurações HRA,
Basic Component,Componente Básico,
HRA Component,Componente HRA,
Arrear Component,Arrear Component,
Please enter the company name to confirm,Insira o nome da empresa para confirmar,
Quotation Lost Reason Detail,Detalhe do Motivo da Perda da Cotação,
Enable Variants,Habilitar Variantes,
Save Quotations as Draft,Salvar Citações Como Rascunho,
MAT-DN-RET-.YYYY.-,MAT-DN-RET-.YYYY.-,
Please Select a Customer,Selecione Um Cliente,
Against Delivery Note Item,Contra Item de Nota de Entrega,
Is Non GST ,Não é GST,
Image Description,Descrição da Imagem,
Transfer Status,Status de Transferência,
MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
Track this Purchase Receipt against any Project,Rastreie este recibo de compra em qualquer projeto,
Please Select a Supplier,Selecione Um Fornecedor,
Add to Transit,Adicionar Ao Trânsito,
Set Basic Rate Manually,Definir Taxa Básica Manualmente,
"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ","Por padrão, o nome do item é definido de acordo com o código do item inserido. Se você deseja que os itens sejam nomeados por um",
Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Definir um depósito padrão para transações de estoque. Isso será obtido no depósito padrão no mestre de itens.,
"This will allow stock items to be displayed in negative values. Using this option depends on your use case. With this option unchecked, the system warns before obstructing a transaction that is causing negative stock.","Isso permitirá que os itens de estoque sejam exibidos em valores negativos. o uso desta opção depende do seu caso de uso. Com esta opção desmarcada, o sistema avisa antes de obstruir uma transação que está causando estoque negativo.",
Choose between FIFO and Moving Average Valuation Methods. Click ,Escolha entre os métodos de avaliação FIFO e média móvel. Clique,
 to know more about them., para saber mais sobre eles.,
Show 'Scan Barcode' field above every child table to insert Items with ease.,Mostre o campo ';Scan Barcode'; acima de cada tabela filha para inserir itens com facilidade.,
"Serial numbers for stock will be set automatically based on the Items entered based on first in first out in transactions like Purchase/Sales Invoices, Delivery Notes, etc.","Os números de série para estoque serão definidos automaticamente com base nos itens inseridos com base no primeiro a entrar em primeiro a sair em transações como compras / faturas de vendas, notas de entrega, etc.",
"If blank, parent Warehouse Account or company default will be considered in transactions","Se estiver em branco, a conta pai do armazém ou o padrão da empresa serão considerados nas transações",
Service Level Agreement Details,Detalhes do Acordo de Nível de Serviço,
Service Level Agreement Status,Status do Acordo de Nível de Serviço,
On Hold Since,Em Espera Desde,
Total Hold Time,Tempo de Espera Total,
Response Details,Detalhes da Resposta,
Average Response Time,Tempo Médio de Resposta,
User Resolution Time,Tempo de Resolução do Usuário,
SLA is on hold since {0},SLA está em espera desde {0},
Pause SLA On Status,Pausar Sla no Status,
Pause SLA On,Pausar Sla Em,
Greetings Section,Seção de Saudações,
Greeting Title,Título de Saudação,
Greeting Subtitle,Subtítulo de Saudação,
Youtube ID,ID do Youtube,
Youtube Statistics,Estatísticas do Youtube,
Views,Visualizações,
Dislikes,Não Gosta,
Video Settings,Configurações de Vídeo,
Enable YouTube Tracking,Ativar Rastreamento do Youtube,
30 mins,30 minutos,
1 hr,1 hora,
6 hrs,6 horas,
Patient Progress,Progresso do Paciente,
Targetted,Direcionado,
Score Obtained,Pontuação Obtida,
Sessions,Sessões,
Average Score,Pontuação Média,
Select Assessment Template,Selecione o Modelo de Avaliação,
 out of , de,
Select Assessment Parameter,Selecione o Parâmetro de Avaliação,
Gender: ,Gênero:,
Contact: ,Contato:,
Total Therapy Sessions: ,Sessões de Terapia Total:,
Monthly Therapy Sessions: ,Sessões Mensais de Terapia:,
Patient Profile,Perfil do Paciente,
Point Of Sale,Ponto de Vendas,
Email sent successfully.,E-mail enviado com sucesso.,
Search by invoice id or customer name,Pesquise por identificação da fatura ou nome do cliente,
Invoice Status,Status da Fatura,
Filter by invoice status,Filtrar por status de fatura,
Select item group,Selecione o grupo de itens,
No items found. Scan barcode again.,Nenhum item encontrado. Leia o código de barras novamente.,
"Search by customer name, phone, email.","Pesquise por nome do cliente, telefone, e-mail.",
Enter discount percentage.,Insira a porcentagem de desconto.,
Discount cannot be greater than 100%,O desconto não pode ser maior que 100%,
Enter customer's email,Insira o e-mail do cliente,
Enter customer's phone number,Insira o número de telefone do cliente,
Customer contact updated successfully.,Contato do cliente atualizado com sucesso.,
Item will be removed since no serial / batch no selected.,O item será removido uma vez que nenhuma série / lote não foi selecionado.,
Discount (%),Desconto (%),
You cannot submit the order without payment.,Você não pode enviar o pedido sem pagamento.,
You cannot submit empty order.,Você não pode enviar um pedido vazio.,
To Be Paid,Ser Pago,
Create POS Opening Entry,Criar Entrada de Abertura de PDV,
Please add Mode of payments and opening balance details.,Adicione o modo de pagamento e os detalhes do saldo inicial.,
Toggle Recent Orders,Alternar Pedidos Recentes,
Save as Draft,Salvar Como Rascunho,
You must add atleast one item to save it as draft.,Você deve adicionar pelo menos um item para salvá-lo como rascunho.,
There was an error saving the document.,Ocorreu um erro ao salvar o documento.,
You must select a customer before adding an item.,Você deve selecionar um cliente antes de adicionar um item.,
Please Select a Company,Por Favor Selecione Uma Empresa,
Active Leads,Leads Ativos,
Please Select a Company.,Selecione Uma Empresa.,
BOM Operations Time,Tempo de operações BOM,
BOM ID,BOM ID,
BOM Item Code,Código de item BOM,
Time (In Mins),Tempo (em Minutos),
Sub-assembly BOM Count,Contagem de BOM de submontagem,
View Type,Tipo de Vista,
Total Delivered Amount,Quantidade Total Entregue,
Downtime Analysis,Análise de Tempo de Inatividade,
Machine,Máquina,
Downtime (In Hours),Tempo de Inatividade (em Horas),
Employee Analytics,Análise de Funcionários,
"""From date"" can not be greater than or equal to ""To date""",&quot;Desde a data&quot; não pode ser maior ou igual a &quot;Até a data&quot;,
Exponential Smoothing Forecasting,Previsão de Suavização Exponencial,
First Response Time for Issues,Tempo de Primeira Resposta em Incidentes,
First Response Time for Opportunity,Tempo de Primeira Resposta em Oportunidades,
Depreciatied Amount,Valor Depreciado,
Period Based On,Período Baseado Em,
Date Based On,Data Com Base Em,
{0} and {1} are mandatory,{0} e {1} são obrigatórios,
Consider Accounting Dimensions,Considere as Dimensões Contábeis,
Reserved Quantity for Production,Quantidade Reservada Para Produção,
Projected Quantity,Quantidade Projetada,
 Total Sales Amount, Valor Total de Vendas,
Job Card Summary,Resumo do Cartão de Trabalho,
Id,ID,
Time Required (In Mins),Tempo Necessário (em Minutos),
From Posting Date,Da Data de Postagem,
To Posting Date,Para Data de Postagem,
No records found,Nenhum registro foi encontrado,
Customer/Lead Name,Nome do Cliente/Lead,
Production Planning Report,Relatório de Planejamento de Produção,
Order Qty,Quantidade do Pedido,
Raw Material Code,Código de Matéria Prima,
Raw Material Name,Nome da Matéria Prima,
Allotted Qty,Qtd Atribuída,
Expected Arrival Date,Data Esperada de Chegada,
Arrival Quantity,Quantidade de Chegada,
Raw Material Warehouse,Armazém de Matéria-prima,
Order By,Ordenar Por,
Include Sub-assembly Raw Materials,Incluir Matérias-primas de Submontagem,
Program wise Fee Collection,Cobrança de taxas do programa inteligente,
Fees Collected,Taxas Cobradas,
Project Summary,Resumo do Projeto,
Total Tasks,Total de Tarefas,
Tasks Completed,Tarefas Concluídas,
Tasks Overdue,Tarefas Em Atraso,
Completion,Conclusão,
Purchase Order Analysis,Análise de Pedido de Compra,
From and To Dates are required.,As datas de início e fim são obrigatórias.,
To Date cannot be before From Date.,A data de término não pode ser anterior à data de início.,
Qty to Bill,Qtd Para Bill,
Group by Purchase Order,Agrupar Por Ordem de Compra,
 Purchase Value, Valor de Compra,
Total Received Amount,Valor Total Recebido,
Quality Inspection Summary,Resumo de Inspeção de Qualidade,
 Quoted Amount, Quantia Cotada,
Lead Time (Days),Prazo de Entrega (dias),
Include Expired,Incluir Expirado,
Requested Items to Order and Receive,Itens Solicitados Para Solicitar e Receber,
Sales Order Analysis,Análise de Pedidos de Vendas,
Amount Delivered,Quantidade Entregue,
Delay (in Days),Atraso (em Dias),
Group by Sales Order,Agrupar Por Pedido de Venda,
 Sales Value, Valor de Venda,
Stock Qty vs Serial No Count,Quantidade Em Estoque Vs Série Sem Contagem,
Serial No Count,Série Sem Contagem,
Work Order Summary,Resumo da Ordem de Serviço,
Produce Qty,Quantidade de Produção,
Lead Time (in mins),Tempo de espera (em minutos),
Charts Based On,Gráficos Baseados Em,
YouTube Interactions,Interações no Youtube,
Published Date,Data de Publicação,
Barnch,Barnch,
Select a Company,Selecione Uma Empresa,
Opportunity {0} created,Oportunidade {0} criada,
Kindly select the company first,Selecione primeiro a empresa,
Please enter From Date and To Date to generate JSON,Insira a data inicial e a data final para gerar JSON,
Download DATEV File,Baixar arquivo DATEV,
Numero has not set in the XML file,Numero não foi definido no arquivo XML,
Inward Supplies(liable to reverse charge),Suprimentos internos (passíveis de cobrança reversa),
This is based on the course schedules of this Instructor,Isso é baseado nas programações do curso deste instrutor,
Course and Assessment,Curso e Avaliação,
Course {0} has been added to all the selected programs successfully.,O curso {0} foi adicionado a todos os programas selecionados com sucesso.,
Programs updated,Programas atualizados,
Program and Course,Programa e Curso,
{0} or {1} is mandatory,{0} ou {1} é obrigatório,
Mandatory Fields,Campos Obrigatórios,
Student {0}: {1} does not belong to Student Group {2},Aluno {0}: {1} não pertence ao Grupo de Alunos {2},
Student Attendance record {0} already exists against the Student {1},O registro de frequência do aluno {0} já existe para o aluno {1},
Course and Fee,Curso e Taxa,
Not eligible for the admission in this program as per Date Of Birth,Não elegível para a admissão neste programa de acordo com a data de nascimento,
Topic {0} has been added to all the selected courses successfully.,O tópico {0} foi adicionado a todos os cursos selecionados com sucesso.,
Courses updated,Cursos atualizados,
{0} {1} has been added to all the selected topics successfully.,{0} {1} foi adicionado a todos os tópicos selecionados com sucesso.,
Topics updated,Tópicos atualizados,
Academic Term and Program,Termo Acadêmico e Programa,
Please remove this item and try to submit again or update the posting time.,Remova este item e tente enviar novamente ou atualizar o tempo de postagem.,
Failed to Authenticate the API key.,Falha ao autenticar a chave API.,
Invalid Credentials,Credenciais Inválidas,
URL can only be a string,URL só pode ser uma string,
"Here is your webhook secret, this will be shown to you only once.",Este é o seu segredo do webhook; ele será mostrado a você apenas uma vez.,
The payment for this membership is not paid. To generate invoice fill the payment details,O pagamento por esta adesão não é pago. Para gerar fatura preencha os dados de pagamento,
An invoice is already linked to this document,Uma fatura já está vinculada a este documento,
No customer linked to member {},Nenhum cliente vinculado ao membro {},
You need to set <b>Debit Account</b> in Membership Settings,Você precisa definir a <b>conta de débito</b> nas configurações de associação,
You need to set <b>Default Company</b> for invoicing in Membership Settings,Você precisa definir a <b>Empresa Padrão</b> para faturamento nas Configurações de Associação,
You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Você precisa habilitar <b>Enviar e-mail de reconhecimento</b> nas configurações de associação,
Error creating membership entry for {0},Erro ao criar entrada de associação para {0},
A customer is already linked to this Member,Um cliente já está vinculado a este membro,
End Date must not be lesser than Start Date,A data de término não deve ser inferior à data de início,
Employee {0} already has Active Shift {1}: {2},O funcionário {0} já tem turno ativo {1}: {2},
 from {0}, de {0},
 to {0}, para {0},
Please set {0} for the Employee or for Department: {1},Defina {0} Para Funcionário Ou Departamento: {1},
Employee Onboarding: {0} is already for Job Applicant: {1},Integração de funcionário: {0} já é para Candidato a uma vaga: {1},
Asset Value Analytics,Análise do Valor do Ativo,
Category-wise Asset Value,Valor do Ativo Por Categoria,
Total Assets,Total de Ativos,
New Assets (This Year),Novos Ativos (este Ano),
Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Linha # {}: a data de lançamento da depreciação não deve ser igual à data disponível para uso.,
Incorrect Date,Data Incorreta,
Invalid Gross Purchase Amount,Valor Bruto de Compra Inválido,
There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Há manutenção ou reparos ativos no ativo. Você deve concluir todos eles antes de cancelar o ativo.,
% Complete,% Completo,
Back to Course,De Volta Ao Curso,
Finish Topic,Terminar Tópico,
Mins,Mins,
by,Por,
Back to,De Volta A,
Enrolling...,Inscrevendo...,
You have successfully enrolled for the program ,Você se inscreveu com sucesso no programa,
Enrolled,Inscrito,
Watch Intro,Assistir À Introdução,
We're here to help!,Nós estamos aqui para ajudar!,
Frequently Read Articles,Leia Artigos Com Frequência,
Please set a default company address,Defina um endereço padrão da empresa,
{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} não é um estado válido! Verifique se há erros de digitação ou insira o código ISO do seu estado.,
Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,Ocorreu um erro ao analisar o plano de contas: certifique-se de que não há duas contas com o mesmo nome,
Plaid invalid request error,Erro de solicitação inválida de xadrez,
Please check your Plaid client ID and secret values,Verifique o seu ID de cliente Plaid e os valores secretos,
Bank transaction creation error,Erro de criação de transação bancária,
Unit of Measurement,Unidade de Medida,
Fiscal Year {0} Does Not Exist,Ano Fiscal {0} Não Existe,
Row # {0}: Returned Item {1} does not exist in {2} {3},Linha # {0}: o item devolvido {1} não existe em {2} {3},
Valuation type charges can not be marked as Inclusive,Encargos de tipo de avaliação não podem ser marcados como inclusivos,
You do not have permissions to {} items in a {}.,Você não tem permissão para {} itens em um {}.,
Insufficient Permissions,Permissões Insuficientes,
You are not allowed to update as per the conditions set in {} Workflow.,Você não tem permissão para atualizar de acordo com as condições definidas no {} Workflow.,
Expense Account Missing,Conta de Despesas Ausente,
{0} is not a valid Value for Attribute {1} of Item {2}.,{0} não é um valor válido para o atributo {1} do item {2}.,
Invalid Value,Valor Inválido,
The value {0} is already assigned to an existing Item {1}.,O valor {0} já está atribuído a um item existente {1}.,
"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","Para continuar editando este valor de atributo, habilite {0} em Configurações de variante de item.",
Edit Not Allowed,Editar Não Permitido,
Row #{0}: Item {1} is already fully received in Purchase Order {2},Linha # {0}: o item {1} já foi totalmente recebido no pedido de compra {2},
You cannot create or cancel any accounting entries with in the closed Accounting Period {0},Você não pode criar ou cancelar qualquer lançamento contábil no período contábil fechado {0},
POS Invoice should have {} field checked.,A fatura de PDV deve ter o campo {} marcado.,
Invalid Item,Artigo Inválido,
Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Linha # {}: você não pode adicionar quantidades positivas em uma nota fiscal de devolução. Remova o item {} para concluir a devolução.,
The selected change account {} doesn't belongs to Company {}.,A conta de alteração selecionada {} não pertence à Empresa {}.,
Atleast one invoice has to be selected.,Pelo menos uma fatura deve ser selecionada.,
Payment methods are mandatory. Please add at least one payment method.,Os métodos de pagamento são obrigatórios. Adicione pelo menos um método de pagamento.,
Please select a default mode of payment,Selecione um modo de pagamento padrão,
You can only select one mode of payment as default,Você só pode selecionar um modo de pagamento como padrão,
Missing Account,Conta Em Falta,
Customers not selected.,Clientes não selecionados.,
Statement of Accounts,Extrato de Contas,
Ageing Report Based On ,Relatório de Envelhecimento Baseado Em,
Please enter distributed cost center,Insira o centro de custo distribuído,
Total percentage allocation for distributed cost center should be equal to 100,A alocação percentual total para o centro de custo distribuído deve ser igual a 100,
Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,Não é possível habilitar Centro de Custo Distribuído para um Centro de Custo já alocado em outro Centro de Custo Distribuído,
Parent Cost Center cannot be added in Distributed Cost Center,Centro de custo pai não pode ser adicionado ao centro de custo distribuído,
A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,Um centro de custo distribuído não pode ser adicionado à tabela de alocação de centro de custo distribuído.,
Cost Center with enabled distributed cost center can not be converted to group,Centro de custo com centro de custo distribuído habilitado não pode ser convertido em grupo,
Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,Centro de custo já alocado em um centro de custo distribuído não pode ser convertido em grupo,
Trial Period Start date cannot be after Subscription Start Date,A data de início do período de teste não pode ser posterior à data de início da assinatura,
Subscription End Date must be after {0} as per the subscription plan,A data de término da assinatura deve ser posterior a {0} de acordo com o plano de assinatura,
Subscription End Date is mandatory to follow calendar months,A data de término da assinatura é obrigatória para seguir os meses do calendário,
Row #{}: POS Invoice {} is not against customer {},Linha nº {}: Fatura de PDV {} não é contra o cliente {},
Row #{}: POS Invoice {} is not submitted yet,Linha nº {}: Fatura de PDV {} ainda não foi enviada,
Row #{}: POS Invoice {} has been {},Linha nº {}: a fatura de PDV {} foi {},
No Supplier found for Inter Company Transactions which represents company {0},Nenhum fornecedor encontrado para transações entre empresas que representam a empresa {0},
No Customer found for Inter Company Transactions which represents company {0},Nenhum cliente encontrado para transações entre empresas que representam a empresa {0},
Invalid Period,Período Inválido,
Selected POS Opening Entry should be open.,A entrada de abertura de PDV selecionada deve estar aberta.,
Invalid Opening Entry,Entrada de Abertura Inválida,
Please set a Company,Defina Uma Empresa,
"Sorry, this coupon code's validity has not started",A validade deste código de cupom não começou,
"Sorry, this coupon code's validity has expired",A validade deste código de cupom expirou,
"Sorry, this coupon code is no longer valid","Desculpe, este código de cupom não é mais válido",
For the 'Apply Rule On Other' condition the field {0} is mandatory,"Para a condição ';Aplicar regra em outra';, o campo {0} é obrigatório",
{1} Not in Stock,{1} Fora de estoque,
Only {0} in Stock for item {1},Apenas {0} em estoque para o item {1},
Please enter a coupon code,Insira um código de cupom,
Please enter a valid coupon code,Por favor insira um código de cupom válido,
Invalid Child Procedure,Procedimento de Criança Inválido,
Import Italian Supplier Invoice.,Importar Fatura de Fornecedor Italiano.,
"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.","Taxa de avaliação para o item {0}, é necessária para fazer lançamentos contábeis para {1} {2}.",
 Here are the options to proceed:, Aqui estão as opções para prosseguir:,
"If the item is transacting as a Zero Valuation Rate item in this entry, please enable 'Allow Zero Valuation Rate' in the {0} Item table.","Se o item estiver sendo negociado como um item de Taxa de avaliação zero nesta entrada, ative ';Permitir taxa de avaliação zero'; na {0} tabela de itens.",
"If not, you can Cancel / Submit this entry ","Caso contrário, você pode cancelar / enviar esta entrada",
 performing either one below:, realizando um dos seguintes:,
Create an incoming stock transaction for the Item.,Crie uma transação de estoque de entrada para o item.,
Mention Valuation Rate in the Item master.,Mencione a taxa de avaliação no cadastro de itens.,
Valuation Rate Missing,Taxa de Avaliação Ausente,
Serial Nos Required,Números de Série Necessários,
Quantity Mismatch,Quantidade Incompatível,
"Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.","Reabasteça os itens e atualize a lista de seleção para continuar. Para descontinuar, cancele a lista de seleção.",
Out of Stock,Fora de Estoque,
{0} units of Item {1} is not available.,{0} unidades do item {1} não está disponível.,
Item for row {0} does not match Material Request,O item para a linha {0} não corresponde ao pedido de material,
Warehouse for row {0} does not match Material Request,O armazém para a linha {0} não corresponde ao pedido de material,
Accounting Entry for Service,Lançamento Contábil Para Serviço,
All items have already been Invoiced/Returned,Todos os itens já foram faturados / devolvidos,
All these items have already been Invoiced/Returned,Todos esses itens já foram faturados / devolvidos,
Stock Reconciliations,Reconciliações de Estoque,
Merge not allowed,Mesclar não permitido,
The following deleted attributes exist in Variants but not in the Template. You can either delete the Variants or keep the attribute(s) in template.,Os seguintes atributos excluídos existem em variantes mas não no modelo. Você pode excluir as variantes ou manter o (s) atributo (s) no modelo.,
Variant Items,Itens Variantes,
Variant Attribute Error,Erro de Atributo Variante,
The serial no {0} does not belong to item {1},O número de série {0} não pertence ao item {1},
There is no batch found against the {0}: {1},Nenhum lote encontrado em {0}: {1},
Completed Operation,Operação Concluída,
Work Order Analysis,Análise de Ordem de Trabalho,
Quality Inspection Analysis,Análise de Inspeção de Qualidade,
Pending Work Order,Ordem de Serviço Pendente,
Last Month Downtime Analysis,Análise de Tempo de Inatividade no Último Mês,
Work Order Qty Analysis,Análise de Quantidade de Ordem de Serviço,
Job Card Analysis,Análise de Carteira de Trabalho,
Monthly Total Work Orders,Total Mensal de Ordens de Serviço,
Monthly Completed Work Orders,Ordens de Serviço Concluídas Mensalmente,
Ongoing Job Cards,Cartões de Trabalho Contínuo,
Monthly Quality Inspections,Inspeções Mensais de Qualidade,
(Forecast),(Previsão),
Total Demand (Past Data),Demanda Total (dados Anteriores),
Total Forecast (Past Data),Previsão Total (dados Anteriores),
Total Forecast (Future Data),Previsão Total (dados Futuros),
Based On Document,Com Base no Documento,
Based On Data ( in years ),Com base em dados (em anos),
Smoothing Constant,Constante de Suavização,
Please fill the Sales Orders table,Por favor preencha a tabela de Pedidos de Vendas,
Sales Orders Required,Pedidos de Vendas Necessários,
Please fill the Material Requests table,Preencha a tabela de Solicitações de Materiais,
Material Requests Required,Solicitações de Materiais Necessárias,
Items to Manufacture are required to pull the Raw Materials associated with it.,Os itens a fabricar são necessários para extrair as matérias-primas associadas a eles.,
Items Required,Itens Necessários,
Operation {0} does not belong to the work order {1},A operação {0} não pertence à ordem de serviço {1},
Print UOM after Quantity,Imprimir UOM após a quantidade,
Set default {0} account for perpetual inventory for non stock items,Definir conta {0} padrão para estoque permanente para itens fora de estoque,
Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Linha # {0}: o item filho não deve ser um pacote de produtos. Remova o item {1} e salve,
Credit limit reached for customer {0},Limite de crédito atingido para o cliente {0},
Could not auto create Customer due to the following missing mandatory field(s):,Não foi possível criar automaticamente o cliente devido aos seguintes campos obrigatórios ausentes:,
Please create Customer from Lead {0}.,Crie um Cliente a partir do Lead {0}.,
Mandatory Missing,Ausente Obrigatória,
From Date can not be greater than To Date.,A data inicial não pode ser posterior à data final.,
Row #{0}: Please enter the result value for {1},Linha # {0}: Insira o valor do resultado para {1},
Mandatory Results,Resultados Obrigatórios,
Sales Invoice or Patient Encounter is required to create Lab Tests,A fatura de vendas ou o encontro com o paciente são necessários para criar testes de laboratório,
Insufficient Data,Dados Insuficientes,
Lab Test(s) {0} created successfully,Teste (s) de laboratório {0} criado com sucesso,
Test :,Teste :,
Sample Collection {0} has been created,A coleção de amostra {0} foi criada,
Normal Range: ,Intervalo Normal:,
Row #{0}: Check Out datetime cannot be less than Check In datetime,Linha # {0}: a data e hora de check-out não pode ser menor que a data e hora de check-in,
"Missing required details, did not create Inpatient Record","Detalhes obrigatórios ausentes, registro de paciente não criado",
Unbilled Invoices,Faturas Não Faturadas,
Standard Selling Rate should be greater than zero.,A taxa de venda padrão deve ser maior que zero.,
Conversion Factor is mandatory,Fator de conversão é obrigatório,
Row #{0}: Conversion Factor is mandatory,Linha nº {0}: Fator de conversão é obrigatório,
Sample Quantity cannot be negative or 0,Quantidade de amostra não pode ser negativa ou 0,
Invalid Quantity,Quantidade Inválida,
"Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Defina os padrões para Grupo de clientes, Território e Lista de preços de venda nas configurações de venda",
{0} on {1},{0} em {1},
{0} with {1},{0} com {1},
Appointment Confirmation Message Not Sent,Mensagem de Confirmação de Compromisso Não Enviada,
"SMS not sent, please check SMS Settings","SMS não enviado, verifique as configurações de SMS",
Healthcare Service Unit Type cannot have both {0} and {1},Tipo de unidade de serviço de saúde não pode ter {0} e {1},
Healthcare Service Unit Type must allow atleast one among {0} and {1},O tipo de unidade de serviço de saúde deve permitir pelo menos um entre {0} e {1},
Set Response Time and Resolution Time for Priority {0} in row {1}.,Defina o Tempo de Resposta e o Tempo de Resolução Para a Prioridade {0} na Linha {1}.,
Response Time for {0} priority in row {1} can't be greater than Resolution Time.,O tempo de resposta para {0} prioridade na linha {1} não pode ser maior que o tempo de resolução.,
{0} is not enabled in {1},{0} não está habilitado em {1},
Group by Material Request,Agrupar Por Solicitação de Material,
Email Sent to Supplier {0},Email Enviado Ao Fornecedor {0},
"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","O Acesso À Solicitação de Cotação do Portal Está Desabilitado. Para Permitir o Acesso, Habilite-o Nas Configurações do Portal.",
Supplier Quotation {0} Created,Orçamento do Fornecedor {0} Criado,
Valid till Date cannot be before Transaction Date,Válido até a data não pode ser anterior à data da transação,
Unlink Advance Payment on Cancellation of Order,Desvincular o Pagamento Adiantado no Cancelamento do Pedido,
"Simple Python Expression, Example: territory != 'All Territories'","Expressão Python simples, exemplo: território! = ';Todos os territórios';",
Sales Contributions and Incentives,Contribuições de Vendas e Incentivos,
Sourced by Supplier,Fornecido Pelo Fornecedor,
Total weightage assigned should be 100%.<br>It is {0},O peso total atribuído deve ser 100%.<br> É {0},
Account {0} exists in parent company {1}.,A conta {0} existe na empresa-mãe {1}.,
"To overrule this, enable '{0}' in company {1}","Para anular isso, ative ';{0}'; na empresa {1}",
Invalid condition expression,Expressão de condição inválida,
Please Select a Company First,Selecione Uma Empresa Primeiro,
Please Select Both Company and Party Type First,Selecione o Tipo de Empresa e de Parceiro Primeiro,
Provide the invoice portion in percent,Fornece a parte da fatura em porcentagem,
Give number of days according to prior selection,Dê o número de dias de acordo com a seleção anterior,
Email Details,Detalhes de Email,
"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Selecione uma saudação para o destinatário. Por exemplo, Sr., Sra., Etc.",
Preview Email,Pré-visualizar Email,
Please select a Supplier,Selecione um fornecedor,
Supplier Lead Time (days),Prazo de Entrega do Fornecedor (dias),
"Home, Work, etc.","Casa, Trabalho, etc.",
Exit Interview Held On,Entrevista de Saída Realizada Em,
Sets 'Target Warehouse' in each row of the Items table.,Define ';Armazém de destino'; em cada linha da tabela de itens.,
Sets 'Source Warehouse' in each row of the Items table.,Define ';Source Warehouse'; em cada linha da tabela de itens.,
POS Register,Registro de PDV,
"Can not filter based on POS Profile, if grouped by POS Profile","Não é possível filtrar com base no Perfil de POS, se agrupado por Perfil de POS",
"Can not filter based on Customer, if grouped by Customer","Não é possível filtrar com base no cliente, se agrupado por cliente",
"Can not filter based on Cashier, if grouped by Cashier","Não é possível filtrar com base no Caixa, se agrupado por Caixa",
Payment Method,Forma de Pagamento,
"Can not filter based on Payment Method, if grouped by Payment Method","Não é possível filtrar com base na forma de pagamento, se agrupado por forma de pagamento",
Supplier Quotation Comparison,Comparação de Cotação de Fornecedor,
Price per Unit (Stock UOM),Preço Por Unidade (uom de Estoque),
Group by Supplier,Grupo Por Fornecedor,
Group by Item,Agrupar Por Item,
Remember to set {field_label}. It is required by {regulation}.,Lembre-se de definir {field_label}. É exigido por {regulamento}.,
Enrollment Date cannot be before the Start Date of the Academic Year {0},A data de inscrição não pode ser anterior à data de início do ano letivo {0},
Enrollment Date cannot be after the End Date of the Academic Term {0},A data de inscrição não pode ser posterior à data de término do período acadêmico {0},
Enrollment Date cannot be before the Start Date of the Academic Term {0},A data de inscrição não pode ser anterior à data de início do período acadêmico {0},
Future Posting Not Allowed,Postagem Futura Não Permitida,
"To enable Capital Work in Progress Accounting, ","Para habilitar a Contabilidade de Trabalho Capital em Andamento,",
you must select Capital Work in Progress Account in accounts table,você deve selecionar a conta Capital Work in Progress na tabela de contas,
You can also set default CWIP account in Company {},Você também pode definir uma conta CWIP padrão na Empresa {},
The Request for Quotation can be accessed by clicking on the following button,O Pedido de Cotação pode ser acessado clicando no seguinte botão,
Regards,Saudações,
Please click on the following button to set your new password,Clique no botão a seguir para definir sua nova senha,
Update Password,Atualizar Senha,
Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Linha nº {}: a taxa de venda do item {} é menor do que {}. a venda {} deve ser pelo menos {},
You can alternatively disable selling price validation in {} to bypass this validation.,Como alternativa você pode desativar a validação do preço de venda em {} para ignorar esta validação.,
Invalid Selling Price,Preço de Venda Inválido,
Address needs to be linked to a Company. Please add a row for Company in the Links table.,O endereço precisa estar vinculado a uma empresa. Adicione uma linha para Empresa na tabela de Links.,
Company Not Linked,Empresa Não Vinculada,
Import Chart of Accounts from CSV / Excel files,Importar Plano de Contas de arquivos CSV / Excel,
Completed Qty cannot be greater than 'Qty to Manufacture',Qtd concluída não pode ser maior que ';Qty to Manufacture';,
"Row {0}: For Supplier {1}, Email Address is Required to send an email","Linha {0}: Para o fornecedor {1}, o endereço de e-mail é obrigatório para enviar um e-mail",
"If enabled, the system will post accounting entries for inventory automatically","Se ativado, o sistema lançará lançamentos contábeis para estoque automaticamente",
Accounts Frozen Till Date,Contas Congeladas Até a Data,
Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Os lançamentos contábeis estão congelados até esta data. Ninguém pode criar ou modificar entradas exceto usuários com a função especificada abaixo,
Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Função Permitida Para Definir Contas Congeladas e Editar Entradas Congeladas,
Address used to determine Tax Category in transactions,Endereço usado para determinar a categoria de imposto nas transações,
"The percentage you are allowed to bill more against the amount ordered. For example, if the order value is $100 for an item and tolerance is set as 10%, then you are allowed to bill up to $110 ","A porcentagem que você tem permissão para cobrar mais em relação ao valor pedido. Por exemplo, se o valor do pedido for $ 100 para um item e a tolerância for definida como 10%, você poderá cobrar até $ 110",
This role is allowed to submit transactions that exceed credit limits,Esta função tem permissão para enviar transações que excedam os limites de crédito,
"If ""Months"" is selected, a fixed amount will be booked as deferred revenue or expense for each month irrespective of the number of days in a month. It will be prorated if deferred revenue or expense is not booked for an entire month","Se &quot;Meses&quot; for selecionado, um valor fixo será registrado como receita ou despesa diferida para cada mês, independentemente do número de dias em um mês. Será rateado se a receita ou despesa diferida não for registrada para um mês inteiro",
"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Se esta opção estiver desmarcada, as entradas contábeis diretas serão criadas para registrar receitas ou despesas diferidas",
Show Inclusive Tax in Print,Mostrar Imposto Incluso na Impressão,
Only select this if you have set up the Cash Flow Mapper documents,Selecione esta opção apenas se você configurou os documentos do Mapeador de Fluxo de Caixa,
Payment Channel,Canal de Pagamento,
Is Purchase Order Required for Purchase Invoice & Receipt Creation?,A Ordem de Compra É Necessária Para a Criação da Fatura e do Recibo de Compra?,
Is Purchase Receipt Required for Purchase Invoice Creation?,O Recibo de Compra É Necessário Para a Criação da Fatura de Compra?,
Maintain Same Rate Throughout the Purchase Cycle,Manter a Mesma Taxa Ao Longo do Ciclo de Compra,
Allow Item To Be Added Multiple Times in a Transaction,Permitir Item a Ser Adicionado Várias Vezes Em Uma Transação,
Suppliers,Fornecedores,
Send Emails to Suppliers,Envie E-mails Para Fornecedores,
Select a Supplier,Selecione Um Fornecedor,
Cannot mark attendance for future dates.,Não é possível marcar presença para datas futuras.,
Do you want to update attendance? <br> Present: {0} <br> Absent: {1},Quer atualizar a frequência?<br> Presente: {0}<br> Ausente: {1},
Mpesa Settings,Configurações Mpesa,
Initiator Name,Nome do Iniciador,
Till Number,Número Até,
Sandbox,Sandbox,
 Online PassKey, Senha Online,
Security Credential,Credencial de Segurança,
Get Account Balance,Obter Saldo da Conta,
Please set the initiator name and the security credential,Defina o nome do iniciador e a credencial de segurança,
Inpatient Medication Entry,Entrada de Medicação Para Paciente Interno,
HLC-IME-.YYYY.-,HLC-IME-.YYYY.-,
Item Code (Drug),Código do Item (droga),
Medication Orders,Pedidos de Medicação,
Get Pending Medication Orders,Obtenha Pedidos de Medicação Pendentes,
Inpatient Medication Orders,Pedidos de Medicação Para Pacientes Internados,
Medication Warehouse,Armazém de Medicamentos,
Warehouse from where medication stock should be consumed,Armazém de onde o estoque de medicamentos deve ser consumido,
Fetching Pending Medication Orders,Buscando Pedidos de Medicação Pendentes,
Inpatient Medication Entry Detail,Detalhe de Entrada de Medicação Para Paciente Interno,
Medication Details,Detalhes de Medicação,
Drug Code,Código de Drogas,
Drug Name,Nome do Medicamento,
Against Inpatient Medication Order,Contra Ordem de Medicação Para Paciente Interno,
Against Inpatient Medication Order Entry,Contra a Entrada de Pedido de Medicamento Para Paciente Interno,
Inpatient Medication Order,Pedido de Medicação Para Paciente Internado,
HLC-IMO-.YYYY.-,HLC-IMO-.YYYY.-,
Total Orders,Pedidos Totais,
Completed Orders,Pedidos Concluídos,
Add Medication Orders,Adicionar Pedidos de Medicação,
Adding Order Entries,Adicionar Entradas de Pedidos,
{0} medication orders completed,{0} pedidos de medicamentos concluídos,
{0} medication order completed,{0} pedido de medicamento concluído,
Inpatient Medication Order Entry,Entrada de Pedido de Medicação Para Paciente Interno,
Is Order Completed,O Pedido Foi Concluído,
Employee Records to Be Created By,Registro do Colaborador a Ser Criado Por,
Employee records are created using the selected field,Os registros de funcionários são criados usando o campo selecionado,
Don't send employee birthday reminders,Não envie aos colaboradores lembretes de aniversários,
Restrict Backdated Leave Applications,Restringir Pedidos de Licença Retroativos,
Sequence ID,ID de Sequência,
Sequence Id,ID de Sequência,
Allow multiple material consumptions against a Work Order,Permitir vários consumos de material em uma Ordem de Serviço,
Plan time logs outside Workstation working hours,Planeje registros de tempo fora do horário de trabalho da estação de trabalho,
Plan operations X days in advance,Planeje as operações com X dias de antecedência,
Time Between Operations (Mins),Tempo Entre as Operações (minutos),
Default: 10 mins,Padrão: 10 minutos,
Overproduction for Sales and Work Order,Superprodução Para Vendas e Ordem de Serviço,
"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Atualizar o custo do BOM automaticamente por meio do programador, com base na última taxa de avaliação / taxa de lista de preços / taxa da última compra de matérias-primas",
Purchase Order already created for all Sales Order items,Pedido de compra já criado para todos os itens do pedido de venda,
Select Items,Selecione Itens,
Against Default Supplier,Contra Fornecedor Padrão,
Auto close Opportunity after the no. of days mentioned above,Oportunidade de fechamento automático após o nº dos dias mencionados acima,
Is Sales Order Required for Sales Invoice & Delivery Note Creation?,O Pedido de Vendas É Necessário Para a Criação da Fatura de Vendas e da Nota de Entrega?,
Is Delivery Note Required for Sales Invoice Creation?,A Nota de Entrega É Necessária Para a Criação da Fatura de Vendas?,
How often should Project and Company be updated based on Sales Transactions?,Com que frequência o Projeto e a Empresa devem ser atualizados com base nas Transações de Vendas?,
Allow User to Edit Price List Rate in Transactions,Permitir Ao Usuário Editar Preço da Lista de Preços Em Transações,
Allow Item to Be Added Multiple Times in a Transaction,Permitir Item a Ser Adicionado Várias Vezes Em Uma Transação,
Allow Multiple Sales Orders Against a Customer's Purchase Order,Permitir Vários Pedidos de Venda Relacionados Ao Pedido de Compra do Cliente,
Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Validar Preço de Venda Para o Item de Acordo Com o Valor de Compra Ou Taxa de Avaliação,
Hide Customer's Tax ID from Sales Transactions,Esconder CPF/CNPJ em transações de vendas,
"The percentage you are allowed to receive or deliver more against the quantity ordered. For example, if you have ordered 100 units, and your Allowance is 10%, then you are allowed to receive 110 units.","A porcentagem que você tem permissão para receber ou entregar mais em relação à quantidade pedida. Por exemplo, se você encomendou 100 unidades e seu subsídio é de 10%, então você tem permissão para receber 110 unidades.",
Action If Quality Inspection Is Not Submitted,Ação Se a Inspeção de Qualidade Não For Enviada,
Auto Insert Price List Rate If Missing,Taxa de Lista de Preços de Inserção Automática Se Ausente,
Automatically Set Serial Nos Based on FIFO,Número de Série Automaticamente Definido Com Base na Fifo,
Set Qty in Transactions Based on Serial No Input,Definir a Quantidade Em Transações Com Base Em Série Sem Entrada,
Raise Material Request When Stock Reaches Re-order Level,Criar Requisição de Material Quando o Estoque Atingir o Nível Mínimo,
Notify by Email on Creation of Automatic Material Request,Notificar Por Email a Criação de Requisição de Material Automática,
Allow Material Transfer from Delivery Note to Sales Invoice,Permitir transferência de material da nota de entrega para a fatura de vendas,
Allow Material Transfer from Purchase Receipt to Purchase Invoice,Permitir transferência de material do recibo de compra para a fatura de compra,
Freeze Stocks Older Than (Days),Congelar Estoques Anteriores a (dias),
Role Allowed to Edit Frozen Stock,Função Autorizada Para Editar Estoque Congelado,
The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,O valor não alocado da Entrada de pagamento {0} é maior do que o valor não alocado da transação bancária,
Payment Received,Pagamento Recebido,
Attendance cannot be marked outside of Academic Year {0},A frequência não pode ser marcada fora do ano letivo {0},
Student is already enrolled via Course Enrollment {0},O aluno já está matriculado por meio da inscrição no curso {0},
Attendance cannot be marked for future dates.,A participação não pode ser marcada para datas futuras.,
Please add programs to enable admission application.,Adicione programas para habilitar o pedido de admissão.,
The following employees are currently still reporting to {0}:,Os seguintes funcionários ainda estão subordinados a {0}:,
Please make sure the employees above report to another Active employee.,Certifique-se de que os funcionários acima se reportem a outro funcionário ativo.,
Cannot Relieve Employee,Não Pode Dispensar o Funcionário,
Please enter {0},Insira {0},
Please select another payment method. Mpesa does not support transactions in currency '{0}',Selecione outro método de pagamento. Mpesa não suporta transações na moeda ';{0}';,
Transaction Error,Erro de Transação,
Mpesa Express Transaction Error,Erro de Transação do Mpesa Express,
"Issue detected with Mpesa configuration, check the error logs for more details","Problema detectado com a configuração do Mpesa, verifique os logs de erro para obter mais detalhes",
Mpesa Express Error,Erro Mpesa Express,
Account Balance Processing Error,Erro de Processamento do Saldo da Conta,
Please check your configuration and try again,Por favor verifique a sua configuração e tente novamente,
Mpesa Account Balance Processing Error,Erro de Processamento de Saldo da Conta Mpesa,
Balance Details,Detalhes do Saldo,
Current Balance,Saldo Atual,
Available Balance,Saldo Disponível,
Reserved Balance,Saldo Reservado,
Uncleared Balance,Saldo Não Compensado,
Payment related to {0} is not completed,O pagamento relacionado a {0} não foi concluído,
Row #{}: Item Code: {} is not available under warehouse {}.,Linha # {}: Código do item: {} não está disponível no depósito {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Linha nº {}: Quantidade em estoque insuficiente para o código do item: {} sob o depósito {}. Quantidade disponível {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Linha # {}: selecione um número de série e lote para o item: {} ou remova-o para concluir a transação.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Linha # {}: Nenhum número de série selecionado para o item: {}. Selecione um ou remova-o para concluir a transação.,
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Linha # {}: Nenhum lote selecionado para o item: {}. Selecione um lote ou remova-o para concluir a transação.,
Payment amount cannot be less than or equal to 0,O valor do pagamento não pode ser menor ou igual a 0,
Please enter the phone number first,Por favor insira o número de telefone primeiro,
Row #{}: {} {} does not exist.,Linha # {}: {} {} não existe.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Linha # {0}: {1} é necessário para criar as {2} faturas de abertura,
You had {} errors while creating opening invoices. Check {} for more details,Você teve {} erros ao criar faturas de abertura. Verifique {} para obter mais detalhes,
Error Occured,Ocorreu Um Erro,
Opening Invoice Creation In Progress,Criação de Fatura Em Andamento,
Creating {} out of {} {},Criando {} de {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,(Nº de série: {0}) não pode ser consumido porque está reservado para cumprir o pedido de venda {1}.,
Item {0} {1},Artigo {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,A última transação de estoque para o item {0} em depósito {1} foi em {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,As transações de estoque para o item {0} em depósito {1} não podem ser lançadas antes dessa hora.,
Posting future stock transactions are not allowed due to Immutable Ledger,O lançamento de futuras transações de estoque não é permitido devido ao Immutable Ledger,
A BOM with name {0} already exists for item {1}.,Já existe um BOM com o nome {0} para o item {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Você renomeou o item? Entre em contato com o administrador / suporte técnico,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},Na linha nº {0}: o id de sequência {1} não pode ser menor que o id de sequência da linha anterior {2},
The {0} ({1}) must be equal to {2} ({3}),O {0} ({1}) deve ser igual a {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, conclua a operação {1} antes da operação {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,Não é possível garantir a entrega por número de série porque o item {0} é adicionado com e sem Garantir entrega por número de série,
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,O item {0} não tem número de série. Apenas itens serilializados podem ter entrega com base no número de série,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,Nenhum BOM ativo encontrado para o item {0}. a entrega por número de série não pode ser garantida,
No pending medication orders found for selected criteria,Nenhum pedido de medicamento pendente encontrado para os critérios selecionados,
From Date cannot be after the current date.,A data de início não pode ser posterior à data atual.,
To Date cannot be after the current date.,A data de término não pode ser posterior à data atual.,
From Time cannot be after the current time.,A hora inicial não pode ser posterior à hora atual.,
To Time cannot be after the current time.,A hora final não pode ser posterior à hora atual.,
Stock Entry {0} created and ,Entrada de estoque {0} criada e,
Inpatient Medication Orders updated successfully,Pedidos de medicação para pacientes internados atualizados com sucesso,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Linha {0}: Não é possível criar uma Inscrição de Medicação para Paciente Interno em relação ao Pedido de Medicação para Paciente Interno cancelado {1},
Row {0}: This Medication Order is already marked as completed,Linha {0}: Este pedido de medicação já está marcado como concluído,
Quantity not available for {0} in warehouse {1},Quantidade não disponível para {0} no armazém {1},
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,Ative Permitir estoque negativo nas configurações de estoque ou crie a entrada de estoque para continuar.,
No Inpatient Record found against patient {0},Nenhum registro de paciente interno encontrado para o paciente {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Já existe um Pedido de Medicação para Paciente Interno {0} contra o Encontro do Paciente {1}.,
Allow In Returns,Permitir Devoluções,
Hide Unavailable Items,Ocultar Itens Indisponíveis,
Apply Discount on Discounted Rate,Aplicar Desconto na Taxa Com Desconto,
Therapy Plan Template,Modelo de Plano de Terapia,
Fetching Template Details,Buscando Detalhes do Modelo,
Linked Item Details,Detalhes do Item Vinculado,
Therapy Types,Tipos de Terapia,
Therapy Plan Template Detail,Detalhe do Modelo do Plano de Terapia,
Non Conformance,Não Conformidade,
Process Owner,Proprietário do Processo,
Corrective Action,Ação Corretiva,
Preventive Action,Ação Preventiva,
Problem,Problema,
Responsible,Responsável,
Completion By,Conclusão Por,
Process Owner Full Name,Nome Completo do Proprietário do Processo,
Right Index,Índice certo,
Left Index,Índice Esquerdo,
Sub Procedure,Subprocedimento,
Passed,Passado,
Print Receipt,Imprimir Recibo,
Edit Receipt,Editar Recibo,
Focus on search input,Foco na entrada de pesquisa,
Focus on Item Group filter,Foco no filtro de grupo de itens,
Checkout Order / Submit Order / New Order,Finalizar Pedido / Enviar Pedido / Novo Pedido,
Add Order Discount,Adicionar Desconto de Pedido,
Item Code: {0} is not available under warehouse {1}.,Código do item: {0} não está disponível no depósito {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Números de série indisponíveis para o item {0} em depósito {1}. Por favor tente mudar o warehouse.,
Fetched only {0} available serial numbers.,Buscou apenas {0} números de série disponíveis.,
Switch Between Payment Modes,Alternar Entre os Modos de Pagamento,
Enter {0} amount.,Insira o valor de {0}.,
You don't have enough points to redeem.,Você não tem pontos suficientes para resgatar.,
You can redeem upto {0}.,Você pode resgatar até {0}.,
Enter amount to be redeemed.,Insira o valor a ser resgatado.,
You cannot redeem more than {0}.,Você não pode resgatar mais de {0}.,
Open Form View,Abra a Visualização do Formulário,
POS invoice {0} created succesfully,Fatura de PDV {0} criada com sucesso,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Quantidade em estoque insuficiente para o código do item: {0} sob o depósito {1}. Quantidade disponível {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,Número de série: {0} já foi transacionado para outra fatura de PDV.,
Balance Serial No,Número de Série do Saldo,
Warehouse: {0} does not belong to {1},Armazém: {0} não pertence a {1},
Please select batches for batched item {0},Selecione os lotes para o item em lote {0},
Please select quantity on row {0},Selecione a quantidade na linha {0},
Please enter serial numbers for serialized item {0},Insira os números de série para o item serializado {0},
Batch {0} already selected.,Lote {0} já selecionado.,
Please select a warehouse to get available quantities,Selecione um armazém para obter as quantidades disponíveis,
"For transfer from source, selected quantity cannot be greater than available quantity","Para transferência da origem, a quantidade selecionada não pode ser maior que a quantidade disponível",
Cannot find Item with this Barcode,Não é possível encontrar o item com este código de barras,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} é obrigatório. Talvez o registro de câmbio não tenha sido criado para {1} a {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} enviou ativos vinculados a ele. Você precisa cancelar os ativos para criar o retorno de compra.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,Não é possível cancelar este documento pois está vinculado ao ativo enviado {0}. Cancele para continuar.,
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Linha # {}: Número de série {} já foi transacionado para outra fatura de PDV. Selecione o número de série válido.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Linha nº {}: Nºs de série {} já foi transacionado para outra fatura de PDV. Selecione o número de série válido.,
Item Unavailable,Artigo Indisponível,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},Linha nº {}: Número de série {} não pode ser devolvido pois não foi negociado na fatura original {},
Please set default Cash or Bank account in Mode of Payment {},Defina dinheiro ou conta bancária padrão no modo de pagamento {},
Please set default Cash or Bank account in Mode of Payments {},Defina dinheiro ou conta bancária padrão no modo de pagamentos {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,Certifique-se de que a conta {} seja uma conta de balanço. Você pode alterar a conta-mãe para uma conta de balanço ou selecionar uma conta diferente.,
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,Certifique-se de que a {} conta seja uma conta a pagar. Altere o tipo de conta para Pagável ou selecione uma conta diferente.,
Row {}: Expense Head changed to {} ,Linha {}: Cabeçalho de Despesas alterado para {},
because account {} is not linked to warehouse {} ,porque a conta {} não está vinculada ao depósito {},
or it is not the default inventory account,ou não é a conta de estoque padrão,
Expense Head Changed,Cabeça de Despesas Alterada,
because expense is booked against this account in Purchase Receipt {},porque a despesa é registrada nesta conta no recibo de compra {},
as no Purchase Receipt is created against Item {}. ,visto que nenhum recibo de compra é criado para o item {}.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,Isso é feito para lidar com a contabilidade de casos em que o recibo de compra é criado após a fatura de compra,
Purchase Order Required for item {},Pedido de compra necessário para o item {},
To submit the invoice without purchase order please set {} ,Para enviar a fatura sem pedido de compra defina {},
as {} in {},Como Em {},
Mandatory Purchase Order,Ordem de Compra Obrigatória,
Purchase Receipt Required for item {},Recibo de compra necessário para o item {},
To submit the invoice without purchase receipt please set {} ,Para enviar a fatura sem recibo de compra defina {},
Mandatory Purchase Receipt,Recibo de Compra Obrigatório,
POS Profile {} does not belongs to company {},Perfil de PDV {} não pertence à empresa {},
User {} is disabled. Please select valid user/cashier,O usuário {} está desativado. Selecione um usuário / caixa válido,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Linha nº {}: a fatura original {} da fatura de devolução {} é {}.,
Original invoice should be consolidated before or along with the return invoice.,A fatura original deve ser consolidada antes ou junto com a fatura de devolução.,
You can add original invoice {} manually to proceed.,Você pode adicionar a fatura original {} manualmente para prosseguir.,
Please ensure {} account is a Balance Sheet account. ,Certifique-se de que a conta {} seja uma conta de balanço.,
You can change the parent account to a Balance Sheet account or select a different account.,Você pode alterar a conta-mãe para uma conta de balanço ou selecionar uma conta diferente.,
Please ensure {} account is a Receivable account. ,Certifique-se de que a conta {} seja uma conta a receber.,
Change the account type to Receivable or select a different account.,Altere o tipo de conta para Recebível ou selecione uma conta diferente.,
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},{} não pode ser cancelado porque os pontos de fidelidade ganhos foram resgatados. Primeiro cancele o {} Não {},
already exists,já existe,
POS Closing Entry {} against {} between selected period,POS fechando entrada {} contra {} entre o período selecionado,
POS Invoice is {},A fatura de PDV é {},
POS Profile doesn't matches {},Perfil de PDV não corresponde a {},
POS Invoice is not {},A fatura de PDV não é {},
POS Invoice isn't created by user {},A fatura de PDV não foi criada pelo usuário {},
Row #{}: {},Linha #{}: {},
Invalid POS Invoices,Faturas de PDV inválidas,
Please add the account to root level Company - {},Adicione a conta ao nível raiz Empresa - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","Ao criar uma conta para Empresa-filha {0}, conta-mãe {1} não encontrada. Por favor, crie a conta principal no COA correspondente",
Account Not Found,Conta Não Encontrada,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.","Ao criar uma conta para Empresa filha {0}, conta pai {1} encontrada como uma conta contábil.",
Please convert the parent account in corresponding child company to a group account.,Converta a conta-mãe da empresa-filha correspondente em uma conta de grupo.,
Invalid Parent Account,Conta Pai Inválida,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.","Renomear só é permitido por meio da empresa-mãe {0}, para evitar incompatibilidade.",
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Se você {0} {1} quantidades do item {2}, o esquema {3} será aplicado ao item.",
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Se você {0} {1} vale um item {2}, o esquema {3} será aplicado ao item.",
"As the field {0} is enabled, the field {1} is mandatory.","Como o campo {0} está habilitado, o campo {1} é obrigatório.",
"As the field {0} is enabled, the value of the field {1} should be more than 1.","Como o campo {0} está habilitado, o valor do campo {1} deve ser maior que 1.",
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},Não é possível entregar o número de série {0} do item {1} porque está reservado para atender ao pedido de venda {2},
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","O pedido de venda {0} tem reserva para o item {1}, você só pode entregar o {1} reservado para {0}.",
{0} Serial No {1} cannot be delivered,{0} Número de série {1} não pode ser entregue,
Row {0}: Subcontracted Item is mandatory for the raw material {1},Linha {0}: Item subcontratado é obrigatório para a matéria-prima {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Como há matéria-prima suficiente, a Solicitação de Material não é necessária para o Armazém {0}.",
" If you still want to proceed, please enable {0}."," Se você ainda deseja continuar, ative {0}.",
The item referenced by {0} - {1} is already invoiced,O item referenciado por {0} - {1} já foi faturado,
Therapy Session overlaps with {0},A sessão de terapia se sobrepõe a {0},
Therapy Sessions Overlapping,Sobreposição de Sessões de Terapia,
Therapy Plans,Planos de Terapia,
"Item Code, warehouse, quantity are required on row {0}","Código do item, armazém, quantidade são necessários na linha {0}",
Get Items from Material Requests against this Supplier,Obtenha itens de solicitações de materiais contra este fornecedor,
Enable European Access,Habilitar Acesso Europeu,
Creating Purchase Order ...,Criando Pedido de Compra...,
"Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Selecione um fornecedor dos fornecedores padrão dos itens abaixo. na seleção, um pedido de compra será feito apenas para itens pertencentes ao fornecedor selecionado.",
Row #{}: You must select {} serial numbers for item {}.,Linha {}: você deve selecionar {} números de série para o item {}.,
