CAN 1005278 não encontrada.
QuandoAbrir uma CAN que não existe ou é de outra filial (a leitura filtra a filial da sessão). A mesma frase sai em alterar, cancelar e autorizar id inexistente.
Não grava. statuscode 400 com a frase abaixo, que a tela mostra como está.
Pergunta antes de seguir. Nesta tela quem pergunta é a própria tela.
Passa, mas com um comportamento que surpreende quem está conferindo — ou é conferido só na tela.
almoxarifado_can.status: PENDENTE, APROVADO (só pela autorização do gerente) e CANCELADO. A digitalização não mexe no status.
A grade lista as CANs da filial da sessão pela data da reunião. No formulário,
o bloco de solicitações oferece as Solicitações de Orçamento da filial com autorizado = 1, vivas
e não presas a outra CAN viva (as já ligadas a esta CAN entram sempre), no período escolhido, no
máximo 500. Nenhuma das listas filtra por setor.
CAN 1005278 não encontrada.
QuandoAbrir uma CAN que não existe ou é de outra filial (a leitura filtra a filial da sessão). A mesma frase sai em alterar, cancelar e autorizar id inexistente.
A CAN 1005278 é da filial 5 - entre nessa filial para alterá-la.
QuandoAlterar, cancelar, autorizar ou desautorizar (gerente e almoxarifado) uma CAN de outra filial pelo id. A mesma regra da leitura, conferida no servidor antes de qualquer outra trava de status.
Marque ao menos uma solicitação.
QuandoConferido só na tela: "Trazer itens" sem solicitação marcada.
(sem mensagem) — os itens trazidos SUBSTITUEM a grade de decisão
Quando"Trazer itens" lê os produtos e serviços das solicitações marcadas e troca a grade inteira. O valor estimado de cada item é o último custo do produto na data da reunião (sem data, hoje); estoque na filial, nas demais filiais e consumo de 30/90 dias são só informativos.
Numa transação: o cabeçalho (data da reunião, observação), o vínculo com as
solicitações (almoxarifado_can_solicitacoes) e os itens (almoxarifado_can_itens).
Os itens são atualizados no lugar e conservam o id, porque o Orçamento (246) guarda vínculo com ele
(almoxarifado_orcamento_can_itens). No fim os três totais do cabeçalho são recalculados:
estimado (todos os itens), aprovado e reprovado (estimado − aprovado, só nos itens com decisão).
Status das solicitações (almoxarifado_solicitacao_orcamento.status): ao entrar na CAN
vai a 2 (Em Análise CAN); ao sair dela volta a 1 (Autorizado).
Informe a data da reunião.
QuandoSem data da reunião. A tela confere antes com "Informe a data.".
Decisão de compra inválida: X
QuandoDecisão fora de APROVADO, REPROVADO e APROVADO_PARCIAL (só por chamada direta; a tela é um combo). Item sem decisão passa e não é conferido.
Tipo de comprador inválido: X
QuandoNum item com decisão, comprador fora de CORPORATIVO e LOCAL (vazio passa).
CAN 1005278 já foi autorizada ou cancelada e não pode ser alterada.
QuandoAlterar com o status diferente de PENDENTE. A tela abre em leitura com "CAN já autorizada ou cancelada — somente leitura. Desautorize na grade para poder alterar."
(sem mensagem) — só a autorização do almoxarifado não trava a CAN
QuandoA autorização do almoxarifado não mexe no status, e a trava olha o status: com só ela dada a CAN continua PENDENTE, editável na tela e no servidor.
(sem mensagem) — desmarcar uma solicitação apaga o vínculo do Orçamento
QuandoOs itens da solicitação que saiu são marcados excluídos, e antes o vínculo deles em almoxarifado_orcamento_can_itens é apagado — a cotação do 246 perde a origem desses itens.
(sem mensagem) — aprovar item com estoque em outra filial não exige observação
QuandoO ceif torna a observação obrigatória nesse caso (ehItemValido); aqui o painel de estoque é só informativo.
São duas e assimétricas, como no ceif. A do gerente grava
idgerente_aut e status = 'APROVADO' e avança as solicitações ligadas a 3
(Finalizado CAN); desautorizar volta a PENDENTE e as solicitações a 2. A do almoxarifado grava
só idalmoxarifado_aut e a data — é registro de responsabilidade, não trava. Os botões alternam
(Autorizar/Desautorizar) sem pergunta.
Usuário não tem permissão para esta ação (regra ALMOXARIFADO_CAN_AUTORIZACAO_GERENTE).
QuandoAutorizar ou desautorizar o gerente sem a regra. Para o almoxarifado a regra na frase é ALMOXARIFADO_CAN_AUTORIZACAO_ALMOXARIFADO. A tela deixa o botão desabilitado (dica: "Você não tem a regra de acesso para esta ação.").
A CAN 1005278 está cancelada.
QuandoAutorizar ou desautorizar (qualquer das duas) uma CAN cancelada. Na grade os botões ficam desabilitados.
(sem mensagem) — desautorizar o gerente não confere o Orçamento
QuandoA CAN volta a PENDENTE mesmo com itens já cotados no 246; não há trava de "já usada em orçamento".
Grava status = 'CANCELADO', o motivo em observacao_cancelada e a data;
desliga o vínculo com todas as solicitações e devolve o status delas a 1 (Autorizado). Não se desfaz.
Cancelar — Motivo do cancelamento
QuandoPergunta da tela: na grade abre uma caixa pedindo o motivo; cancelar a caixa não faz nada.
Informe o motivo do cancelamento.
QuandoMotivo em branco (tela e servidor).
Usuário não tem permissão para esta ação (regra ALMOXARIFADO_CAN_CANCELAMENTO).
QuandoCancelar sem a regra.
A CAN 1005278 já está cancelada.
QuandoCancelar de novo.
(sem mensagem) — CAN aprovada pode ser cancelada
QuandoO cancelamento só recusa a já cancelada: vale para CAN aprovada, com as solicitações voltando a Autorizado.
Cinco relatórios do ceif: a CAN (PDF paisagem, uma tabela por setor e as três assinaturas; vale para qualquer status), os demonstrativos de compras Local e Corporativo (o mesmo PDF só com os itens aprovados daquele comprador; os totais do cabeçalho continuam os da CAN inteira), a Impressão Resumo (XLS, uma linha por CAN do período da grade) e a Impressão Detalhada (XLS dos itens das CANs marcadas — Ctrl/Shift + clique —, com o "RESUMO POR CAN"). Sem regra de acesso própria. Mais o "Imprimir" genérico da grade (PDF/XLS do que ela mostra).
A CAN 1005278 não tem solicitações de orçamento ligadas para imprimir.
QuandoImprimir a CAN (ou um demonstrativo) sem solicitação ligada ou sem item.
Não é possível gerar o demonstrativo de compras de uma reunião não aprovada.
QuandoDemonstrativo Local ou Corporativo de CAN com status diferente de APROVADO.
Não é possível gerar o demonstrativo de compras de uma reunião sem compradores locais.
QuandoNenhum item com aquele tipo de comprador (no Corporativo a frase termina em "corporativos").
Não é possível gerar o demonstrativo de compras de uma reunião sem itens aprovados de compradores locais.
QuandoO comprador existe, mas nenhum item dele está Aprovado ou Aprovado parcial.
Tipo de comprador inválido: use LOCAL ou CORPORATIVO.
QuandoParâmetro comprador fora dos dois (só por chamada direta).
Nenhuma CAN encontrada no período.
QuandoImpressão Resumo sem CAN no período da grade.
Selecione ao menos uma CAN.
QuandoImpressão Detalhada sem CAN marcada (a tela desabilita o botão).
A impressão detalhada aceita até 50 CANs por vez (foram escolhidas 63).
QuandoMais de 50 CANs distintas marcadas.
Nenhum dado encontrado: as CANs escolhidas não têm itens com decisão.
QuandoNenhum item gravado com decisão nas CANs marcadas — só entram itens com decisão, como no ceif.
Anexos em scaneados_can do banco <base>_digital, chave = id da
CAN, tabela can, tipo 1 — o mesmo desenho do ceif, então os anexos gravados lá
aparecem aqui.
(sem mensagem) — anexar não muda o status da CAN
QuandoO ceif troca o status para DOCUMENTO_DIGITALIZADO/PENDENTE a cada anexo; aqui não — o status é o que o 246 lê para saber quais CANs estão aprovadas. Não há trava de regra nem de status para anexar.
| Regra nomeada | O que libera |
|---|---|
ALMOXARIFADO_CAN_AUTORIZACAO_GERENTE | autorizar/desautorizar como gerente (é o que aprova a CAN) |
ALMOXARIFADO_CAN_AUTORIZACAO_ALMOXARIFADO | autorizar/desautorizar como responsável do almoxarifado |
ALMOXARIFADO_CAN_CANCELAMENTO | cancelar |
O master passa nas três. Nem o legado (não tem a tela) nem o ceif fazem essa trava —
é decisão do projeto. Incluir, alterar, imprimir e digitalizar não têm regra própria além do acesso à opção.
GET /lancamento/almoxarifado-can/permissoes alimenta a grade e o formulário, e o servidor confere
de novo em cada ação.
Recusa de regra: HTTP 200 com statuscode 400 e a frase — no formulário, no rodapé; nas ações
da grade, na faixa de erro acima dela. A recusa por regra de acesso também chega como statuscode
400. Não há pergunta do servidor (409) nesta tela. Erro inesperado traz o código de
ocorrência de 8 caracteres — copie-o no chamado.
| O quê | Valor |
|---|---|
| decisões aceitas | APROVADO, REPROVADO, APROVADO_PARCIAL |
| tipos de comprador | LOCAL, CORPORATIVO |
| solicitações oferecidas por vez | 500 |
| CANs na Impressão Detalhada | 50 |
| status da solicitação (24A) | 1 Autorizado, 2 Em Análise CAN, 3 Finalizado CAN (os números do ceif) |
| Ponto | Situação |
|---|---|
| desautorizar o gerente | volta a PENDENTE; o ceif grava DOCUMENTO_DIGITALIZADO (engano de cópia) |
| digitalização | não mexe no status (o ceif mexe) |
| regras de acesso nas três ações | decisão do projeto; o ceif não trava |
| demonstrativo Local/Corporativo | filtra os itens do comprador; no ceif os dois saem iguais, com todos os itens |
| impressos | sem "R$" fixo, estimado zero sai como traço, setores em ordem alfabética; a Impressão Resumo filtra pela data da reunião (o ceif pela de inclusão); quantidades sem truncar |
| pendente: observação obrigatória ao aprovar item com estoque em outra filial | não portada — trava de gravação nova, a decidir |
| filial da CAN nas ações | alterar, cancelar e autorizar conferem que a CAN é da filial da sessão (corrigido em 24/09/2026) |
Nenhuma regra bate com essa busca. Tente um trecho menor da mensagem, ou limpe os filtros.