Aparência
Farmácia
Para que serve
A Farmácia controla o stock de produtos e medicamentos da clínica:
- que produtos existem e quantos há de cada;
- em que lotes estão, e quando cada lote expira;
- as entradas (compras, reposições);
- as saídas (dispensas, perdas, quebras);
- avisos automáticos quando o stock fica abaixo do mínimo.
O sistema usa a regra FEFO — do inglês First Expired, First Out, ou seja, sai primeiro o lote que expira mais cedo. Não é preciso escolher o lote: o sistema escolhe sozinho.
Quando usar
- Quando chega mercadoria do fornecedor.
- Quando se dispensa medicação a um paciente.
- Quando há uma perda ou uma quebra.
- No início do dia, para ver o que está em falta ou a expirar.
- Antes de fazer uma encomenda.
Quem pode usar
| Ação | Permissão | Perfis que têm |
|---|---|---|
| Ver a página e o stock | view-stock-levels | admin, superadmin, receção |
| Criar e alterar produtos | manage-inventory | admin, superadmin |
| Registar entradas e saídas | manage-inventory | admin, superadmin |
Quem tem apenas view-stock-levels vê a página, mas não vê os botões Novo produto, Entrada e Saída.
Os perfis médico, enfermeiro e laboratório não têm acesso a esta página.
Ecrãs e funcionalidades
Endereço: /farmacia Menu: grupo Farmácia → Farmácia
[CAPTURA: página da farmácia, com os quatro cartões de resumo em cima, a tabela de produtos ao centro e os movimentos recentes em baixo]
Cabeçalho
- Título: Farmácia — controlo de stock
- Subtítulo: «Produtos, lotes, entradas e saídas (FEFO).»
- Botão Novo produto, no canto superior direito
Os quatro cartões de resumo
| Cartão | O que conta |
|---|---|
| Produtos | Quantos produtos estão registados |
| Stock baixo | Produtos cujo stock está no mínimo ou abaixo |
| A expirar (30d) | Lotes que expiram nos próximos 30 dias |
| Expirados | Lotes cuja validade já passou |
Tabela de produtos
Colunas: Produto, Stock, Mín., Validade + próxima e Ações.
Junto ao nome do produto podem aparecer etiquetas:
| Etiqueta | Cor | Significado |
|---|---|---|
| baixo | amarelo | O stock está no mínimo definido, ou abaixo |
| N expirado(s) | vermelho | Há N lotes fora de validade |
| N a expirar | laranja | Há N lotes a expirar nos próximos 30 dias |
Se não houver produtos: «Sem produtos. Adicione o primeiro.»
Movimentos recentes
Bloco no fim da página, com o título Movimentos recentes. Só aparece se houver movimentos.
Cada movimento tem uma etiqueta:
| Etiqueta | Significado |
|---|---|
| Entrada | Deu entrada em stock |
| Saída | Saiu do stock |
| Acerto | Correção de inventário |
As quantidades aparecem com sinal: +10 para entradas, -3 para saídas.
Cada botão, o que faz
| Botão | O que faz | Quando aparece |
|---|---|---|
| Novo produto | Abre a janela Novo produto | Só com manage-inventory |
| Entrada (na linha de um produto) | Abre a janela Entrada — {nome do produto} | Só com manage-inventory |
| Saída (na linha de um produto) | Abre a janela Saída — {nome do produto} | Só com manage-inventory. Fica desativado se o stock for zero |
| Cancelar (nas janelas) | Fecha sem gravar | — |
| Adicionar | Grava o produto novo | — |
| Registar entrada | Grava a entrada em stock | — |
| Registar saída | Grava a saída de stock | — |
Cada campo do formulário
Janela Novo produto
| Campo | Obrigatório | Regras |
|---|---|---|
| Nome * | Sim | Texto, até 255 caracteres |
| Categoria | Não | Escolhida do cadastro de categorias. A opção vazia diz — escolher — |
| Unidade | Não | Escolhida do cadastro de unidades de medida. A opção vazia diz — escolher — |
| Fabricante | Não | Escolhido do cadastro de fabricantes. A opção vazia diz — opcional — |
| Marca | Não | Escolhida do cadastro de marcas. A opção vazia diz — opcional — |
| Fornecedor principal | Não | Escolhido do cadastro de fornecedores. Mostra ainda o NIF e o Telefone |
| Código | Não | Texto, até 100 caracteres |
| Stock mínimo (alerta) | Não | Número inteiro, zero ou mais |
As listas de Categoria, Unidade, Fabricante, Marca e Fornecedor vêm dos Cadastros base. Se a opção que procura não existir, pode criá-la sem sair deste formulário.
Janela Entrada
| Campo | Obrigatório | Regras |
|---|---|---|
| Quantidade * | Sim | Número inteiro, 1 ou mais |
| Lote | Não | Texto, até 100 caracteres |
| Validade | Não | Data |
| Custo unitário | Não | Número, zero ou mais |
Cada entrada cria um lote novo. Preencha sempre o Lote e a Validade: sem eles, o sistema não consegue avisá-lo de produtos a expirar, nem aplicar corretamente a regra FEFO.
Janela Saída
Antes dos campos aparece a frase:
«Disponível: {stock} {unidade}. Consome primeiro os lotes com validade mais próxima.»
| Campo | Obrigatório | Regras |
|---|---|---|
| Quantidade * | Sim | Número inteiro, 1 ou mais, e não mais do que o stock disponível |
| Motivo | Não | Texto, até 255 caracteres. O exemplo sugerido é «dispensa, perda, quebra…» |
Baixa automática por prescrição
Quando o médico grava uma prescrição, o sistema tenta dar baixa desses medicamentos no stock da farmácia, automaticamente.
Como funciona:
- O sistema procura um produto ativo com exatamente o mesmo nome do medicamento prescrito. A comparação ignora maiúsculas, minúsculas e espaços a mais.
- Se encontrar o produto e houver stock suficiente, dá baixa pela regra FEFO. O movimento fica registado com o motivo Dispensa por prescrição.
- Se não encontrar o produto, ou se não houver stock suficiente, não faz nada e não mostra qualquer aviso.
Este comportamento é intencional: uma receita de um medicamento que a clínica não vende (uma «receita externa») não deve bloquear o médico. O importante é que a prescrição nunca falha por causa do stock.
Consequência prática: para que a baixa automática funcione, o produto na farmácia tem de estar registado com rigorosamente o mesmo nome que o médico escreve na receita. Combine com a equipa clínica uma lista de nomes.
Exemplo prático
Situação: chega uma encomenda de paracetamol. A clínica ainda não tem esse produto registado.
Parte 1 — Criar o produto
- Ir a Farmácia → Farmácia.
- Clicar em Novo produto.
- Preencher:
- Nome *:
Paracetamol 500mg - Categoria:
Analgésicos - Unidade:
Comprimido - Fabricante:
Generis - Fornecedor principal:
Farmadis Angola - Código:
PAR500 - Stock mínimo (alerta):
50
- Nome *:
- Clicar em Adicionar.
- Aparece a mensagem «Produto adicionado.»
Parte 2 — Dar entrada da encomenda
- Na linha do
Paracetamol 500mg, clicar em Entrada. - Preencher:
- Quantidade *:
200 - Lote:
LT-2026-A45 - Validade:
31/12/2027 - Custo unitário:
85
- Quantidade *:
- Clicar em Registar entrada.
- Aparece «Entrada registada.» e o stock passa a
200.
Parte 3 — Segunda entrada, com lote mais antigo
- Duas semanas depois chega outra encomenda, com validade mais curta.
- Entrada:
100unidades, loteLT-2026-B12, validade30/06/2027. - O stock passa a
300.
Parte 4 — Dispensa
- Um paciente leva 20 comprimidos.
- Na linha do produto, clicar em Saída.
- Preencher Quantidade *:
20, Motivo:dispensa ao balcão. - Clicar em Registar saída.
- Aparece «Saída registada.»
- O sistema tira do lote
LT-2026-B12, porque é o que expira mais cedo — mesmo tendo entrado depois.
Parte 5 — Aviso de stock baixo
- Ao longo do mês o stock desce até
48. - Como o mínimo é
50, ao registar a saída que baixa dos 50 o sistema envia uma notificação a quem tem gestão de inventário:- Título: Stock baixo
- Texto: «Paracetamol 500mg: 48 Comprimido (mínimo 50).»
- Na tabela, o produto passa a mostrar a etiqueta amarela baixo.
Fluxo completo
Registar um produto novo
- Farmácia → Farmácia.
- Novo produto.
- Preencher o Nome * e, se possível, categoria, unidade, fabricante e fornecedor.
- Definir o Stock mínimo (alerta).
- Adicionar.
Dar entrada de mercadoria
- Localizar o produto na tabela.
- Entrada.
- Preencher Quantidade *, Lote, Validade e Custo unitário.
- Registar entrada.
- Repetir para cada lote diferente da encomenda.
Registar uma saída
- Localizar o produto na tabela.
- Saída.
- Preencher Quantidade * e Motivo.
- Registar saída.
Rotina de controlo
- Ao início do dia, ler os cartões Stock baixo, A expirar (30d) e Expirados.
- Retirar do stock, com uma Saída com motivo
expirado, os lotes fora de validade. - Encomendar o que está em Stock baixo.
Erros comuns e como resolver
| Mensagem ou situação | Porquê | O que fazer |
|---|---|---|
| Não vejo os botões Novo produto, Entrada e Saída | Falta-lhe a permissão manage-inventory | Fale com o administrador da clínica |
| «Stock insuficiente (disponível: N).» | Está a tentar tirar mais do que existe | Corrija a quantidade. Se o stock real não bate certo, faça primeiro uma Entrada de acerto |
| O botão Saída está cinzento | O produto tem stock zero | Registe primeiro uma Entrada |
| O cartão A expirar (30d) está sempre a zero | As entradas foram registadas sem Validade | Preencha sempre a validade nas entradas |
| Prescrevi um medicamento e o stock não desceu | O nome do produto na farmácia não corresponde ao nome escrito na receita, ou não havia stock suficiente | Confirme que o nome do produto é exatamente igual ao usado nas receitas |
| A etiqueta baixo não aparece nunca | O campo Stock mínimo (alerta) está a zero | Edite o produto e defina um mínimo maior que zero |
| Registei uma saída no lote errado | O lote é escolhido automaticamente pela regra FEFO | Não é possível escolher o lote. Se precisar de corrigir, registe uma entrada de acerto |
| Não recebo notificações de stock baixo | As notificações vão para quem tem manage-inventory | Confirme com o administrador quem tem essa permissão |
| Não encontro a categoria ou a unidade que quero | Ainda não existe nos cadastros base | Pode criá-la sem sair do formulário. Ver Cadastros base |
Dicas e boas práticas
- Preencha sempre o Lote e a Validade nas entradas. É a única forma de o sistema o avisar de produtos a expirar e de a regra FEFO funcionar como deve.
- Registe uma entrada por lote. Juntar duas encomendas com validades diferentes numa só entrada estraga o controlo de validades.
- Defina o Stock mínimo (alerta) com base no consumo de duas semanas, mais o tempo de entrega do fornecedor.
- Use o campo Motivo das saídas com rigor e sempre com as mesmas palavras:
dispensa,perda,quebra,expirado. Assim consegue perceber, mais tarde, para onde foi o stock. - Combine com os médicos a lista de nomes de medicamentos. Se o produto na farmácia se chamar
Paracetamol 500mge o médico escreverParacetamol 500 mg, a baixa automática não funciona. - Verifique os cartões de resumo todos os dias. É mais barato do que descobrir a falta quando o paciente já está ao balcão.
- Retire do stock os lotes expirados com uma Saída com motivo
expirado. Deixá-los no sistema falseia o stock disponível.
Por confirmar
- Não foi possível confirmar se existe um ecrã para editar um produto já criado. O sistema aceita a alteração, mas não foi encontrado o botão.
- Não foi possível confirmar se existe forma de ver o histórico completo de movimentos, além do bloco Movimentos recentes.
- Não foi possível confirmar se existe um relatório de inventário ou de consumos por período.
- O tipo de movimento Acerto aparece na lista de movimentos, mas não foi encontrado nenhum botão que o produza. O sistema prevê ainda os tipos Perda e Devolução, também sem botão correspondente.
- Não foi possível confirmar se um produto pode ser desativado, nem como.
- Não foi possível confirmar se a baixa automática por prescrição regista o paciente a quem o medicamento foi dispensado.