Ferramentas do usuário

Ferramentas do site


enduser:erp:developer:integracao:integracaowebservice:orcamento:exclusaoitens

PUT - Exclusão de Itens do Orçamento

Este método exclui um ou mais itens de um orçamento de venda já cadastrado, com o mesmo comportamento da exclusão de item na Manutenção de Pedidos de Vendas (PRX125915) em modo orçamento. O item é removido de vez do orçamento (não vira quantidade cancelada), e o orçamento tem desconto geral, impostos e valor total recalculados na mesma gravação.

api/OrcamentoVenda/{numero}/itens/exclusao

Exemplo URL

<IP do Serviço>:<Porta liberada para o serviço>/api/OrcamentoVenda/123456/itens/exclusao?CodigoEstabelecimento=1

Parâmetros URL

  • {numero} (*) - Número do orçamento cujos itens serão excluídos.
  • CodigoEstabelecimento - (Opcional) Estabelecimento ao qual pertence o orçamento. Quando não informado, é usado o estabelecimento da conexão do serviço.

Parâmetros do Header

authToken adquirido no Login.

Exemplo de Body

{
  "itens": [
    {
      "codigoProduto": 1001,
      "sequencia": 1
    },
    {
      "codigoProduto": 1002,
      "sequencia": 2
    }
  ]
}

Explicação dos campos do Body

Campos com (*) são obrigatórios:

  • itens (*) → Lista → Itens que serão excluídos. Precisa ter ao menos um item, sem repetir o mesmo produto com a mesma sequência.
    • codigoProduto (*) → Long → Código do produto do item.
    • sequencia (*) → Inteiro → Sequência do item no orçamento. Junto com o produto, identifica o item, inclusive quando o mesmo produto aparece em mais de uma linha.

Como funciona a exclusão

► Conferência do orçamento

Antes de excluir, o método confere que o orçamento:

  • existe e ainda está na situação de orçamento;
  • não é um Orçamento de Itens Sob Projeto (esses são mantidos pelo PRX123915);
  • ainda não gerou pedido de venda nem virou pedido;
  • está em uma etapa que permite a rotina de Manutenção de Orçamentos e Pedidos, quando a empresa usa controle de etapas;
  • não está aberto no ERP por outro usuário.

► Localização dos itens

Cada item é procurado no orçamento pelo produto e sequência. O item que não é encontrado é ignorado, e o retorno avisa que ele não foi excluído; os demais seguem. Se nenhum dos itens enviados for encontrado, nada é gravado.

► Conferência de cada item excluído

Não pode ser excluído o item que:

  • possui SMA ativa ou encerrada;
  • possui atividades de fluxo que não estão canceladas.

► Gravação

Se qualquer item encontrado for recusado, nenhum item é excluído. Com todos aceitos, o ERP:

  • remove os itens do orçamento, com a política de desconto e os tributos de cada um;
  • recalcula o desconto geral do orçamento: com o parâmetro DEFINE-PCT-BASE-VALOR-DESCONTO ativo, mantém o valor do desconto e recalcula o percentual; desativado, mantém o percentual e recalcula o valor;
  • recalcula IPI, ICMS-ST e os tributos da reforma (CBS, IBS e IS) dos itens que ficam, e o valor total do orçamento, com a mesma fórmula da tela;
  • recalcula as parcelas pela condição de pagamento somente com os parâmetros PV-UTIL-COND-PERS e PRX125915-SEMPRE-GRAVA-PEDVP ativos, preservando as parcelas de antecipação; sem eles, as parcelas existentes não mudam;
  • renumera as sequências dos itens que ficam de 1 em diante;
  • registra a exclusão no histórico do orçamento.

A situação, a aprovação e a revisão do orçamento continuam as mesmas.

Como as sequências são renumeradas, excluir o item do meio muda a sequência dos itens seguintes. Antes de uma nova alteração ou exclusão, consulte o orçamento em GET - Consulta Orçamento de Venda para obter as sequências atuais.

Exemplos de Retorno

Sucesso

O retorno traz em dados uma mensagem por item enviado, dizendo se ele foi excluído ou se não foi encontrado:

{
  "bemSucedido": true,
  "mensagemFalha": null,
  "novoCodigo": null,
  "dados": [
    { "descricao": "Produto 1001 da sequência 1 excluído.", ... },
    { "descricao": "Produto 1002 da sequência 7 não foi encontrado no orçamento e não foi excluído.", ... }
  ]
}

Falha no formato da requisição

Lista de itens vazia, produto ou sequência não informados, ou item repetido recusam a requisição (HTTP 400) antes de qualquer consulta ao orçamento. O motivo de cada campo vem em dados:

{
  "bemSucedido": false,
  "mensagemFalha": "Algumas validações para a exclusão de itens no orçamento não foram bem-sucedidas. Consulte os detalhes para mais informações.",
  "novoCodigo": null,
  "dados": [ ... ]
}

Falha na conferência do orçamento ou dos itens

A recusa também volta com HTTP 400 e bemSucedido igual a false, com uma mensagem por problema em dados. As mais comuns:

Mensagem O que fazer
Exclusão não realizada: nenhum dos itens enviados foi encontrado no orçamento com o produto e a sequência informados. Consulte o orçamento e envie as sequências atuais.
Sequência {n} (produto {código}): o item não pode ser excluído porque possui SMA ativa ou encerrada. Trate a SMA do item antes de excluí-lo.
Sequência {n} (produto {código}): o item não pode ser excluído porque possui atividades de fluxo que não estão canceladas. Cancele as atividades de fluxo do item antes de excluí-lo.
Orçamento não encontrado. Confira o número e o estabelecimento informados.
O registro {numero} não é um orçamento. O número é de um pedido de venda; a rota vale só para orçamento.
Este orçamento já gerou o pedido {pedido}. Não poderá ser alterado! Faça a mudança no pedido gerado.
Orçamento {numero} encontra-se na etapa '…', que não permite alterações na rotina de … Mude a etapa do orçamento ou libere a rotina na etapa.
Orçamento em uso por outro usuário: {usuário}. Peça ao usuário para fechar o orçamento no ERP e envie de novo.
Estabelecimento não encontrado. Confira o CodigoEstabelecimento da URL.
enduser/erp/developer/integracao/integracaowebservice/orcamento/exclusaoitens.txt · Última modificação: por 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki