1. Mapeando seu primeiro pedido com PlugSales
Para realizar pedidos através do PlugSales, é necessário realizar o mapeamento das operações. Essas operações são realizadas diretamente pelo PlugBot em seu sistema de dados (banco ou arquivos texto), e são elas:
- Inserir o novo pedido;
- Consultar ID do novo pedido;
- Inserir itens ao novo pedido.
Nota: Se você ainda não mapeou os outros recursos do PlugSales, sugerimos que leia os seguintes artigos antes de prosseguir o mapeamento dos Pedidos: - Como mapear usuários? - Como mapear produtos? - Como mapear clientes? - Como mapear formas de pagamento? - Como mapear dados financeiros? - Como mapear comissões?
Para iniciar a configuração dessas operações, você deve acessar a aba de PEDIDO.

SQL para criar novo pedido
Seção intitulada “SQL para criar novo pedido”Essa SQL será executada sempre que um novo pedido for emitido pelo aplicativo PlugSales e o mesmo for enviado para a Nuvem PlugMobile (caso tenha conexão com a internet).
Para que a inserção do novo pedido seja realizada corretamente, o SQL deve receber os parâmetros enviados do aplicativo.
Parâmetros enviados pelo aplicativo:
Seção intitulada “Parâmetros enviados pelo aplicativo:”- USUARIO*(número inteiro)*
- Esse parâmetro retorna o ID do usuário que está emitindo o pedido (vendedor).
- O ID retornado será o mesmo informado na aba de USUÁRIO.
- CLIENTE (número inteiro)
- Esse parâmetro retorna o ID do cliente selecionado no pedido.
- O ID retornado neste parâmetro será o mesmo informado na aba CLIENTE.
- DATA (texto)
- Esse parâmetro retorna a data do pedido no formato AAAA-MM-DD.
- A data retornada neste parâmetro será de acordo com a data selecionada no pedido.
- HORA*(texto)*
- Esse parâmetro retorna a hora do pedido no formato HH:MM.
- A hora retornada neste parâmetro será de acordo com a hora selecionada no pedido.
- OBSERVACAO*(texto)*
- Esse parâmetro retorna as observações que o usuário pode ter feito para o pedido.
- PRAZO_PEDIDO (texto)
- Esse parâmetro retorna o prazo do pedido definido pelo vendedor na hora da venda.
- PAGAMENTO (número real)
- Esse parâmetro retorna o ID da forma de pagamento selecionado no pedido.
- O ID retornado neste parâmetro será o mesmo informado na aba FORMA DE PAGAMENTO.
- VALOR_DESCONTO (número real)
- Esse parâmetro retorna o valor de desconto concedido para este pedido.
- TOTAL_PEDIDO (número real)
- Esse parâmetro retorna o valor total do pedido.
- TABELAPRECO *(número inteiro) *(OPCIONAL)
- Caso você utilize tabelas de preço, este parâmetro retorna o ID da tabela de preço selecionada no momento da emissão do pedido.
- TIPO_OPERACAO*(número inteiro)*(OPCIONAL)
- Caso você utilize tipo de operação, este parâmetro retorna o ID da operação selecionada no momento da emissão do pedido.
- CONDICAO_PAGAMENTO*(número inteiro)*(OPCIONAL)
- Caso você utilize condições de pagamento, este parâmetro retorna o ID da condição de pagamento selecionada no momento da emissão do orçamento.
- NOVO_SALDO*(número real)*(OPCIONAL)
- Caso utilize saldo para controle de descontos dos usuários, este parâmetro irá disponibilizar o saldo atualizado do vendedor após realizar um pedido.
- O valor do saldo será o mesmo configurado em SALDO POR USUÁRIO.
Como esses parâmetro são enviados do aplicativo PlugSales para o seu PlugBot, a SQL que você informar para inserir o novo pedido tem acesso a eles.
Você pode utilizá-los para armazenar essas informações no seu banco de dados. Veja abaixo um exemplo de SQL para inserção de um novo pedido:
/* Exemplo em um banco MySQL */ INSERT INTO TbPedidos (id_usuario, id_cliente, data_pedido, hora, observacao, id_forma_pagamento, valor_desconto, valor_total_pedido, id_tabela_preco) values ([USUARIO], [CLIENTE], ‘[DATA]’, ‘[HORA]’, ‘[OBSERVACAO]’, [PAGAMENTO], [VALOR_DESCONTO], [TOTAL_PEDIDO], [TABELAPRECO])Nota: os parâmetros que são do tipo texto devem ser colocados entre “aspas” (ou ‘apóstrofo’, dependendo da sintaxe do seu banco de dados) e caso seja identificado nesses parâmetros os caracteres especiais **’ “ | **,quebras de linha ou emojis, os mesmos serão removidos para evitar conflitos com algum meio de integração.
Tem como adicionar campos personalizados no momento de fazer um pedido?
“SQL para consultar ID_PEDIDO do novo pedido”
Seção intitulada ““SQL para consultar ID_PEDIDO do novo pedido””Após o PlugBot ter inserido o novo pedido no seu banco, é necessário saber o ID desse pedido para que seja possível adicionar os itens utilizando o mesmo valor no ID do pedido.
Para isso, informe o SQL que retorna o ID do último pedido inserido. O retorno desse SQL precisa ser** um registro com uma **coluna: “ID_PEDIDO”.
Em situações em que o ID da tabela de pedidos é um campo numérico com auto increment, o SQL poderia ser:
/* Exemplo em um banco MySQL */ SELECT id AS ID_PEDIDO FROM TbPedidos ORDER BY id DESC LIMIT 1
“SQL para inserir itens ao pedido”
Seção intitulada ““SQL para inserir itens ao pedido””Com o pedido inserido no banco e seu ID em mãos, chegou o momento do PlugBot receber os itens desse pedido e inserí-los no banco.
Para isso, a SQL tem acesso aos seguintes parâmetros que são enviados do aplicativo:
- ID_PEDIDO (número inteiro)
- Esse campo deve informar o ID do pedido que o item pertence.
- PRODUTO (número inteiro)
- Esse campo deve informar o ID do produto que esse item se refere.
- QUANTIDADE (numérico)
- Esse campo deve informar a quantidade pedida desse produto.
- VALOR_UNITARIO (número real)
- Esse campo deve informar o preço unitário do produto do item.
- VALOR_DESCONTO (número real)
- Esse campo deve informar o valor de desconto concedido a esse item.
- VALOR_TOTAL (número real)
- Esse campo deve informar o valor total desse item, que é obtido a partir do valor unitário, valor de desconto e quantidade comprada.
- OBSERVACAO (texto)
- Esse campo deve informar as observações desse produto.
- TABELA_PRECO (número inteiro)(OPCIONAL)
- Caso você utilize tabelas de preço com a possibilidade de escolher produtos de diferentes tabelas, esse campo deve informar o ID da tabela de preço que esse item se refere.
-** ID_OPCAO (número inteiro)(OPCIONAL)**
- Caso utilize opções de produto, esse campo deve informar o ID da opção escolhida sobre o produto que será adicionado, configurado em OPÇÕES PARA PRODUTOS.
-** ID_GRADE (número inteiro ) (OPCIONAL)
- Caso utilize tabelas de grade de produtos, esse campo deve informar o ID da grade escolhida sobre o produto que será adicionado, configurado em GRADE DE PRODUTOS.
A SQL executada para essa função poderia ser a seguinte:
/* Exemplo em um banco MySQL */ INSERT INTO TbItensPedido (id_pedido, id_produto, qtde, vlr_unit, vlr_desc, vlr_total, observacao, tabela_preco) VALUES ([ID_PEDIDO], [PRODUTO], [QUANTIDADE], [VALOR_UNITARIO], [VALOR_DESCONTO], [VALOR_TOTAL], ‘[OBSERVACAO]’, [TABELA_PRECO])**Nota:os parâmetros que são do tipo texto devem ser colocados entre “aspas” (ou ‘apóstrofo’, dependendo da sintaxe do seu banco de dados) e caso seja identificado nesses parâmetros os caracteres especiais ’ “ | \ , quebras de linha ou emojis **, os mesmos serão removidos para evitar conflitos com algum meio de integração.
Após realizar as configurações acima, clique em “Salvar configurações de PEDIDO”.