Compras
consultar_comprasRequisições, cotações, coletas de preço e pedidos de compra. Somente consulta: não aprova, não cria nem altera pedido. Cadeia: ORDEM DE MANUTENÇÃO > REQUISIÇÃO (a demanda) > COTAÇÃO (agrupa itens para pesquisar preço) > COLETA DE PREÇO (a resposta de um fornecedor para um item) > PEDIDO (a compra fechada). Um item pode ir da requisição direto ao pedido, sem cotação. Atraso: nunca compare datas. SITUACAO_ENTREGA do pedido já vem pronta ("Recebido", "Atrasado", "Pendente") e DIAS_ATRASO já vem calculado. "Pedidos atrasados": situacao_entrega ["Atrasado"]; "o que falta chegar": ["Atrasado", "Pendente"]. Aprovação é outra coisa e não entra na conta de atraso. Departamento: é o campo "Departamento" das telas de pedido e de requisição. "Pedidos do departamento X": visão pedidos, filtro departamento. Nos pedidos a coluna é DEPARTAMENTO; nas requisições o mesmo dado sai na coluna GRUPO_MANUTENCAO. Quantidades: QUANTIDADE_PENDENTE (requisição) e QUANTIDADE_RESTANTE (pedido) já vêm prontas — nunca subtraia colunas. QUANTIDADE_NOTA_FISCAL é a mesma coisa que a recebida: não some as duas. Item de requisição do tipo "Saída de estoque" não gera compra, sai direto do estoque. Não conte esses itens quando a pergunta for sobre compra, cotação ou pedido. Nome de fornecedor ou produto: filtre por trecho; se vierem nomes diferentes, pergunte qual e siga pelo identificador (id_fornecedor, id_pedido, id_cotacao, id_requisicao). Volume: para a fazenda inteira use "agrupar_por" em vez de listar requisição ou pedido um a um. "Quantas coletas teve o pedido" se responde com QTDE_COLETAS_PRECO da visão pedidos.
Visões disponíveis (parâmetro "visao"):
pedidos: Uma linha por pedido de compra: fornecedor, departamento, valores, aprovação, recebimento e atraso já resolvidos. Período pela data do pedido. Filtros: situacao_entrega (lista de valores exatos), status (lista de valores exatos), status_aprovacao (lista de valores exatos), departamento, fornecedor, id_fornecedor (valor exato), setor, centro_custo, safra, codigo_pedido, id_pedido (valor exato), codigo_cotacao, id_cotacao (valor exato), aceita período. Agrupa por: departamento, fornecedor, situacao_entrega, status, setor, centro_custo, safra.
itens_pedido: Uma linha por item de pedido: quantidade pedida, recebida e restante, valor e se a compra foi feita pelo menor preço coletado (COMPROU_MENOR_PRECO). Não aceita período — filtre pelo pedido. Filtros: id_pedido (valor exato), codigo_pedido, status (lista de valores exatos), fornecedor, produto, id_cotacao (valor exato), comprou_menor_preco. Agrupa por: fornecedor, produto, status.
requisicoes: Uma linha por item de requisição: quem pediu, para qual ordem de manutenção e equipamento, e o que ainda falta atender (QUANTIDADE_PENDENTE). "O que a ordem X ainda espera": id_ordem_manutencao e pendente true. Período pela data da requisição. Filtros: status (lista de valores exatos), situacao_item (lista de valores exatos), tipo_item (lista de valores exatos), prioridade (valor exato), pendente, departamento, produto, equipamento, solicitante, centro_custo, codigo_requisicao, id_requisicao (valor exato), id_ordem_manutencao (valor exato), aceita período. Agrupa por: departamento, status, situacao_item, tipo_item, equipamento, produto, solicitante, centro_custo.
cotacoes: Uma linha por item de cotação, com o resumo das coletas: quantas houve, quantas foram respondidas, menor, maior e médio preço e o fornecedor mais barato. Período pela data da cotação. Filtros: status (lista de valores exatos), produto, codigo_cotacao, id_cotacao (valor exato), aceita período.
coletas: Uma linha por coleta de preço (item da cotação x fornecedor): preço, desconto, prazo, se respondeu, em quantos dias e se foi a escolhida. Cresce rápido: para ver os preços de uma cotação, filtre id_cotacao; para comparar fornecedores, use agrupar_por fornecedor. Período pela data de envio ao fornecedor. Filtros: status (lista de valores exatos), fornecedor, id_fornecedor (valor exato), produto, codigo_cotacao, id_cotacao (valor exato), respondida, escolhida, aceita período. Agrupa por: fornecedor, produto, status.
trilha: Rastreabilidade de UM documento: cada caminho do item, da ordem de manutenção e da requisição até a cotação e o pedido, com o valor rateado. Exige id_pedido, id_cotacao, id_requisicao ou id_ordem_manutencao: sem o documento, liste antes pedidos, cotações ou requisições e pergunte qual. Filtros: id_pedido (valor exato), id_cotacao (valor exato), id_requisicao (valor exato), id_ordem_manutencao (valor exato).
Quando "visao" não é informada, usa "pedidos". Filtro de texto casa por trecho, sem diferenciar maiúsculas nem acento ("aplicacao" acha "Aplicação") — exceto os marcados "(valor exato)", que exigem o valor inteiro, como código, placa e número. A resposta traz "total_disponivel": quantas linhas o filtro encontra ao todo. Chame uma vez só, já com o limite que a resposta vai usar — nunca repita a consulta mudando só o limite; se só o número interessa e o total pode ser grande, um limite baixo basta. Para totais e contagens use "agrupar_por"; a listagem é limitada e serve para ver itens. Com "agrupar_por", a resposta vem somada pelo banco: uma linha por grupo, com QTDE_LINHAS, as somas e os maiores e menores valores (MAIOR_*, MENOR_*). Use isso em vez de somar linhas por conta própria.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pular | No | Linhas a pular, para ler um resultado grande em partes. Use com limite quando total_disponivel for maior que o que veio. | |
| safra | No | Nome da safra, ex.: "2025/2026". Use listar_safras para ver as disponíveis. Vale nas visões: pedidos. | |
| setor | No | Nome do setor. Vale nas visões: pedidos. | |
| visao | No | Qual recorte consultar. Padrão: pedidos. | |
| limite | No | Máximo de linhas devolvidas. Padrão 100, teto 500. | |
| status | No | Um ou mais valores exatos do status do documento da visão. Pedido: "Em digitação", "Aberto", "Aguardando aprovação", "Aprovado", "Rejeitado", "Finalizado", "Cancelado". Requisição: "Aberto", "Finalizado". Cotação: "Aberto", "Em processamento", "Finalizado". Coleta: "Aguardando preenchimento", "Preenchido pelo comprador", "Preenchido pelo fornecedor aguardando envio", "Enviado pelo fornecedor". Vale nas visões: pedidos, itens_pedido, requisicoes, cotacoes, coletas. | |
| fazenda | No | Nome da fazenda. Omita para usar a fazenda corrente do usuário — é o padrão, e é o que o usuário espera quando não cita nenhuma. Informe apenas quando ele nomear outra fazenda. Cada consulta trata de uma fazenda por vez. | |
| produto | No | Nome do produto. Vale nas visões: itens_pedido, requisicoes, cotacoes, coletas. | |
| pendente | No | true: só itens com quantidade ainda por atender. false: só os já atendidos. Vale nas visões: requisicoes. | |
| escolhida | No | true: a coleta escolhida para a compra. Vale nas visões: coletas. | |
| id_pedido | No | Identificador do pedido, tirado de uma consulta anterior. Vale nas visões: pedidos, itens_pedido, trilha. | |
| tipo_item | No | Um ou mais valores exatos: "Solicitar para comprar", "Solicitar para comprar p/ Estoque", "Saída de estoque". Para falar de compra, deixe "Saída de estoque" de fora. Vale nas visões: requisicoes. | |
| data_final | No | Fim do período, inclusive, em dd/mm/aaaa ou aaaa-mm-dd. | |
| fornecedor | No | Nome do fornecedor (casa por trecho). Vale nas visões: pedidos, itens_pedido, coletas. | |
| id_cotacao | No | Identificador da cotação, tirado de uma consulta anterior. Vale nas visões: pedidos, itens_pedido, cotacoes, coletas, trilha. | |
| prioridade | No | "Baixa", "Média" ou "Alta". Vale nas visões: requisicoes. | |
| respondida | No | true: o fornecedor respondeu. false: ainda não respondeu. Vale nas visões: coletas. | |
| agrupar_por | No | Dimensões para somar no banco, em vez de listar linha a linha. Cada visão aceita só as dimensões listadas nela. | |
| equipamento | No | Equipamento da ordem de manutenção. Vale nas visões: requisicoes. | |
| solicitante | No | Quem fez a requisição. Vale nas visões: requisicoes. | |
| centro_custo | No | Centro de custo. Vale nas visões: pedidos, requisicoes. | |
| data_inicial | No | Início do período, em dd/mm/aaaa ou aaaa-mm-dd. | |
| departamento | No | Departamento responsável pela compra (casa por trecho). Vale nas visões: pedidos, requisicoes. | |
| codigo_pedido | No | Número do pedido. Casa por trecho, porque o código vem com zeros à esquerda ("0006483"). Vale nas visões: pedidos, itens_pedido. | |
| id_fornecedor | No | Identificador do fornecedor, tirado de uma consulta anterior. Vale nas visões: pedidos, coletas. | |
| id_requisicao | No | Identificador da requisição, tirado de uma consulta anterior. Vale nas visões: requisicoes, trilha. | |
| situacao_item | No | Um ou mais valores exatos: "Aguardando cotação", "Em cotação", "Pedido emitido", "Atendido", "Baixa de estoque". Vale nas visões: requisicoes. | |
| codigo_cotacao | No | Número da cotação (casa por trecho). Vale nas visões: pedidos, cotacoes, coletas. | |
| situacao_entrega | No | Um ou mais valores exatos: "Recebido", "Atrasado", "Pendente". Vale nas visões: pedidos. | |
| status_aprovacao | No | Um ou mais valores exatos: "Aguardando aprovação", "Aprovado", "Rejeitado". Vale nas visões: pedidos. | |
| codigo_requisicao | No | Número da requisição (casa por trecho). Vale nas visões: requisicoes. | |
| comprou_menor_preco | No | true: comprou pelo menor preço coletado. false: comprou mais caro. Vale nas visões: itens_pedido. | |
| id_ordem_manutencao | No | Identificador da ordem de manutenção que originou a requisição, tirado de uma consulta anterior. Vale nas visões: requisicoes, trilha. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| total | Yes | Linhas devolvidas nesta resposta. | |
| visao | Yes | ||
| avisos | No | O que o servidor aplicou sem ser pedido, como um período padrão. | |
| linhas | Yes | ||
| fazenda | Yes | ||
| truncado | Yes | true quando há mais linhas além das devolvidas. | |
| total_disponivel | Yes | Quantas linhas o filtro encontra ao todo, qualquer que seja o limite pedido. | |
| filtros_ignorados | Yes | Filtros que não existem na visão escolhida e por isso não foram aplicados. |