"""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",
) for {0},) para {0},
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,
A {0} exists between {1} and {2} (,Um {0} existe entre {1} e {2} (,
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,
Absent,Ausente,
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.,
Accrual Journal Entry for salaries from {0} to {1},Entrada de diário de acréscimo para salários de {0} a {1},
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 to Details,Adicionar Aos Detalhes,
Add/Remove Recipients,Adicionar / Remover Destinatários,
Added,Adicionado,
Added to details,Adicionado aos detalhes,
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 Jobs,Todos as Tarefas,
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,
Allocated Leaves,Folhas Alocadas,
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},
Annual Salary,Salário Anual,
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,
Applicant,Candidato,
Applicant Type,Tipo de Candidato,
Application of Funds (Assets),Aplicação de Recursos (ativos),
Application period cannot be across two allocation records,O período de aplicação não pode ser realizado em dois registros de alocação,
Application period cannot be outside leave allocation period,Período de aplicação não pode estar fora do período de atribuição de licença,
Applied,Aplicado,
Apply Now,Aplique Agora,
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,
Apprentice,Aprendiz,
Approval Status,Estado da Aprovação,
Approval Status must be 'Approved' or 'Rejected',"Status de Aprovação deve ser ""Aprovado"" ou ""Rejeitado""",
Approve,Aprovar,
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),
As per your assigned Salary Structure you cannot apply for benefits,De acordo com a estrutura salarial atribuída você não pode solicitar benefícios,
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,Atribuir,
Assign Salary Structure,Atribuir Estrutura Salarial,
Assign To,Atribuir A,
Assign to Employees,Atribuir Aos Funcionários,
Assigning Structures...,Atribuindo Estruturas...,
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,Comparecimento,
Attendance From Date and Attendance To Date is mandatory,Data de Início do Comparecimento e Data Final de Comparecimento é obrigatória,
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 for employee {0} is already marked for this day,Presença para o colaborador {0} já está registrada para este dia,
Attendance has been marked successfully.,A presença foi registada com sucesso.,
Attendance not submitted for {0} as it is a Holiday.,Participação não enviada para {0} pois é um feriado.,
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 Entries,Lançamentos do Banco,
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,Base,
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,
Beginner,Principiante,
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,
Birthday Reminder,Lembrete de Aniversário,
Black,Preto,
Blanket Orders from Costumers.,Pedidos de cobertores de clientes.,
Block Invoice,Bloquear Fatura,
Boms,LDMs,
Bonus Payment Date cannot be a past date,Data de pagamento do bônus não pode ser uma data passada,
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,
Calls,Chamadas,
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 find active Leave Period,Não é possível encontrar período de saída ativo,
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,
Casual Leave,Casual Deixar,
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,
Claimed Amount,Montante Reclamado,
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 Off,Saída Compensatória,
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 Number,Telefone Para 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,Curso,
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 Disbursement Entry,Criar Entrada de Desembolso,
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 Salary Slip,Criar Folha de Vencimento,
Create Salary Slips,Criar Recibos Salariais,
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 Payment Entries......,Criando Entradas de Pagamento......,
Creating Salary Slips...,Criando Slips Salariais...,
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,Atual,
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 Job Openings,Vagas Disponíveis Atualmente,
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,
Daily Work Summary,Resumo de Trabalho Diário,
Daily Work Summary Group,Grupo de Resumo do Trabalho Diário,
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 is repeated,Data é repetida,
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 A/C Number,Débito a / C Number,
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,
Deduction,Dedução,
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 Status,Status 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,
Earning,Ganho,
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 A/C Number,Número de Funcionário a / C,
Employee Advances,Avanços do Funcionário,
Employee Benefits,Benefícios a Colaboradores,
Employee Grade,Employee Grade,
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 Referral,Referência de Funcionário,
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 relieved on {0} must be set as 'Left',Colaborador dispensado em {0} deve ser definido como 'Desligamento',
Employee {0} already submited an apllication {1} for the payroll period {2},O funcionário {0} já enviou uma aplicação {1} para o período da folha de pagamento {2},
Employee {0} has already applied for {1} between {2} and {3} : ,O empregado {0} já aplicou {1} entre {2} e {3}:,
Employee {0} has no maximum benefit amount,Empregado {0} não tem valor de benefício máximo,
Employee {0} is not active or does not exist,Colaborador {0} não está ativo ou não existe,
Employee {0} is on Leave on {1},Empregado {0} Está Em Sair Em {1},
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,
Employee {0} on Half day on {1},Employee {0} no Meio Dia Em {1},
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,
End time cannot be before start time,O horário de término não pode ser antes do horário de início,
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,
Evaluation,Avaliação,
"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,
Event Location,Local do Evento,
Event Name,Nome do 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 Claim for Vehicle Log {0},Reembolso de Despesa Para o Log do Veículo {0},
Expense Claim {0} already exists for the Vehicle Log,O Relatório de Despesas {0} já existe no Registo de Veículo,
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,
Fill the form and save it,Preencha o formulário e salve,
Filter Employees By (Optional),Filtre os Funcionários Por (opcional),
"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,
Fiscal Year {0} not found,O Ano Fiscal de {0} não foi encontrado,
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,Alimentos,
"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 Employee,Para o Colaborador,
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 Date {0} cannot be after employee's relieving Date {1},A partir da data {0} não pode ser após a data de alívio do empregado {1},
From Date {0} cannot be before employee's joining Date {1},A partir da data {0} não pode ser anterior à data de adesão do funcionário {1},
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 date can not be less than employee's joining date,A partir da data não pode ser menor do que a data de ingresso do funcionário,
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},
Fuel Price,Preço do Combustível,
Fuel Qty,Qtde de Combustível,
Fulfillment,Realização,
Full,Cheio,
Full Name,Nome Completo,
Full-time,Tempo Integral,
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',
Future dates not allowed,Datas futuras não permitidas,
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 Details From Declaration,Obter Detalhes da Declaração,
Get Employees,Obter Funcionários,
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 Pay,Salário Bruto,
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,
Guest,Convidado,
HR Manager,Gerente de RH,
HSN,HSN,
HSN/SAC,HSN/SAC,
Half Day,Meio Período,
Half Day Date is mandatory,Meio Dia a data é obrigatória,
Half Day Date should be between From Date and To Date,Metade Data Day deve estar entre de Data e To Date,
Half Day Date should be in between Work From Date and Work End Date,A data de meio dia deve estar entre o trabalho da data e a data de término do trabalho,
Half Yearly,Semestral,
Half day date should be in between from date and to date,A data de meio dia deve estar entre a data e a data,
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,
Hello,Olá,
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,
House rent paid days overlapping with {0},Aluguel da casa paga dias sobrepostos com {0},
House rented dates required for exemption calculation,Datas alugadas da casa necessárias para o cálculo da isenção,
House rented dates should be atleast 15 days apart,Datas alugadas da casa devem ser pelo menos 15 dias de intervalo,
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,
Interest Amount,Montante de Juros,
Interests,Juros,
Intern,Estagiário,
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 Description,Descrição da Vaga,
Job Offer,Oferta de Emprego,
Job card {0} created,Cartão de trabalho {0} criado,
Jobs,Tarefas,
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 Approval Notification,Deixar a Notificação de Aprovação,
Leave Blocked,Licenças Bloqueadas,
Leave Encashment,Pagamento da Saída,
Leave Management,Gestão de Licenças,
Leave Status Notification,Deixar a Notificação de Status,
Leave Type,Tipo de Licença,
Leave Type is madatory,Deixe o tipo é uma coisa louca,
Leave Type {0} cannot be allocated since it is leave without pay,O Tipo de Licença {0} não pode ser atribuído uma vez que é uma licença sem vencimento,
Leave Type {0} cannot be carry-forwarded,Deixe tipo {0} não pode ser encaminhado carry-,
Leave Type {0} is not encashable,Deixe o tipo {0} não é inviolável,
Leave Without Pay,Licença Não Remunerada,
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},
"Leave cannot be allocated before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Deixe não pode ser alocado antes {0}, como saldo licença já tenha sido no futuro recorde alocação licença encaminhadas-carry {1}",
"Leave cannot be applied/cancelled before {0}, as leave balance has already been carry-forwarded in the future leave allocation record {1}","Deixe não pode ser aplicada / cancelada antes {0}, como saldo licença já tenha sido no futuro recorde alocação licença encaminhadas-carry {1}",
Leave of type {0} cannot be longer than {1},Deixar do tipo {0} não pode ser maior que {1},
Leaves,Sai,
Leaves Allocated Successfully for {0},Folhas Atribuídos Com Sucesso Para {0},
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,
Leaves per Year,Folhas Por Ano,
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,
Lifecycle,Ciclo de Vida,
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 Amount cannot exceed Maximum Loan Amount of {0},Valor do Empréstimo não pode exceder Máximo Valor do Empréstimo de {0},
Loan Application,Pedido de Empréstimo,
Loan Management,Gestão de Empréstimos,
Loan Repayment,Pagamento do 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 Attendance,Marcar Presença,
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 Exemption Amount cannot be greater than maximum exemption amount {0} of Tax Exemption Category {1},O valor máximo de isenção não pode ser maior do que o valor máximo de isenção {0} da categoria de isenção de imposto {1},
Max benefits should be greater than zero to dispense benefits,Benefícios máximos devem ser maiores que zero para dispensar benefícios,
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 amount eligible for the component {0} exceeds {1},A quantia máxima elegível para o componente {0} excede {1},
Maximum benefit amount of component {0} exceeds {1},A quantidade máxima de benefício do componente {0} excede {1},
Maximum benefit amount of employee {0} exceeds {1},O valor máximo de benefício do empregado {0} excede {1},
Maximum discount for Item {0} is {1}%,O desconto máximo para o item {0} é de {1}%,
Maximum leave allowed in the leave type {0} is {1},Licença máxima permitida no tipo de licença {0} é {1},
Medical,Médico,
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,
Mode of payment is required to make a payment,Modo de pagamento é necessário para fazer um pagamento,
Model,Modelo,
Moderate Sensitivity,Sensibilidade Moderada,
Monday,Segunda-feira,
Monthly,Mensal,
Monthly Distribution,Distribuição Mensal,
Monthly Repayment Amount cannot be greater than Loan Amount,Mensal Reembolso Valor não pode ser maior do que o valor do empréstimo,
More,Mais,
More Information,Mais Informações,
More than one selection for {0} not allowed,Mais de uma seleção para {0} não permitida,
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 Pay,Pagamento Líquido,
Net Pay cannot be less than 0,A Remuneração Líquida não pode ser inferior a 0,
Net Profit,Lucro Líquido,
Net Salary Amount,Valor do Salário Líquido,
Net Total,Total Líquido,
Net pay cannot be negative,Salário líquido não pode ser negativo,
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 Employee Found,Nenhum Colaborador Encontrado,
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 Salary Structure assigned for Employee {0} on given date {1},Nenhuma estrutura salarial atribuída para o empregado {0} em determinada data {1},
No Staffing Plans found for this Designation,Não foram encontrados planos de pessoal para esta designação,
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 active or default Salary Structure found for employee {0} for the given dates,Não foi encontrada nenhuma Estrutura Salarial padrão ativa para o colaborador {0} ou para as datas indicadas,
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 more updates,Nenhum update,
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 replies from,Sem respostas de,
No salary slip found to submit for the above selected criteria OR salary slip already submitted,Nenhum recibo de salário encontrado para enviar para o critério acima selecionado OU recibo de salário já enviado,
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.,
Nothing to change,Nada para mudar,
Notice Period,Período de Aviso Prévio,
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 Leave Applications with status 'Approved' and 'Rejected' can be submitted,"Somente pedidos de licença com o status ""Aprovado"" ou ""Rejeitado"" podem ser enviados",
"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 Holiday List not set for leave period {0},Lista de feriados opcional não definida para o período de licença {0},
"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,
Part-time,Meio Expediente,
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,
Password policy for Salary Slips is not set,A política de senhas para Slips Salariais não está definida,
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,
Payable Amount,Valor a Pagar,
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 Date,Data de Pagamento,
Payment Days,Datas 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 of {0} from {1} to {2},Pagamento de {0} de {1} a {2},
Payment request {0} created,Pedido de pagamento {0} criado,
Payments,Pagamentos,
Payroll,Folha de Pagamento,
Payroll Number,Número da Folha de Pagamento,
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,
Piecework,Trabalho Por Peça,
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 add the remaining benefits {0} to any of the existing component,Por favor adicione os benefícios restantes {0} para qualquer um dos componentes existentes,
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 confirm once you have completed your training,Confirme uma vez que você tenha completado seu treinamento,
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 default incoming account before creating Daily Work Summary Group,Ative a conta de entrada padrão antes de criar o Grupo de Resumo do Trabalho Diário,
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 Repayment Periods,Por favor indique períodos de reembolso,
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 repayment Amount,Por favor indique reembolso Valor,
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 Designation,Por favor selecione Empresa e Designação,
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 Employee,Selecione Empregado,
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 csv file,Por favor selecione um arquivo csv,
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 template for Leave Approval Notification in HR Settings.,Por favor defina o modelo padrão para deixar a notificação de aprovação nas configurações de RH.,
Please set default template for Leave Status Notification in HR Settings.,Por favor defina o modelo padrão para Notificação de status de saída em Configurações de RH.,
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 Company,Defina a Empresa,
Please set the Customer Address,Por Favor Defina o Endereço do Cliente,
Please set the Date Of Joining for employee {0},Defina a data de início da sessão para o empregado {0},
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 share your feedback to the training by clicking on 'Training Feedback' and then 'New',"Por favor, compartilhe seus comentários para o treinamento clicando em ';Feedback de Treinamento'; e depois ';Novo';",
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 update your status for this training event,Atualize seu status para este evento de treinamento,
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,
Present,Presente,
Prev,Anterior,
Preview,Pré-visualização,
Preview Salary Slip,Pré-visualizar Folha de Pagamento,
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,
Principal Amount,Valor Principal,
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,
Privilege Leave,Privilege Deixar,
Probation,Provação,
Probationary Period,Período Probatório,
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,
Property,Propriedade,
Property already added,Propriedade já adicionada,
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,
Reject,Rejeitar,
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,
Replies,Respostas,
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.,
Responsibilities,Responsabilidades,
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,
Role,Funçã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}# Allocated amount {1} cannot be greater than unclaimed amount {2},Linha {0} # o valor alocado {1} não pode ser maior do que a quantidade não reclamada {2},
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}# Paid Amount cannot be greater than requested advance amount,Linha {0} # Valor pago não pode ser maior do que o montante antecipado solicitado,
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 ID,ID da Folha de Pagamento,
Salary Slip of employee {0} already created for this period,Contracheque do colaborador {0} já criado para este período,
Salary Slip of employee {0} already created for time sheet {1},Contracheque do colaborador {0} já criado para o registro de tempo {1},
Salary Slip submitted for period from {0} to {1},Salário Slip enviado para o período de {0} a {1},
Salary Structure Assignment for Employee already exists,Atribuição de estrutura salarial para empregado já existe,
Salary Structure Missing,Estrutura Salarial Ausente,
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,
Salary Structure not found for employee {0} and date {1},Estrutura Salarial não encontrada para o empregado {0} e data {1},
Salary Structure should have flexible benefit component(s) to dispense benefit amount,Estrutura Salarial deve ter componente (s) de benefício flexível para dispensar o valor do benefício,
"Salary already processed for period between {0} and {1}, Leave application period cannot be between this date range.","O salário já foi processado para período entre {0} e {1}, o período de aplicação da Licença não pode estar entre este intervalo de datas.",
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,
Sanctioned Amount,Valor Liberado,
Sanctioned Amount cannot be greater than Claim Amount in Row {0}.,Montante Liberado não pode ser maior do que no Pedido de Reembolso na linha {0}.,
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,
Score must be less than or equal to 5,Pontuação deve ser inferior ou igual a 5,
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 Property,Selecione a Propriedade,
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 an employee to get the employee advance.,Selecione um funcionário para obter o adiantamento do funcionário.,
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 Expense,Despesa Com Manutenção de Veículos,
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 Employee,Mostrar Empregado,
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 Salary Slip,Mostrar Contracheque,
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,
Sick Leave,Licença Médica,
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}",
"Skipping Salary Structure Assignment for the following employees, as Salary Structure Assignment records already exists against them. {0}","Ignorar Atribuição de estrutura salarial para os seguintes empregados, como registros de atribuição de estrutura salarial já existe 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,
Staffing Plan {0} already exist for designation {1},Plano de Pessoal {0} já existe para designação {1},
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 and end dates not in a valid Payroll Period, cannot calculate {0}","Datas de início e término não em um Período da folha de pagamento válido, não é possível calcular {0}",
"Start and end dates not in a valid Payroll Period, cannot calculate {0}.","Datas de início e término fora de um Período da Folha de Pagamento válido, não é possível calcular {0}.",
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 Options,Opções de Compra,
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,
Structures have been assigned successfully,Estruturas foram atribuídas com sucesso,
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 Proof,Enviar Prova,
Submit Salary Slip,Enviar Folha de Pagamentos,
Submit this Work Order for further processing.,Envie esta Ordem de Serviço para processamento adicional.,
Submit this to create the Employee record,Envie isto para criar o registro do funcionário,
Submitting Salary Slips...,Enviando Slips Salariais...,
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,
Team Updates,Updates da Equipe,
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,Obrigado,
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 day(s) on which you are applying for leave are holidays. You need not apply for leave.,No dia (s) em que você está se candidatando a licença são feriados. Você não precisa solicitar uma licença.,
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 are more holidays than working days this month.,Há mais feriados do que dias úteis do mês.,
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 no leave period in between {0} and {1},Não há período de licença entre {0} e {1},
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 Employee,Isto é baseado na frequência deste Colaborador,
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 will submit Salary Slips and create accrual Journal Entry. Do you want to proceed?,Isso enviará os Slides salariais e criará a entrada no diário de acumulação. Você quer prosseguir?,
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 date can not be equal or less than from date,Até o momento não pode ser igual ou menor que a data,
To date can not be less than from date,Até o momento não pode ser menor que a data,
To date can not greater than employee's relieving date,Até à data não pode maior do que a data de alívio do empregado,
"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 Absent,Total de Faltas,
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 Deduction,Dedução Total,
Total Invoiced Amount,Valor Total Faturado,
Total Leaves,Total de Licenças,
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 Present,Total Presente,
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 advance amount cannot be greater than total sanctioned amount,O montante do adiantamento total não pode ser maior do que o montante liberado total,
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 flexible benefit component amount {0} should not be less than max benefits {1},O valor total do componente de benefício flexível {0} não deve ser menor do que os benefícios máximos {1},
Total hours: {0},Total de horas: {0},
Total leaves allocated is mandatory for Leave Type {0},O total de folhas alocadas é obrigatório para o tipo de licença {0},
Total working hours should not be greater than max working hours {0},O total de horas de trabalho não deve ser maior que o nr. máx. de horas de trabalho {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.,
Training,Treinamento,
Training Event,Evento de Treinamento,
Training Events,Eventos de Treinamento,
Training Feedback,Feedback do Treinamento,
Training Result,Resultado do Treinamento,
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,Viagem,
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 Response,Atualizar Resposta,
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 missing,Valor ausente,
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",
Variable,Variável,
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,
Walk In,Vitrine,
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: Leave application contains following block dates,Aviso: pedido de férias contém as datas de intervalos,
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 Listing,Listagem de Sites,
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 Summary for {0},Resumo do Trabalho Para {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 approve leaves on Block Dates,Você não está autorizado a aprovar folhas em datas Bloco,
You are not authorized to set Frozen value,Você não está autorizado para definir o valor congelado,
You are not present all day(s) between compensatory leave request days,Você não está presente todos os dias entre os dias de solicitação de licença compensatória,
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 only submit Leave Encashment for a valid encashment amount,Você só pode enviar uma licença para uma quantia válida de reembolso,
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} already allocated for Employee {1} for period {2} to {3},{0} já está alocado para o Colaborador {1} para o período de {2} até {3},
{0} applicable after {1} working days,{0} aplicável após {1} dias úteis,
{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 not in Optional Holiday List,{0} não está na lista de feriados opcional,
{0} is not in a valid Payroll Period,{0} não está em um período de folha de pagamento válido,
{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} must be submitted,{0} deve ser enviado,
{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}: Employee email not found, hence email not sent","{0}: Email do colaborador não encontrado, portanto o email não foi enviado",
{0}: From {0} of type {1},{0}: a partir de {0} do tipo {1},
{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,
Conditions,Condições,
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,
Percent,Por Cento,
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,
Sign Up,Inscrever-se,
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",
Error in some rows,Erro em algumas linhas,
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,
Benefit,Benefício,
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.,
Shift,Mudança,
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,
Approved,Aprovado,
Change,Alteração,
Contact Email,Email de Contato,
Export Type,Tipo de Exportação,
From Date,Data De,
Group By,Agrupar Por,
Importing {0} of {1},Importando {0} de {1},
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,
'employee_field_value' and 'timestamp' are required.,';employee_field_value'; e ';timestamp'; são obrigatórios.,
<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 belong to company {1},A conta {0} não pertence à empresa {1},
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 Loan Security,Adicionar Garantia ao Empréstimo,
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.,
Against Loan,Contra Empréstimo,
Against Loan:,Contra Empréstimo:,
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,
Allocation Expired!,Alocação Expirada!,
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,
Amount paid cannot be zero,O valor pago não pode ser zero,
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.,
Attendance Marked,Atendimento Marcado,
Attendance has been marked as per employee check-ins,A participação foi marcada como por check-ins de funcionários,
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 create loan until application is approved,Não é possível criar empréstimo até que o aplicativo seja aprovado,
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 Range,Intervalo de Datas,
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,
Event Link,Link do Evento,
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,
Expire Allocation,Alocação de Expiraçã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,
Fuel Expense,Despesa de Combustível,
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,
Intermediate,Intermediário,
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,
Leave application is linked with leave allocations {0}. Leave application cannot be set as leave without pay,O aplicativo de licença está vinculado às alocações de licença {0}. o pedido de licença não pode ser definido como licença sem pagamento,
Leaves Taken,Folhas Tiradas,
Less Than Amount,Menos Que Quantidade,
Liabilities,Passivo,
Loading...,Carregando...,
Loan Amount exceeds maximum loan amount of {0} as per proposed securities,O valor do empréstimo excede o valor máximo do empréstimo de {0} conforme as garantias propostas,
Loan Applications from customers and employees.,Pedidos de empréstimo de clientes e funcionários.,
Loan Disbursement,Desembolso de Empréstimos,
Loan Processes,Processos de Empréstimos,
Loan Security,Garantias de Empréstimo,
Loan Security Pledge,Gravame da Garantia de Empréstimo,
Loan Security Pledge Created : {0},Gravame da Garantia do Empréstimo Criada: {0},
Loan Security Price,Preço da Garantia do Empréstimo,
Loan Security Price overlapping with {0},Preço da Garantia do Empréstimo sobreposto com {0},
Loan Security Unpledge,Liberação da Garantia de Empréstimo,
Loan Security Value,Valor da Garantia do Empréstimo,
Loan Type for interest and penalty rates,Tipo de empréstimo para taxas de juros e multas,
Loan amount cannot be greater than {0},O valor do empréstimo não pode ser maior que {0},
Loan is mandatory,O empréstimo é obrigatório,
Loans,Empréstimos,
Loans provided to customers and employees.,Empréstimos concedidos a clientes e funcionários.,
Location,Localização,
Log Type is required for check-ins falling in the shift: {0}.,O tipo de registro é necessário para check-ins que caem no turno: {0}.,
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 Employee found for the given employee field value. '{}': {},Nenhum funcionário encontrado para o valor do campo de empregado determinado. ';{}';: {},
No Leaves Allocated to Employee: {0} for Leave Type: {1},Nenhuma Licença Atribuída Ao Empregado: {0} Para o Tipo de Licença: {1},
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,
Only expired allocation can be cancelled,Somente alocação expirada pode ser cancelada,
Only users with the {0} role can create backdated leave applications,Somente usuários com a função {0} podem criar aplicativos de licença antigos,
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,
Password policy cannot contain spaces or simultaneous hyphens. The format will be restructured automatically,A política de senha não pode conter espaços ou hífens simultâneos. o formato será reestruturado automaticamente,
Patient History,História do Paciente,
Pause,Pausa,
Pay,Pagar,
Payment Document Type,Tipo de Documento de Pagamento,
Payment Name,Nome do Pagamento,
Penalty Amount,Valor da Penalidade,
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 enter the designation,Por favor insira a designação,
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 Applicant Type first,Selecione primeiro o tipo de candidato,
Please select Customer first,Por favor selecione o Cliente primeiro,
Please select Item Code first,Selecione primeiro o código do item,
Please select Loan Type for company {0},Selecione Tipo de empréstimo para a empresa {0},
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
Pledge Status,Status da Promessa,
Pledge Time,Tempo da Promessa,
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,
Proposed Pledges are mandatory for secured Loans,As promessas propostas são obrigatórias para empréstimos garantidos,
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,
Qty or Amount is mandatroy for loan security,Quantidade ou quantidade é mandatroy para garantia de empréstimo,
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,
Repayment Method is mandatory for term loans,O método de reembolso é obrigatório para empréstimos a prazo,
Repayment Start Date is mandatory for term loans,A data de início do reembolso é obrigatória para empréstimos a prazo,
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},
Sanctioned Amount limit crossed for {0} {1},Limite do valor sancionado cruzado para {0} {1},
Sanctioned Loan Amount already exists for {0} against company {1},O montante do empréstimo sancionado já existe para {0} contra a empresa {1},
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}).,
There are no vacancies under staffing plan {0},Não há vagas no plano de equipe {0},
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 employee already has a log with the same timestamp.{0},Este funcionário já possui um log com o mesmo timestamp. {0},
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,
Timing,Cronometragem,
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.",
To date needs to be before from date,Até a data precisa ser anterior à data,
Total,Total,
Total Early Exits,Total de Saídas Antecipadas,
Total Late Entries,Total de Entradas Tardias,
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,
Training Event:,Evento de Treinamento:,
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 Salary Component {0},Não é possível encontrar o componente Salary {0},
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,
Unmarked Attendance for days,Presença não marcada por dias,
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,
Vacancies cannot be lower than the current openings,As vagas não podem ser inferiores às aberturas atuais,
Valid From Time must be lesser than Valid Upto Time.,O Valid From Time deve ser menor que o Valid Upto Time.,
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 an invalid Attendance Status.,{} é um status de participação inválido.,
{} 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,
Loan Amount is mandatory,Montante do empréstimo é obrigatório,
Mode Of Payment,Forma de Pagamento,
No students Found,Nenhum Aluno Encontrado,
Not in Stock,Esgotado,
Please select a Customer,Selecione um Cliente,
Printed On,Impresso Em,
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,
Loan amount is mandatory,Montante do empréstimo é obrigatório,
Minimum Qty,Qtd Mínima,
More details,Mais detalhes,
Nature of Supplies,Natureza Dos Suprimentos,
No Items found.,Nenhum item encontrado.,
No employee found,Nenhum colaborador 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,
Please setup Employee Naming System in Human Resource > HR Settings,Configure o sistema de nomeação de funcionários em Recursos humanos&gt; Configurações de RH,
Please setup numbering series for Attendance via Setup > Numbering Series,Configure séries de numeração para Presença em Configuração&gt; Série de numeração,
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}.",
Current Odometer Value should be greater than Last Odometer Value {0},O valor atual do odômetro deve ser maior que o valor do último odômetro {0},
No additional expenses has been added,Nenhuma despesa adicional foi adicionada,
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,
{0} already exists for employee {1} and period {2},{0} já existe para funcionário {1} e período {2},
Leaves Allocated,Folhas Alocadas,
Leaves Expired,Folhas Expiradas,
Leave Without Pay does not match with approved {} records,Sair sem pagar não corresponde aos registros {} aprovados,
Income Tax Slab not set in Salary Structure Assignment: {0},Placa de Imposto de Renda Não Definida na Atribuição da Estrutura Salarial: {0},
Income Tax Slab: {0} is disabled,Slab de imposto de renda: {0} está desativado,
Income Tax Slab must be effective on or before Payroll Period Start Date: {0},A folha de imposto de renda deve entrar em vigor na ou antes da data de início do período da folha de pagamento: {0},
No leave record found for employee {0} on {1},Nenhum registro de licença encontrado para o funcionário {0} em {1},
Row {0}: {1} is required in the expenses table to book an expense claim.,Linha {0}: {1} é necessária na tabela de despesas para registrar um relatório de despesas.,
Set the default account for the {0} {1},Defina a conta padrão para o {0} {1},
(Half Day),(Meio dia),
Income Tax Slab,Laje de Imposto de Renda,
Row #{0}: Cannot set amount or formula for Salary Component {1} with Variable Based On Taxable Salary,Linha # {0}: Não é possível definir o valor ou fórmula para o componente de salário {1} com variável baseada no salário tributável,
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,
Repay From Salary can be selected only for term loans,Reembolso do salário pode ser selecionado apenas para empréstimos a prazo,
No valid Loan Security Price found for {0},Nenhuma Garantia de Empréstimo válida encontrado para {0},
Loan Account and Payment Account cannot be same,A conta de empréstimo e a conta de pagamento não podem ser iguais,
Loan Security Pledge can only be created for secured loans,O Gravame de Garantia de Empréstimo só pode ser criado para empréstimos com garantias,
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.",
Salary Component Account,Conta do Componente Salárial,
Default Bank / Cash account will be automatically updated in Salary Journal Entry when this mode is selected.,A conta Bancária / Dinheiro padrão será atualizada automaticamente no Registo de Lançamento Contabilístico quando for selecionado este modo.,
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,
Result,Resultado,
Total Score,Nota Total,
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,
Joining Date,Data de Admissão,
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,
Publish on website,Publicar no site,
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 Status,Estado da Candidatura,
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,
IN,IN,
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,
Remind Before,Lembre-se Antes,
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,
Reminded,Lembrado,
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,
Additional Salary,Salário Adicional,
HR,Rh,
HR-ADS-.YY.-.MM.-,HR-ADS-.YY.-. MM.-,
Salary Component,Componente Salarial,
Overwrite Salary Structure Amount,Sobrescrever Quantidade de Estrutura Salarial,
Deduct Full Tax on Selected Payroll Date,Deduzir o Imposto Total na Data da Folha de Pagamento Selecionada,
Payroll Date,Data da Folha de Pagamento,
Date on which this component is applied,Data em que este componente é aplicado,
Salary Slip,Contracheque,
Salary Component Type,Tipo de Componente Salarial,
HR User,Usuário do Rh,
Appointment Letter,Carta de Nomeação,
Job Applicant,Candidato À Vaga,
Applicant Name,Nome do Candidato,
Appointment Date,Data do Encontro,
Appointment Letter Template,Modelo de Carta de Nomeação,
Body,Corpo,
Closing Notes,Notas de Encerramento,
Appointment Letter content,Conteúdo da carta de nomeação,
Appraisal,Avaliação,
HR-APR-.YY.-.MM.,HR-APR-.YY.-.MM.,
Appraisal Template,Modelo de Avaliação,
For Employee Name,Para Nome do Colaborador,
Goals,Metas,
Total Score (Out of 5),Pontuação Total (nota Máxima 5),
"Any other remarks, noteworthy effort that should go in the records.","Quaisquer outras observações, esforço digno de nota que deve constar nos registros.",
Appraisal Goal,Meta de Avaliação,
Key Responsibility Area,Área de responsabilidade principal,
Weightage (%),Peso (%),
Score (0-5),Pontuação (0-5),
Score Earned,Pontuação Obtida,
Appraisal Template Title,Título do Modelo de Avaliação,
Appraisal Template Goal,Meta do Modelo de Avaliação,
KRA,KRA,
Key Performance Area,Área de performance principal,
HR-ATT-.YYYY.-,HR-ATT-.YYYY.-,
On Leave,De Licença,
Work From Home,Trabalho a Partir de Casa,
Leave Application,Solicitação de Licenças,
Attendance Date,Data de Comparecimento,
Attendance Request,Solicitação de Participação,
Late Entry,Entrada Tardia,
Early Exit,Saída Antecipada,
Half Day Date,Meio Período da Data,
On Duty,Em Serviço,
Explanation,Explicação,
Compensatory Leave Request,Pedido de Licença Compensatória,
Leave Allocation,Alocação de Licenças,
Worked On Holiday,Trabalhou no Feriado,
Work From Date,Trabalho a Partir da Data,
Work End Date,Data de Término do Trabalho,
Email Sent To,Email Enviado Para,
Select Users,Selecione Usuários,
Send Emails At,Enviar Emails Em,
Reminder,Lembrete,
Daily Work Summary Group User,Usuário do Grupo Resumo do Trabalho Diário,
email,email,
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,
Department Approver,Aprovador do Departamento,
Approver,Aprovador,
Required Skills,Habilidades Necessárias,
Skills,Habilidades,
Designation Skill,Habilidade de Designação,
Skill,Habilidade,
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,
Leave Policy,Política de 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 Details,Detalhes do Salário,
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,
HR-EAD-.YYYY.-,HR-EAD-.YYYY.-,
Returned Amount,Valor Devolvido,
Claimed,Reivindicado,
Advance Account,Conta de Adiantamentos,
Employee Attendance Tool,Ferramenta Para Lançamento de Ponto,
Unmarked Attendance,Presença Desmarcada,
Employees HTML,Colaboradores Html,
Marked Attendance,Presença Marcada,
Marked Attendance HTML,Presença Marcante Html,
Employee Benefit Application,Aplicação de Benefício do Empregado,
Max Benefits (Yearly),Benefícios Máximos (anual),
Remaining Benefits (Yearly),Benefícios Restantes (anualmente),
Payroll Period,Período da Folha de Pagamento,
Benefits Applied,Benefícios Aplicados,
Dispensed Amount (Pro-rated),Quantidade Dispensada (pro-rated),
Employee Benefit Application Detail,Detalhes do Aplicativo de Benefício do Funcionário,
Earning Component,Componente Ganho,
Pay Against Benefit Claim,Pagar Contra a Reivindicação de Benefícios,
Max Benefit Amount,Montante Máximo de Benefícios,
Employee Benefit Claim,Reivindicação de Benefícios do Empregado,
Claim Date,Data de Reivindicação,
Benefit Type and Amount,Tipo de Benefício e Montante,
Claim Benefit For,Reivindicar Benefício Para,
Max Amount Eligible,Montante Máximo Elegível,
Expense Proof,Prova de Despesas,
Employee Boarding Activity,Atividade de Embarque de Funcionários,
Activity Name,Nome da Atividade,
Task Weight,Peso da Tarefa,
Required for Employee Creation,Necessário Para a Criação de Funcionários,
Applicable in the case of Employee Onboarding,Aplicável no caso de Onboarding de Funcionários,
Employee Checkin,Check-in de Funcionários,
Log Type,Tipo de Registro,
OUT,Fora,
Location / Device ID,Localização / ID do Dispositivo,
Skip Auto Attendance,Ignorar a Participação Automática,
Shift Start,Mudança de Partida,
Shift End,Shift End,
Shift Actual Start,Mudança de Partida Real,
Shift Actual End,Mudar o Fim Real,
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,
Default Salary Structure,Estrutura Salarial Padrão,
Employee Group Table,Tabela de Grupo de Empregados,
ERPNext User ID,ID do Usuário do Erpnext,
Employee Health Insurance,Seguro de Saúde do Funcionário,
Health Insurance Name,Nome do Seguro de Saúde,
Employee Incentive,Incentivo Ao Funcionário,
Incentive Amount,Quantidade de Incentivo,
Employee Internal Work History,Histórico de Trabalho Interno do Colaborador,
Employee Onboarding,Empregado Onboarding,
Notify users by email,Notificar usuários por email,
Employee Onboarding Template,Modelo de Integração de Funcionários,
Activities,Actividades,
Employee Onboarding Activity,Atividade de Onboarding Dos Funcionários,
Employee Other Income,Outras Receitas do Empregado,
Employee Promotion,Promoção de Funcionários,
Promotion Date,Data de Promoção,
Employee Promotion Details,Detalhes da Promoção do Funcionário,
Employee Promotion Detail,Detalhe de Promoção do Funcionário,
Employee Property History,História da Propriedade do Empregado,
Employee Separation,Separação de Funcionários,
Employee Separation Template,Modelo de Separação de Funcionários,
Exit Interview Summary,Resumo da Entrevista de Saída,
Employee Skill,Habilidade Dos Funcionários,
Proficiency,Proficiência,
Evaluation Date,Data de Avaliação,
Employee Skill Map,Mapa de Habilidades Dos Funcionários,
Employee Skills,Habilidades Dos Funcionários,
Trainings,Treinamentos,
Employee Tax Exemption Category,Categoria de Isenção de Imposto do Empregado,
Max Exemption Amount,Quantidade Máxima de Isenção,
Employee Tax Exemption Declaration,Declaração de Isenção de Imposto do Empregado,
Declarations,Declarações,
Total Declared Amount,Valor Total Declarado,
Total Exemption Amount,Quantia Total de Isenção,
Employee Tax Exemption Declaration Category,Categoria de Declaração de Isenção de Imposto do Empregado,
Exemption Sub Category,Subcategoria de Isenção,
Exemption Category,Categoria de Isenção,
Maximum Exempted Amount,Quantidade Máxima Isenta,
Declared Amount,Valor Declarado,
Employee Tax Exemption Proof Submission,Submissão de Prova de Isenção de Imposto de Empregado,
Submission Date,Data de Submissão,
Tax Exemption Proofs,Provas de Isenção Fiscal,
Total Actual Amount,Valor Real Total,
Employee Tax Exemption Proof Submission Detail,Detalhe de Envio de Prova de Isenção de Imposto de Empregado,
Maximum Exemption Amount,Quantia Máxima de Isenção,
Type of Proof,Tipo de Prova,
Actual Amount,Montante Atual,
Employee Tax Exemption Sub Category,Sub-categoria de Isenção de Imposto do Empregado,
Tax Exemption Category,Categoria de Isenção Fiscal,
Employee Training,Treinamento de Funcionário,
Training Date,Data de Treinamento,
Employee Transfer,Transferência de Empregados,
Transfer Date,Data de Transferência,
Employee Transfer Details,Detalhes de Transferência de Funcionários,
Employee Transfer Detail,Detalhe de Transferência de Funcionários,
Re-allocate Leaves,Reatribuir Folhas,
Create New Employee Id,Criar Novo ID de Funcionário,
New Employee ID,ID do Novo Funcionário,
Employee Transfer Property,Propriedade de Transferência do Empregado,
HR-EXP-.YYYY.-,HR-EXP-.YYYY.-,
Expense Taxes and Charges,Impostos e Taxas de Despesas,
Total Sanctioned Amount,Valor Total Liberado,
Total Advance Amount,Valor Total do Adiantamento,
Total Claimed Amount,Quantia Total Reivindicada,
Total Amount Reimbursed,Quantia Total Reembolsada,
Vehicle Log,Log do Veículo,
Employees Email Id,Email dos Colaboradores,
More Details,Mais Detalhes,
Expense Claim Account,Conta de Reembolso de Despesas,
Expense Claim Advance,Adiantamento de Solicitação de Reembolso,
Unclaimed amount,Montante não reclamado,
Expense Claim Detail,Detalhe do Pedido de Reembolso de Despesas,
Expense Date,Data da Despesa,
Expense Claim Type,Tipo de Pedido de Reembolso de Despesas,
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,
HR Settings,Configurações de Rh,
Employee Settings,Configurações de Colaboradores,
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,
Expense Approver Mandatory In Expense Claim,Aprovador de Despesas Obrigatório na Declaração de Despesas,
Payroll Settings,Configurações da Folha de Pagamento,
Leave,Sair,
Max working hours against Timesheet,Máx. de horas de trabalho no Registo de Horas,
Include holidays in Total no. of Working Days,Incluir feriados no total de dias de trabalho,
"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Se marcado, o total de dias de trabalho vai incluir férias, e isso vai reduzir o valor de salário por dia",
"If checked, hides and disables Rounded Total field in Salary Slips","Se marcado, oculta e desativa o campo Arredondado total em boletins de salários",
The fraction of daily wages to be paid for half-day attendance,A fração do salário diário a ser paga por meio período de atendimento,
Email Salary Slip to Employee,Enviar Contracheque Para Colaborador Via Email,
Emails salary slip to employee based on preferred email selected in Employee,Enviar contracheques para os colaboradores com base em email preferido selecionado no cadastro do colaborador,
Encrypt Salary Slips in Emails,Criptografar Slices Salariais Em Emails,
"The salary slip emailed to the employee will be password protected, the password will be generated based on the password policy.","O boleto enviado por e-mail ao funcionário será protegido por senha, a senha será gerada com base na política de senha.",
Password Policy,Política de Senha,
<b>Example:</b> SAL-{first_name}-{date_of_birth.year} <br>This will generate a password like SAL-Jane-1972,<b>Exemplo:</b> SAL- {first_name} - {date_of_birth.year} <br> Isto irá gerar uma senha como SAL-Jane-1972,
Leave Settings,Deixe as Configurações,
Leave Approval Notification Template,Deixar Modelo de Notificação de Aprovação,
Leave Status Notification Template,Deixe o Modelo de Notificação de Status,
Role Allowed to Create Backdated Leave Application,Função Permitida Para Criar Aplicativos de Licença Antigos,
Leave Approver Mandatory In Leave Application,Deixe o Aprovador Obrigatório no Pedido de Licença,
Show Leaves Of All Department Members In Calendar,Mostrar Folhas de Todos os Membros do Departamento no Calendário,
Auto Leave Encashment,Deixar Automaticamente o Carregamento,
Hiring Settings,Configurações de Contratação,
Check Vacancies On Job Offer Creation,Verifique as Vagas na Criação da Oferta de Emprego,
Identification Document Type,Tipo de Documento de Identificação,
Effective from,Efetivo de,
Allow Tax Exemption,Permitir Isenção de Impostos,
"If enabled, Tax Exemption Declaration will be considered for income tax calculation.","Se ativada, a Declaração de Isenção de Imposto será considerada para o cálculo do imposto de renda.",
Standard Tax Exemption Amount,Quantia Padrão de Isenção de Imposto,
Taxable Salary Slabs,Placas Salariais Tributáveis,
Taxes and Charges on Income Tax,Impostos e Encargos Sobre o Imposto de Renda,
Other Taxes and Charges,Outros Impostos e Taxas,
Income Tax Slab Other Charges,Laje de Imposto de Renda - Outros Encargos,
Min Taxable Income,Renda Mínima Tributável,
Max Taxable Income,Lucro Tributável Máximo,
Applicant for a Job,Candidato À Uma Vaga,
Accepted,Aceito,
Job Opening,Vaga de Trabalho,
Cover Letter,Carta de Apresentação,
Resume Attachment,Anexo Currículo,
Job Applicant Source,Fonte de Candidato a Emprego,
Applicant Email Address,Endereço de E-mail do Requerente,
Awaiting Response,Aguardando Resposta,
Job Offer Terms,Termos da Oferta de Emprego,
Select Terms and Conditions,Selecione os Termos e Condições,
Printing Details,Imprimir Detalhes,
Job Offer Term,Prazo de Oferta de Emprego,
Offer Term,Termos da Oferta,
Value / Description,Valor / Descrição,
Description of a Job Opening,Descrição de Uma Vaga de Emprego,
Job Title,Cargo,
Staffing Plan,Plano de Pessoal,
Planned number of Positions,Número planejado de posições,
"Job profile, qualifications required etc.","Perfil da vaga, qualificações exigidas, etc.",
HR-LAL-.YYYY.-,HR-LAL-.YYYY.-,
Allocation,Alocação,
New Leaves Allocated,Novas Licenças Alocadas,
Add unused leaves from previous allocations,Acrescente as licenças não utilizadas de atribuições anteriores,
Unused leaves,Folhas não utilizadas,
Total Leaves Allocated,Total de Licenças Alocadas,
Total Leaves Encashed,Total de Folhas Encastadas,
Leave Period,Período de Licença,
Carry Forwarded Leaves,Carry Folhas Encaminhadas,
Apply / Approve Leaves,Aplicar / Aprovar Leaves,
HR-LAP-.YYYY.-,HR-LAP-.YYYY.-,
Leave Balance Before Application,Saldo de Licenças Antes da Solicitação,
Total Leave Days,Total de Dias de Licença,
Leave Approver Name,Nome do Aprovador de Licenças,
Follow via Email,Receber Alterações Por Email,
Block Holidays on important days.,Bloco Feriados em dias importantes.,
Leave Block List Name,Deixe o Nome Lista de Bloqueios,
Applies to Company,Aplica-se a Empresa,
"If not checked, the list will have to be added to each Department where it has to be applied.","Se não for controlada, a lista deverá ser adicionado a cada departamento onde tem de ser aplicado.",
Block Days,Bloco de Dias,
Stop users from making Leave Applications on following days.,Impedir que usuários solicitem licenças em dias seguintes,
Leave Block List Dates,Deixe as Datas Lista de Bloqueios,
Allow Users,Permitir Que os Usuários,
Allow the following users to approve Leave Applications for block days.,Permitir que os usuários a seguir para aprovar aplicações deixam para os dias de bloco.,
Leave Block List Allowed,Deixe Lista de Bloqueios Admitidos,
Leave Block List Allow,Deixe Lista de Bloqueios Permitir,
Allow User,Permitir Que o Usuário,
Leave Block List Date,Deixe Data Lista de Bloqueios,
Block Date,Bloquear Data,
Leave Control Panel,Painel de Controle de Licenças,
Select Employees,Selecione Colaboradores,
Employment Type (optional),Tipo de Emprego (opcional),
Branch (optional),Filial (opcional),
Department (optional),Departamento (opcional),
Designation (optional),Designação (opcional),
Employee Grade (optional),Employee Grade (opcional),
Employee (optional),Empregado (opcional),
Allocate Leaves,Alocar Folhas,
Carry Forward,Encaminhar,
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,Por favor selecione Encaminhar se você também quer incluir o saldo de licenças do ano fiscal anterior neste ano fiscal,
New Leaves Allocated (In Days),Novas Licenças Alocadas (em Dias),
Allocate,Alocar,
Leave Balance,Deixar Equilíbrio,
Encashable days,Dias encapsulados,
Encashment Amount,Montante da Cobrança,
Leave Ledger Entry,Sair da Entrada do Razão,
Transaction Name,Nome da Transação,
Is Carry Forward,É encaminhado,
Is Expired,Está Expirado,
Is Leave Without Pay,É Licença não remunerada,
Holiday List for Optional Leave,Lista de Férias Para Licença Opcional,
Leave Allocations,Deixar Alocações,
Leave Policy Details,Deixar Detalhes da Política,
Leave Policy Detail,Deixar Detalhes da Política,
Annual Allocation,Alocação Anual,
Leave Type Name,Nome do Tipo de Licença,
Max Leaves Allowed,Max Folhas Permitidas,
Applicable After (Working Days),Aplicável Após (dias Úteis),
Maximum Continuous Days Applicable,Máximo de Dias Contínuos Aplicáveis,
Is Optional Leave,É licença opcional,
Allow Negative Balance,Permitir Saldo Negativo,
Include holidays within leaves as leaves,Incluir feriados dentro de licenças como licenças,
Is Compensatory,É Compensatório,
Maximum Carry Forwarded Leaves,Máximo de Folhas Encaminhadas Para Transporte,
Expire Carry Forwarded Leaves (Days),Expirar Transportar Folhas Encaminhadas (dias),
Calculated in days,Calculado em dias,
Encashment,Recheio,
Allow Encashment,Permitir Encashment,
Encashment Threshold Days,Dias Limite de Acumulação,
Earned Leave,Licença Ganhou,
Is Earned Leave,É uma licença ganhada,
Earned Leave Frequency,Freqüência de Licença Ganhada,
Rounding,Arredondamento,
Payroll Employee Detail,Detalhe do Empregado da Folha de Pagamento,
Payroll Frequency,Frequência de Pagamento,
Fortnightly,Quinzenal,
Bimonthly,Bimestralmente,
Employees,Colaboradores,
Number Of Employees,Número de Empregados,
Employee Details,Detalhes do Funcionário,
Validate Attendance,Validar Participação,
Salary Slip Based on Timesheet,Demonstrativo de Pagamento Baseado Em Controle de Tempo,
Select Payroll Period,Selecione Período de Pagamento,
Deduct Tax For Unclaimed Employee Benefits,Deduzir Imposto Para Benefícios de Empregados Não Reclamados,
Deduct Tax For Unsubmitted Tax Exemption Proof,Imposto de Dedução Para Comprovação de Isenção Fiscal Não Enviada,
Select Payment Account to make Bank Entry,Selecione a conta de pagamento para fazer o lançamento bancário,
Salary Slips Created,Slips Salariais Criados,
Salary Slips Submitted,Slips Salariais Enviados,
Payroll Periods,Períodos da Folha de Pagamento,
Payroll Period Date,Data do Período da Folha de Pagamento,
Purpose of Travel,Propósito da Viagem,
Retention Bonus,Bônus de Retenção,
Bonus Payment Date,Data de Pagamento do Bônus,
Bonus Amount,Valor do Bônus,
Abbr,Abrev,
Depends on Payment Days,Depende Dos Dias de Pagamento,
Is Tax Applicable,É tributável,
Variable Based On Taxable Salary,Variável Baseada no Salário Tributável,
Exempted from Income Tax,Isento de Imposto de Renda,
Round to the Nearest Integer,Arredondar Para o Número Inteiro Mais Próximo,
Statistical Component,Componente Estatística,
"If selected, the value specified or calculated in this component will not contribute to the earnings or deductions. However, it's value can be referenced by other components that can be added or deducted. ","Se selecionado, o valor especificado ou calculado neste componente não contribuirá para os ganhos ou deduções. no entanto, seu valor pode ser referenciado por outros componentes que podem ser adicionados ou deduzidos.",
Do Not Include in Total,Não Inclua no Total,
Flexible Benefits,Benefícios Flexíveis,
Is Flexible Benefit,É Benefício Flexível,
Max Benefit Amount (Yearly),Valor Máximo de Benefício (anual),
Only Tax Impact (Cannot Claim But Part of Taxable Income),Somente Impacto Fiscal (não É Possível Reivindicar Mas Parte do Lucro Real),
Create Separate Payment Entry Against Benefit Claim,Criar Entrada de Pagamento Separado Contra Sinistro de Benefício,
Condition and Formula,Condição e Fórmula,
Amount based on formula,Total Baseado na Fórmula,
Formula,Fórmula,
Salary Detail,Detalhes de Salário,
Component,Componente,
Do not include in total,Não inclua no total,
Default Amount,Quantidade Padrão,
Additional Amount,Quantia Adicional,
Tax on flexible benefit,Imposto sobre benefício flexível,
Tax on additional salary,Imposto sobre salário adicional,
Salary Structure,Estrutura Salarial,
Working Days,Dias Úteis,
Salary Slip Timesheet,Controle de Tempo do Demonstrativo de Pagamento,
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,
Earnings,Ganhos,
Deductions,Deduções,
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,
Total in words,Total por extenso,
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.,
Salary Component for timesheet based payroll.,Componente salarial para pagamento por hora.,
Leave Encashment Amount Per Day,Deixar Montante de Cobrança Por Dia,
Max Benefits (Amount),Benefícios Máximos (quantidade),
Salary breakup based on Earning and Deduction.,Separação Salário com base em salário e dedução.,
Total Earning,Total de Ganhos,
Salary Structure Assignment,Atribuição de Estrutura Salarial,
Shift Assignment,Atribuição de Turno,
Shift Type,Tipo de Deslocamento,
Shift Request,Pedido de Mudança,
Enable Auto Attendance,Ativar Atendimento Automático,
Mark attendance based on 'Employee Checkin' for Employees assigned to this shift.,Marcar a participação com base no &quot;Employee Checkin&quot; para os funcionários atribuídos a essa mudança.,
Auto Attendance Settings,Configurações de Atendimento Automático,
Determine Check-in and Check-out,Determine o Check-in e o Check-out,
Alternating entries as IN and OUT during the same shift,Entradas alternadas como IN e OUT durante o mesmo turno,
Strictly based on Log Type in Employee Checkin,Estritamente baseado no tipo de registro no check-in de funcionários,
Working Hours Calculation Based On,Cálculo Das Horas de Trabalho Com Base Em,
First Check-in and Last Check-out,Primeiro Check-in e Último Check-out,
Every Valid Check-in and Check-out,Todos os Check-in e Check-out Válidos,
Begin check-in before shift start time (in minutes),Comece o check-in antes do horário de início do turno (em minutos),
The time before the shift start time during which Employee Check-in is considered for attendance.,O horário antes do horário de início do turno durante o qual o Check-in do funcionário é considerado para participação.,
Allow check-out after shift end time (in minutes),Permitir o check-out após o término do turno (em minutos),
Time after the end of shift during which check-out is considered for attendance.,Tempo após o final do turno durante o qual o check-out é considerado para atendimento.,
Working Hours Threshold for Half Day,Limite de Horas de Trabalho Para Meio Dia,
Working hours below which Half Day is marked. (Zero to disable),Horário de trabalho abaixo do qual meio dia é marcado. (Zero para desabilitar),
Working Hours Threshold for Absent,Limite de Horas de Trabalho Por Ausente,
Working hours below which Absent is marked. (Zero to disable),Horário de trabalho abaixo do qual a ausência está marcada. (Zero para desabilitar),
Process Attendance After,Participação no Processo Depois,
Attendance will be marked automatically only after this date.,A participação será marcada automaticamente somente após essa data.,
Last Sync of Checkin,Última sincronização do checkin,
Last Known Successful Sync of Employee Checkin. Reset this only if you are sure that all Logs are synced from all the locations. Please don't modify this if you are unsure.,Última Sincronização Bem-sucedida Conhecida do Check-in de Funcionário. Redefina isso somente se tiver certeza de que todos os registros são sincronizados de todos os locais. Por favor não modifique isso se você não tiver certeza.,
Grace Period Settings For Auto Attendance,Configurações do Período de Carência Para Atendimento Automático,
Enable Entry Grace Period,Ativar Período de Carência de Entrada,
Late Entry Grace Period,Período de Carência de Entrada Atrasada,
The time after the shift start time when check-in is considered as late (in minutes).,O horário após o horário de início do turno quando o check-in é considerado atrasado (em minutos).,
Enable Exit Grace Period,Ativar o Período de Carência de Saída,
Early Exit Grace Period,Período de Carência da Saída Antecipada,
The time before the shift end time when check-out is considered as early (in minutes).,O tempo antes do horário de término do turno quando o check-out é considerado antecipado (em minutos).,
Skill Name,Nome da Habilidade,
Staffing Plan Details,Detalhes do Plano de Pessoal,
Staffing Plan Detail,Detalhe do Plano de Pessoal,
Total Estimated Budget,Orçamento Total Estimado,
Vacancies,Vagas,
Estimated Cost Per Position,Custo Estimado Por Posição,
Total Estimated Cost,Custo Total Estimado,
Current Count,Contagem Atual,
Current Openings,Aberturas Atuais,
Number Of Positions,Número de Posições,
Taxable Salary Slab,Teto de Salário Tributável,
From Amount,De Montante,
To Amount,Para Quantidade,
Percent Deduction,Dedução Percentual,
Training Program,Programa de Treinamento,
Event Status,Status do Evento,
Has Certificate,Tem Certificado,
Seminar,Seminário,
Theory,Teoria,
Workshop,Workshop,
Conference,Conferência,
Exam,Exame,
Internet,Internet,
Self-Study,Auto Estudo,
Advance,Avançar,
Trainer Name,Nome do Instrutor,
Trainer Email,Email do Instrutor,
Attendees,Participantes,
Employee Emails,E-mails do Empregado,
Training Event Employee,Colaborador do Evento de Treinamento,
Invited,Convidado,
Feedback Submitted,Comentários Enviados,
Optional,Opcional,
Training Result Employee,Resultado do Treinamento do Colaborador,
Travel Itinerary,Itinerário de Viagem,
Travel From,Viajar De,
Travel To,Viajar Para,
Mode of Travel,Modo de Viagem,
Flight,Voar,
Train,Trem,
Taxi,Táxi,
Rented Car,Carro Alugado,
Meal Preference,Refeição Preferida,
Vegetarian,Vegetariano,
Non-Vegetarian,Não Vegetariana,
Gluten Free,Livre de Glúten,
Non Diary,Não Diário,
Travel Advance Required,Avanço de Viagem Necessário,
Departure Datetime,Data de Saída,
Arrival Datetime,Data de Chegada,
Lodging Required,Alojamento Requerido,
Preferred Area for Lodging,Área Preferida de Alojamento,
Check-in Date,Data de Check-in,
Check-out Date,Data de Check-out,
Travel Request,Pedido de Viagem,
Travel Type,Tipo de Viagem,
Domestic,Doméstico,
International,Internacional,
Travel Funding,Financiamento de Viagens,
Require Full Funding,Exigir Financiamento Total,
Fully Sponsored,Totalmente Patrocinado,
"Partially Sponsored, Require Partial Funding","Parcialmente Patrocinado, Requer Financiamento Parcial",
Copy of Invitation/Announcement,Cópia do Convite / Anúncio,
"Details of Sponsor (Name, Location)","Detalhes do Patrocinador (nome, Localização)",
Identification Document Number,Número do Documento de Identificação,
Any other details,Qualquer outro detalhe,
Costing Details,Detalhes do Custo,
Costing,Custo,
Event Details,Detalhes do Evento,
Name of Organizer,Nome do Organizador,
Address of Organizer,Endereço do Organizador,
Travel Request Costing,Custeio de Solicitação de Viagem,
Expense Type,Tipo de Despesa,
Sponsored Amount,Quantia Patrocinada,
Funded Amount,Valor Financiado,
Upload Attendance,Enviar o Ponto,
Attendance From Date,Data Inicial de Comparecimento,
Attendance To Date,Data Final de Comparecimento,
Get Template,Obter Modelo,
Import Attendance,Importação de Ponto,
Upload HTML,Upload Html,
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,
HR-VLOG-.YYYY.-,HR-VLOG-.YYYY.-,
Odometer Reading,Leitura do Odômetro,
Current Odometer value ,Valor atual do odômetro,
last Odometer Value ,último valor do odômetro,
Refuelling Details,Detalhes de Abastecimento,
Invoice Ref,Nota Fiscal de Referência,
Service Details,Detalhes do Serviço,
Service Detail,Detalhes da Manutenção do Veículo,
Vehicle Service,Manutenção no Veículo,
Service Item,Item de Manutenção,
Brake Oil,Óleo de Freio,
Brake Pad,Pedal de Freio,
Clutch Plate,Disco de Embreagem,
Engine Oil,Óleo de Motor,
Oil Change,Troca de Óleo,
Inspection,Inspeção,
Mileage,Quilometragem,
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,
Member,Membro,
Partially Disbursed,Parcialmente Desembolso,
Loan Closure Requested,Solicitação de Encerramento de Empréstimo,
Repay From Salary,Reembolsar a Partir de Salário,
Loan Details,Detalhes do Empréstimo,
Loan Type,Tipo de Empréstimo,
Loan Amount,Valor do Empréstimo,
Is Secured Loan,É Empréstimo Garantido,
Rate of Interest (%) / Year,Taxa de Juros (%) / Ano,
Disbursement Date,Data do Desembolso,
Disbursed Amount,Montante Desembolsado,
Is Term Loan,É Empréstimo a Prazo,
Repayment Method,Método de Reembolso,
Repay Fixed Amount per Period,Pagar Quantia Fixa Por Período,
Repay Over Number of Periods,Reembolsar Ao Longo Número de Períodos,
Repayment Period in Months,Período de Reembolso Em Meses,
Monthly Repayment Amount,Valor da Parcela Mensal,
Repayment Start Date,Data de Início do Reembolso,
Loan Security Details,Detalhes da Garantia do Empréstimo,
Maximum Loan Value,Valor Máximo do Empréstimo,
Account Info,Informações da Conta,
Loan Account,Conta de Empréstimo,
Interest Income Account,Conta Margem,
Penalty Income Account,Conta de Rendimentos de Penalidades,
Repayment Schedule,Agenda de Pagamentos,
Total Payable Amount,Total a Pagar,
Total Principal Paid,Total do Principal Pago,
Total Interest Payable,Interesse Total a Pagar,
Total Amount Paid,Valor Total Pago,
Loan Manager,Gerente de Empréstimos,
Loan Info,Informações do Empréstimo,
Rate of Interest,Taxa de Juros,
Proposed Pledges,Promessas Propostas,
Maximum Loan Amount,Valor Máximo de Empréstimo,
Repayment Info,Informações de Reembolso,
Total Payable Interest,Total de Juros a Pagar,
Against Loan ,Contra Empréstimo,
Loan Interest Accrual,Provisão Para Juros de Empréstimos,
Amounts,Montantes,
Pending Principal Amount,Montante Principal Pendente,
Payable Principal Amount,Montante Principal a Pagar,
Paid Principal Amount,Valor Principal Pago,
Paid Interest Amount,Montante de Juros Pagos,
Process Loan Interest Accrual,Processar Provisão de Juros de Empréstimo,
Repayment Schedule Name,Nome do Cronograma de Reembolso,
Regular Payment,Pagamento Frequente,
Loan Closure,Fechamento de Empréstimo,
Payment Details,Detalhes do Pagamento,
Interest Payable,Juros a Pagar,
Amount Paid,Montante Pago,
Principal Amount Paid,Montante Principal Pago,
Repayment Details,Detalhes de Reembolso,
Loan Repayment Detail,Detalhe de Reembolso de Empréstimo,
Loan Security Name,Nome da Garantia do Empréstimo,
Unit Of Measure,Unidade de Medida,
Loan Security Code,Código da Garantia do Empréstimo,
Loan Security Type,Tipo de Garantia de Empréstimo,
Haircut %,% de corte de cabelo,
Loan  Details,Detalhes do Empréstimo,
Unpledged,Unpledged,
Pledged,Prometido,
Partially Pledged,Parcialmente Comprometido,
Securities,Valores Mobiliários,
Total Security Value,Valor Total de Garantias,
Loan Security Shortfall,Déficit na Garantia do Empréstimo,
Loan ,Empréstimo,
Shortfall Time,Tempo de Déficit,
America/New_York,America/New_york,
Shortfall Amount,Quantidade de Déficit,
Security Value ,Valor de Segurança,
Process Loan Security Shortfall,Processar Déficit na Garantia do Empréstimo,
Loan To Value Ratio,Relação Empréstimo / Valor,
Unpledge Time,Tempo de Liberação,
Loan Name,Nome do Empréstimo,
Rate of Interest (%) Yearly,Taxa de Juros (%) Anual,
Penalty Interest Rate (%) Per Day,Taxa de Juros de Penalidade (%) Por Dia,
Penalty Interest Rate is levied on the pending interest amount on a daily basis in case of delayed repayment ,A taxa de juros de penalidade é cobrada diariamente sobre o valor dos juros pendentes em caso de atraso no pagamento,
Grace Period in Days,Período de Carência Em Dias,
No. of days from due date until which penalty won't be charged in case of delay in loan repayment,Número de dias a partir da data de vencimento até os quais a multa não será cobrada em caso de atraso no reembolso do empréstimo,
Pledge,Juramento,
Post Haircut Amount,Quantidade de Corte de Cabelo,
Process Type,Tipo de Processo,
Update Time,Tempo de Atualização,
Proposed Pledge,Promessa Proposta,
Total Payment,Pagamento Total,
Balance Loan Amount,Saldo do Empréstimo,
Is Accrued,É acumulado,
Salary Slip Loan,Empréstimo Salarial,
Loan Repayment Entry,Entrada de Reembolso de Empréstimo,
Sanctioned Loan Amount,Montante do Empréstimo Sancionado,
Sanctioned Amount Limit,Limite de Quantidade Sancionada,
Unpledge,Prometer,
Haircut,Corte de Cabelo,
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),Tempo Real (em Horas),
Costing and Billing,Custos e Faturamento,
Total Costing Amount (via Timesheets),Montante Total de Custeio (via Timesheets),
Total Expense Claim (via Expense Claims),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 Timesheets),Valor Billable Total (via Timesheets),
Total Billed Amount (via Sales Invoices),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 Time Sheet),Data de Início Real (via Registro de Tempo),
Actual Time (in hours),Tempo Real (em horas),
Actual End Date (via Time Sheet),Data Final Real (via Registro de Tempo),
Total Costing Amount (via Time Sheet),Custo Total (via Registro de Tempo),
Total Expense Claim (via Expense Claim),Reivindicação Despesa Total (via Despesa Claim),
Total Billing Amount (via Time Sheet),Total Faturado (via Registro de Tempo),
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,
May,Maio,
June,Junho,
July,Julho,
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,
Current Value,Valor Atual,
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,
Bank Remittance,Remessa 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,
Daily Work Summary Replies,Respostas de Resumo do Trabalho Diário,
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 Advance Summary,Resumo de Empregado,
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,
Employees working on a holiday,Colaboradores Trabalhando no Feriado,
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,
Loan Repayment and Closure,Reembolso e Encerramento de Empréstimos,
Loan Security Status,Status da Garantia do Empréstimo,
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,
Monthly Attendance Sheet,Folha de Ponto Mensal,
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,
Salary Register,Registro de Salário,
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,
Unpaid Expense Claim,Reembolso de Despesas a Pagar,
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},
Payment Account is mandatory,A conta de pagamento é obrigatória,
"If checked, the full amount will be deducted from taxable income before calculating income tax without any declaration or proof submission.","Se marcada, o valor total será deduzido do lucro tributável antes do cálculo do imposto de renda, sem qualquer declaração ou apresentação de comprovante.",
Disbursement Details,Detalhes de Desembolso,
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.-,
In Time,Em Tempo,
Out Time,Out Time,
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,
Reference No,Nº de Referência,
Haircut percentage is the percentage difference between market value of the Loan Security and the value ascribed to that Loan Security when used as collateral for that loan.,A porcentagem de haircut é a diferença percentual entre o valor de mercado da Garantia de Empréstimo e o valor atribuído a essa Garantia de Empréstimo quando usado como colateral para aquele empréstimo.,
Loan To Value Ratio expresses the ratio of the loan amount to the value of the security pledged. A loan security shortfall will be triggered if this falls below the specified value for any loan ,A relação entre o valor do empréstimo e a garantia do empréstimo expressa a relação entre o valor do empréstimo e o valor da garantia oferecida. Um déficit de garantia de empréstimo será acionado se cair abaixo do valor especificado para qualquer empréstimo,
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,
Is Recurring,É recorrente,
HRA Exemption,Isenção HRA,
Monthly House Rent,Aluguel Mensal de Casa,
Rented in Metro City,Alugado Em Metro City,
HRA as per Salary Structure,Hra de Acordo Com a Estrutura Salarial,
Annual HRA Exemption,Isenção Anual HRA,
Monthly HRA Exemption,Isenção HRA Mensal,
House Rent Payment Amount,Valor do Pagamento do Aluguel da Casa,
Rented From Date,Alugado a Partir da Data,
Rented To Date,Alugado Até a Data,
Monthly Eligible Amount,Quantia Elegível Mensal,
Total Eligible HRA Exemption,Isenção de HRA elegível total,
Validating Employee Attendance...,Validando a Participação do Funcionário...,
Submitting Salary Slips and creating Journal Entry...,Enviando comprovantes de salário e criando lançamentos contábeis...,
Calculate Payroll Working Days Based On,Calcular os Dias Úteis da Folha de Pagamento Com Base Em,
Consider Unmarked Attendance As,Considerar Presença Não Marcada Como,
Fraction of Daily Salary for Half Day,Fração do Salário Diário Por Meio Dia,
Component Type,Tipo de Componente,
Provident Fund,Fundo de Previdência,
Additional Provident Fund,Fundo de Previdência Adicional,
Provident Fund Loan,Empréstimo de Fundo de Previdência,
Professional Tax,Imposto Profissional,
Is Income Tax Component,É componente de imposto de renda,
Component properties and references ,Propriedades e referências do componente,
Additional Salary ,Salário Adicional,
Unmarked days,Dias não marcados,
Absent Days,Dias Ausentes,
Conditions and Formula variable and example,Condições e variável de fórmula e exemplo,
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,
Income Tax Deductions,Deduções de Imposto de Renda,
Income Tax Component,Componente de Imposto de Renda,
Income Tax Amount,Valor do Imposto de Renda,
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,
Unmarked Days,Dias Não Marcados,
Jan,Jan,
Feb,Fev,
Mar,Mar,
Apr,Abr,
Aug,Ago,
Sep,Set,
Oct,Out,
Nov,Nov,
Dec,Dez,
Summarized View,Visão Resumida,
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,
Professional Tax Deductions,Deduções Fiscais Profissionais,
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,
Provident Fund Deductions,Deduções do Fundo de Previdência,
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,
Recruitment Analytics,Análise de Recrutamento,
Applicant name,Nome do candidato,
Job Offer status,Status da oferta de emprego,
On Date,Na Data,
Requested Items to Order and Receive,Itens Solicitados Para Solicitar e Receber,
Salary Payments Based On Payment Mode,Pagamentos de Salários Com Base no Modo de Pagamento,
Salary Payments via ECS,Pagamentos de Salários Via Ecs,
Account No,Não da Conta,
IFSC,IFSC,
MICR,MICR,
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,
PF Account,Conta PF,
PF Amount,Quantidade PF,
Additional PF,PF adicional,
PF Loan,Empréstimo PF,
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},
Duplicate Entry,Duplicar Lançamento,
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 select Employee first.,Selecione Funcionário primeiro.,
Please set {0} for the Employee or for Department: {1},Defina {0} Para Funcionário Ou Departamento: {1},
To Date should be greater than From Date,Até a data deve ser maior que a data inicial,
Employee Onboarding: {0} is already for Job Applicant: {1},Integração de funcionário: {0} já é para Candidato a uma vaga: {1},
Job Offer: {0} is already for Job Applicant: {1},Oferta de emprego: {0} já é para Candidato a emprego: {1},
Only Shift Request with status 'Approved' and 'Rejected' can be submitted,Somente a solicitação de turno com o status ';Aprovado'; e ';Rejeitado'; pode ser enviada,
Shift Assignment: {0} created for Employee: {1},Atribuição de turno: {0} criado para funcionário: {1},
You can not request for your Default Shift: {0},Você não pode solicitar seu turno padrão: {0},
Only Approvers can Approve this Request.,Somente os aprovadores podem aprovar esta solicitação.,
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,
Loan Security {0} added multiple times,Garantia de Empréstimo {0} adicionada várias vezes,
Loan Securities with different LTV ratio cannot be pledged against one loan,Garantia de Empréstimo com taxa de LTV diferente não podem ser garantidos por um empréstimo,
Qty or Amount is mandatory for loan security!,Qty or Amount é obrigatório para garantia de empréstimo!,
Only submittted unpledge requests can be approved,Somente solicitações de cancelamento de garantia enviadas podem ser aprovadas,
Interest Amount or Principal Amount is mandatory,O valor dos juros ou o valor do principal são obrigatórios,
Disbursed Amount cannot be greater than {0},O valor desembolsado não pode ser maior que {0},
Row {0}: Loan Security {1} added multiple times,Linha {0}: Garantia de empréstimo {1} adicionada várias vezes,
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,
Please set Payroll based on in Payroll settings,Defina a folha de pagamento com base nas configurações da folha de pagamento,
Additional Salary: {0} already exist for Salary Component: {1} for period {2} and {3},Salário adicional: {0} já existe para o componente salarial: {1} para o período {2} e {3},
From Date can not be greater than To Date.,A data inicial não pode ser posterior à data final.,
Payroll date can not be less than employee's joining date.,A data da folha de pagamento não pode ser inferior à data de entrada do funcionário.,
From date can not be less than employee's joining date.,A data inicial não pode ser inferior à data de entrada do funcionário.,
To date can not be greater than employee's relieving date.,Até o momento não pode ser posterior à data de dispensa do funcionário.,
Payroll date can not be greater than employee's relieving date.,A data da folha de pagamento não pode ser posterior à data de dispensa do funcionário.,
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,
Condition and formula,Condição e fórmula,
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 {}.,
