Gestão de pedidos

Índice

Regras de notificações de pedidos

PEDIDOS.CAD_REGRAS_NOTIFICACOES_PEDIDOS

Descrição

Manutenção de regras de notificações de pedidos por e-mail.

As regras de notificação permitem determinar o envio de mensagens por e-mail quando um pedido for alterado. O uso mais comum é configurar o envio de e-mails para pessoas que possuem alguma relação com o pedido no momento de sua emissão (alterando a sua situação para "Pendente/Proposta") ou em situações de cancelamento do pedido.

Atenção
As configurações de envio do serviço de e-mail são configuradas na interface Configuração de e-mail e as contas de e-mail informadas na parâmetro from= devem pertencer ao domínio configurado na conta de e-mail que efetua a autenticação ao serviço de e-mail.
P.ex.: Os e-mails dos domínios eligo.com.br, telescope.com.br e prd.inf.br pertencem todos ao mesmo gerenciador de domínios o que permite informar uma conta com qualquer um destes domínios como, p.ex.: contato@prd.inf.br, financeiro@eligo.com.br, suporte@eligo.com.br sem que ocorra erro no processo de envio das mensagens.

Campos:

Nome dado para identificar a regra.
Tipo de transação que está sendo executado. Permite definir que a notificação seja gerada apenas na inclusão, alteração e/ou exclusão de uma atividade.
  • Alteração
  • Inclusão
  • Exclusão
Relação dos tipos de pedidos para o qual o filtro deve ser aplicado. Caso não informado, o filtro é válido para pedidos de qualquer tipo.
Quando informado, indica que a notificação somente será realizada no caso de algum dos campos selecionados ser alterado.
Quando informado indica que somente pedidos que estiverem em uma das situação indicadas serão notificadas.
Note que se for desejado enviar um e-mail quando um pedido entrar em execução (mas não notificar alterações durante a execução), basta configurar para enviar quando o atributo "Situação" for alterado para "Em execução".

Ver: Situação
Relação de estabelecimentos para os quais se deseja que esta notificação seja gerada. Caso não informado, a notificação será gerada para todos os estabelecimentos.
Permite definir um SQL como condição para a regra ser executada. Caso o SQL não retorne registros, a regra não será disparada. Porém, se o SQL retornar ao menos um registro, a regra será válida para executar a notificação.

Para mais informações consult a FAQ Como criar um SQL condicional em uma regra de notificações de pedidos?
Título para ser usado na notificação. O título pode ser composto por macros relacionadas com o pedido.

Os macros disponíveis são:

tipo de pedido = ${tipo_pedido}
cliente = ${cliente}
nome completo do cliente = ${cliente_nome_completo}
frete total = ${total_frete}
pedido = ${pedido}
estabelecimento = ${estabelecimento}
pessoa de contato = ${pessoa_contato}
vendedor = ${vendedor}
data de entrega = ${data_entrega}
data de emissão = ${data_emissao}
data de cancelamento = ${data_cancelamento}
valor total = ${valor_total}
data programada = ${data_programada}
agente = ${agente}
transportadora = ${transportadora}
endereço = ${endereco}
endereço do cliente = ${endereco_cliente}
email do cliente = ${email_cliente}
email do vendedor = ${email_vendedor}
email do fornecedor = ${email_fornecedor}
email do representante = ${email_representante}
email do estabelecimento = ${email_estabelecimento}
email do vendedor do cliente = ${email_vendedor_cliente}
email do representante do cliente = ${email_representante_cliente}
email de contato = ${email_contato}

Pode ser utilizar a macro de substituição da entidade Pedidos, utilizando a tag "ped". Por exemplo:
${ped.findCliente().getEndereco("EMAIL_NFE")}
Texto a ser utilizado para a mensagem a ser enviada.
Este texto pode utilizar os campos macros referindo-se a atributos do pedido.

Os macros disponíveis são:
Tipo de pedido = ${tipo_pedido}
Cliente = ${cliente}
Nome completo do cliente = ${cliente_nome_completo}
Frete total = ${total_frete}
Pedido = ${pedido}
Estabelecimento = ${estabelecimento}
Pessoa de contato = ${pessoa_contato}
Vendedor = ${vendedor}
Data de entrega = ${data_entrega}
Data de emissão = ${data_emissao}
Data de cancelamento = ${data_cancelamento}
Valor total = ${valor_total}
Data programada = ${data_programada}
Agente = ${agente}
Transportadora = ${transportadora}
Endereço = ${endereco}
Endereço do cliente = ${endereco_cliente}
Usuário logado na sessão = ${login_usuario}

Pode ser utilizar a macro de substituição da entidade Pedidos, utilizando a tag "ped". Por exemplo:
${ped.findCliente().getEndereco("EMAIL_NFE")}
Relação de destinos que devem receber a notificação.
Cada linha corresponde a um destino.
Os seguintes destinos são aceitos:
cliente - envia email para o cliente do pedido
vendedor cliente - envia um email para o vendedor cadastrado para o cliente do pedido
representante cliente - envia um email para o representante cadastrado para o cliente do pedido
fornecedor - envia email para o fornecedor do pedido
vendedor - envia email para o vendedor do pedido
estabelecimento - envia email para o estabelecimento do pedido
representante - envia um email para o representante do pedido
email_contato - envia um email para o email de contato informado no pedido. Caso não tenha, será enviado para o email do cliente

Para alterar o "de" e "responder para" do mensagem, deve-se ao colocar na frente "mailto:" email de destino e um a sintaxe "?from=" seguido do email remetente. O mesmo vale para "responder para", porém deve-se colocar a sintaxe "?reply-to=" seguido do email para resposta. Caso inserido "de" e/ou "responder para", deve-se colocar o assunto na frente com a sintaxe "?subject=" seguindo do assunto.

Exemplo: mailto:cliente?from=suporte@prd.inf.br&reply-to=prd@prd.inf.br&subject=assunto

Macros aceitos para os destinos:

email do cliente = ${email_cliente}
email do vendedor = ${email_vendedor}
email do fornecedor = ${email_fornecedor}
email do representante = ${email_representante}
email do estabelecimento = ${email_estabelecimento}
email do vendedor do cliente = ${email_vendedor_cliente}
email do representante do cliente = ${email_representante_cliente}
email de contato = ${email_contato}

Para mais informações, consulte a FAQ Como informar dados para envio de e-mails?.

Pode ser utilizar a macro de substituição da entidade Pedidos, utilizando a tag "ped". Por exemplo:
${ped.findCliente().getEndereco("EMAIL_NFE")}
Por padrão, as notificações são enviadas de forma assíncrona, ou seja, a alteração do registro é realizada de forma independente do envio da notificação. Quando o envio é síncrono, o processamento aguarda o envio da notificação e caso ela não seja possível de ser feita, o processamento é interrompido (e o pedido não é alterado).
Indica se deve ser apresentada uma mensagem informando que a notificação foi gerada e enviada aos destinatários. Não significa que a mensagem foi entregue aos destinatários.
Lista de consultas (SQL) que permitem mapear parâmetros adicionais que podem ser utilizados no layout da mensagem.
Esses consultas devem ser baseadas no ${id} do pedido.

Exemplo: Incluir a possibilidade de utilizar o parâmetro ${DATA_EMISSAO} na mensagem:
SELECT DATA_EMISSAO AS DATA_EMISSAO_PEDIDO FROM PEDIDOS WHERE ATIVIDADE_ID = ${id};
SELECT ... ;
Indica se esta regra que esta ou não ativa. Regras inativas não geram notificações.
Indica se os títulos (boletos) na situação "Aberto" irão ser anexos no e-mail de notificação.
Indica os modelos de leiaute de relatórios PDF que podem ser utilizados para impressão do processo.

Padrão de preenchimento:
caminho do arquivo=nome do relatório
Onde:
  • caminho do arquivo: Diretório ou pasta com o arquivo jasper utilizado para impressão do relatório.
  • nome do relatório: Nome do leiaute ou relatório para seleção pelo usuário e que represente a saída PDF escolhida.

Operações

Topo

Pesquisar

Ao pesquisar, o usuário poderá informar critérios de filtro para listar apenas os registros desejados. Normalmente depois de informar os filtros desejados, o usuário deverá executar a operação [b:Listar].
Obtenha maiores detalhes em Como utilizar a tela de pesquisa?.
Topo

Pesquisa simples (SEARCH)

Campos utilizados para pesquisa genérica
Topo

Listar

Apresenta uma lista com os registros que atendem aos filtros informados.
A lista possui diversos recursos práticos e importantes para o usuário:
AlteraçãoNãoNão
InclusãoSimSim
ExclusãoNãoNão
AlteraçãoSimSim
Comportamento:Topo

Consultar

A consulta de um registro é realizada quando o usuário clica no primeiro link de um dos registros resultantes a operação [b:Listar]. A tela apresenta as informações detalhadas do registro, bem como as ações que o usuário pode disparar a partir dele (alterar, excluir, cancelar, etc.).
Comportamento:Topo

Novo

Permite criar novos registros no sistema. Ao ser executado, o sistema apresenta um formulário com todos os campos do registro que deverão ser preenchidos. Quando todos os campos desejados estiverem preenchidos, clique em [b:Salvar].
Comportamento:Topo

Alterar

A partir da tela de consulta de um registro, esta operação permite alterar os dados do mesmo.
O sistema abre um formulário com os campos editáveis. Após alterar os campos, o usuário deverá clicar em [b:Salvar].
Comportamento:Topo

Excluir

Exclui o registro selecionado. A exclusão do registro pode ser disparada a partir da tela de consulta e/ou de manutenção do mesmo.
O registro somente será excluído se todas as condições necessárias forem encontradas, gerando um erro, caso alguma destas condições não estiver sendo atendida.
Topo

Alterar

A partir da tela de consulta de um registro, esta operação permite alterar os dados do mesmo.
O sistema abre um formulário com os campos editáveis. Após alterar os campos, o usuário deverá clicar em [b:Salvar].
Topo

Alterar todos

A operação "Alterar todos" permite alterar um ou mais campos de vários registros para um valor fixo através de uma única operação. Esta função deve ser usada da seguinte forma:

Regras

Popular campos

Popula a relação de tipos de pedidos, atributos alterados e situações para ser usado na interface.
Eventos que disparam esta regra:
  • Antes de apresentar cada registro formulário "Alterar"
  • Antes de apresentar cada registro formulário "Consultar"
  • Antes de apresentar cada registro formulário "Novo"
  • Antes de apresentar uma tela formulário "Listar"