"""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 enought 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 {}.,
