Gerenciamento de Regras
O Gerenciamento de Regras é uma funcionalidade avançada que permite criar e configurar regras de automação personalizadas para seus painéis, transformando dados estáticos em processos inteligentes e automatizados.

O que são Regras de Automação?
As regras são instruções inteligentes que definem quando, como e o que deve acontecer no seu painel de forma automática. Elas funcionam como assistentes digitais que monitoram seus dados e executam ações específicas quando determinadas condições são atendidas.
Principais Benefícios
- Automação Inteligente: Reduz trabalho manual e aumenta eficiência
- Padronização: Garante que processos sejam executados sempre da mesma forma
- Reatividade: Sistema responde automaticamente a mudanças nos dados
- Escalabilidade: Processa grandes volumes de dados sem intervenção manual
- Confiabilidade: Elimina erros humanos em processos repetitivos
Como Criar uma Regra
01. Clique no botão + Adicionar Regras

02. Em seguida abrirá a tela de criação de uma regra

Configuração Básica da Regra
1Nome da Regra: Defina um nome descritivo e único para identificar facilmente a regra. Este nome também aparecerá como título de botões quando a execução manual estiver habilitada.
2Descrição da Regra: Forneça uma explicação detalhada do que a regra faz, quando é executada e qual o resultado esperado. Esta documentação é essencial para manutenção futura.
3Expressão Cron: Uma expressão cron é um formato padronizado, poderoso e flexível para definir horário e frequência para a execução automática de tarefas em intervalos específicos.
4Evento: Define eventos que disparam a regra como click (clique do usuário) ou change (alteração de dados). Determina o gatilho que iniciará a execução da regra.
5Ativo: Define se a regra está ativa e será executada ou inativa (desabilitada) no sistema. Permite controlar o status operacional da regra.
6Execução Manual: Permite que a regra seja executada manualmente através de um botão no painel, sem depender de eventos automáticos ou dados específicos.
7Condições: Define critérios específicos que devem ser atendidos para que a regra seja executada. Funcionam como filtros inteligentes que determinam quando a automação deve acontecer.
8Ações: As ações são as operações que o sistema executa automaticamente quando as condições da regra são atendidas. Elas representam o 'fazer' da automação - aquilo que acontece depois que os critérios foram verificados.
Expressão Cron
O que é uma Expressão Cron?
Uma expressão Cron é uma string com 6 campos que define exatamente quando uma tarefa deve ser executada. É como criar um "cronômetro inteligente" que dispara a regra em momentos específicos, permitindo automação baseada em tempo.
Formato da Expressão:
segundo minuto hora dia mês dia_da_semana
0 30 14 * * ?
Explicação dos Campos:
| Campo | Valores Aceitos | Descrição |
|---|---|---|
| Segundo | 0-59 | Segundo específico da execução |
| Minuto | 0-59 | Minuto específico da execução |
| Hora | 0-23 | Hora específica da execução |
| Dia | 1-31 | Dia do mês (* para qualquer dia) |
| Mês | 1-12 | Mês específico (* para qualquer mês) |
| Dia da Semana | 1-7 | Dia da semana (? para ignorar) |
Exemplos Práticos:
0 0 9 * * ?- Todos os dias às 9:00 da manhã0 */15 * * * ?- A cada 15 minutos0 0 18 * * 1-5- De segunda a sexta às 18:000 30 8 1 * ?- Todo dia 1º de cada mês às 8:30
Como Usar no PCDoc Arranger:
1. Ative a opção "Se a expressão Cron for atendida"

2. Digite a expressão no campo "Valor da expressão Cron"

3. Neste exemplo a regra será executada a cada 30 segundos.
Ao selecionar o cron, os demais eventos são desabilitados e a regra será executada exclusivamente pelo agendamento cron.
Eventos
O campo Eventos define quando e como uma regra será acionada no sistema. Ele determina o gatilho que fará com que as condições sejam verificadas e as ações sejam executadas.

Tipo: Click
Características:
- A regra é executada quando o usuário clica em um botão específico
- Aparece como botão personalizado no painel para execução manual
- Oferece controle total ao usuário sobre quando executar
Ideal para:
- Ações que precisam de confirmação do usuário
- Processos sob demanda
- Operações que requerem validação manual
- Envio de relatórios específicos
Quando selecionado:

Funcionamento:
- A regra aparece como botão no painel quando uma ou todas as linhas são selecionadas
- Nome do botão é definido pelo "Nome da Regra"
- Usuário tem controle total sobre quando executar
- Pode ser combinado com seleção de linhas específicas
Tipo: Change
Características:
- A regra é executada automaticamente quando dados são alterados
- Monitora mudanças em colunas específicas do painel
- Execução instantânea após modificação dos dados
Ideal para:
- Validações automáticas
- Atualizações em cascata
- Notificações baseadas em mudanças
- Sincronização de dados entre painéis
Exemplos de Uso:
- Quando status muda para "Aprovado", enviar email
- Quando valor > R$ 1000, solicitar aprovação
- Quando data de vencimento se aproxima, gerar alerta
Quando selecionado:

Configuração Avançada:
- Aparece um seletor adicional de colunas
- Você escolhe quais campos específicos monitorar
- A regra só executa quando essas colunas são alteradas
- Permite controle granular sobre gatilhos de automação
Execução Manual
A Execução Manual da Regra é uma funcionalidade que permite aos usuários executar uma regra sob demanda, mesmo quando ela possui eventos automáticos configurados, oferecendo flexibilidade total no controle de processos.
O que é a Execução Manual?
É uma funcionalidade que adiciona um botão no painel permitindo que os usuários disparem a execução da regra quando necessário, oferecendo controle direto sobre quando os processos devem ser executados.
Benefícios da Execução Manual:
- Controle do Usuário: Permite execução sob demanda
- Testes: Facilita testes de regras durante desenvolvimento
- Flexibilidade: Combina automação com controle manual
- Segurança: Usuário pode validar antes de executar
Como Funciona:
1. Marque a opção "Execução manual da regra" ao criar/editar a regra 2. Um botão será adicionado automaticamente no painel de dados 3. O nome do botão será o mesmo Nome da Regra definido 4. Usuários podem clicar no botão para executar a regra imediatamente

Casos de Uso Práticos:
- Processamento de Lote: Executar regra para múltiplos registros selecionados
- Validação Manual: Conferir dados antes de processar automaticamente
- Correções: Executar regras corretivas quando necessário
- Relatórios Sob Demanda: Gerar relatórios específicos quando solicitado
Condições
As condições da regra definem os critérios que devem ser atendidos para que as ações sejam executadas. Elas funcionam como "filtros inteligentes" que determinam quando a automação deve acontecer, garantindo que as ações só sejam executadas nos contextos corretos.
Estrutura das Condições:
Sistema de Árvore Hierárquica

Características:
- Condições organizadas em grupos e subgrupos
- Permite criar lógicas complexas aninhadas
- Interface visual em árvore para fácil navegação
- Suporte a múltiplos níveis de agrupamento
Grupos de Condições
Agrupam múltiplas condições relacionadas, permitindo criar lógicas complexas:
- E (AND): Todas as condições do grupo devem ser verdadeiras
- OU (OR): Pelo menos uma condição do grupo deve ser verdadeira
- Subgrupos: Podem conter outros grupos para lógicas avançadas

Tipos de Condições:

Coluna Específica
Características:
- Compara valores de colunas específicas do painel
- Estrutura: Coluna + Operador + Valor de Comparação
- Permite validações precisas baseadas nos dados
Exemplo de Configuração:

Todos os Itens
Características:
- A condição é aplicada a todos os registros do painel simultaneamente
- Útil para operações em lote
- Processa múltiplos registros de uma vez
Casos de Uso:
- Atualizar status de todos os registros pendentes
- Enviar notificações em massa
- Processar relatórios consolidados
Operadores Disponíveis

Operadores de Comparação:
| Operador | Descrição | Exemplo de Uso |
|---|---|---|
= | Igual a | Status = "Aprovado" |
!= | Diferente de | Valor != 0 |
> | Maior que | Quantidade > 10 |
< | Menor que | Data < "2024-01-01" |
>= | Maior ou igual | Preço >= 100 |
<= | Menor ou igual | Desconto <= 50 |
Operadores de Conteúdo:
| Operador | Descrição | Exemplo de Uso |
|---|---|---|
LIKE | Contém (pesquisa parcial) | Nome LIKE "João" |
IS_NULL | Está vazio/nulo | Email IS_NULL |
Exemplos de Lógicas Complexas:
Exemplo 1: Aprovação Automática
GRUPO E:
- Valor <= 1000
- Status = "Pendente"
- Departamento = "Vendas"
Exemplo 2: Notificação Urgente
GRUPO OU:
- Prioridade = "Alta"
- GRUPO E:
- Valor > 10000
- Cliente LIKE "Premium"
A regra será executada de acordo com as condições definidas. Também é possível criar regras sem condições, que serão executadas sempre que o evento for disparado.
Ações
As ações são as operações específicas que o sistema executa quando as condições da regra são atendidas. Elas representam o resultado prático da automação - o que efetivamente acontece após a validação dos critérios.
Como Funcionam as Ações:
Sistema de Lista Sequencial
- Ações são executadas em ordem definida pelo usuário
- Botões de seta permitem reordenar ações (mover para cima/baixo)
- Execução sequencial: aguarda uma ação terminar antes de iniciar a próxima
- Permite criar fluxos de trabalho complexos e organizados

Benefícios da Execução Sequencial:
- Controle de Fluxo: Garante ordem correta de operações
- Dependências: Ações podem depender do resultado de ações anteriores
- Consistência: Evita conflitos entre operações simultâneas
- Rastreabilidade: Facilita identificação de problemas em sequências complexas
Tipos de Ações Disponíveis:
Enviar Email
Permite envio automático de emails personalizados com conteúdo dinâmico baseado nos dados do painel.


Configurações do Email:
1Permitir Execução Manual: Adiciona um ícone específico no painel que permite a execução manual desta ação individualmente, sem executar a regra completa.
2Assunto: Define o título do email que será enviado. Suporta variáveis dinâmicas para personalização automática do assunto.
3Enviar Para: Especifica os destinatários principais do email. Aceita emails fixos ou variáveis dinâmicas baseadas em colunas do painel.
4Copiar Para (CC): Define destinatários que receberão uma cópia do email. Útil para manter supervisores ou equipes informadas sobre as comunicações.
5Responder Para: Pré-define o endereço de email que receberá as respostas. Útil para direcionar respostas para departamentos específicos.
6Adicionar Coluna: Permite inserir variáveis dinâmicas no conteúdo do email, utilizando valores das colunas do painel para personalização automática.
7Variáveis de Sistema: Adiciona variáveis do sistema como data atual, usuário logado, nome da empresa, etc., para enriquecer o conteúdo do email.
8Editor de Texto: Interface rica para criar o modelo do email com formatação avançada, permitindo HTML, imagens e estilos personalizados.
Variáveis Dinâmicas
Como Funciona:
- Podem ser adicionadas variáveis dinâmicas com valores das colunas selecionadas
- Valores são substituídos automaticamente no momento do envio
- Permite personalização completa do conteúdo

Processo de Adição:
- Clique no botão + para adicionar variável
- Abrirá um seletor de colunas do painel

- Selecione a coluna desejada
- A variável será inserida no formato
{{nome_da_coluna}}
Exemplo Prático:
- Adicione uma coluna com emails dos clientes
- Configure "Enviar Para" com a variável
{{email_cliente}} - O email será enviado automaticamente para cada cliente específico
Casos de Uso Comuns:
- Notificações de Status: Avisar quando pedidos mudam de status
- Lembretes Automáticos: Alertas de vencimento ou prazos
- Relatórios Periódicos: Envio automático de resumos e indicadores
- Confirmações: Confirmar recebimento ou processamento de dados
Executar API
Permite integração automática com sistemas externos através de chamadas de API, expandindo as possibilidades de automação para além do painel atual.

Configurações da API:
1Empresa: Selecione a empresa que possui as integrações configuradas pelo aplicativo Surface. Cada empresa pode ter diferentes APIs disponíveis.
2Selecione a Integração: Lista todas as integrações configuradas e disponíveis para a empresa selecionada. Estas integrações são criadas e gerenciadas pelo Surface.
3Tipo da API: Define o protocolo de comunicação - REST (mais comum e moderno) ou WSDL (Web Services tradicionais). Cada tipo tem configurações específicas.
4Selecionar o Método: Exibe os métodos/endpoints configurados para esta integração no Surface. Cada método representa uma operação específica da API.
5Popular Painel com Resposta: Funcionalidade que permite usar os dados retornados pela API para popular automaticamente outro painel no sistema, criando fluxos integrados.
Componentes da API
Quando selecionado o tipo da API, é exibido o campo "Selecionar Tipo de Componente":

O campo permite configurar seções específicas da requisição API:
URL
- Interface para configurar o endpoint da API
- Campo de entrada para o endereço completo
- Validação de formato de URL
- Suporte a variáveis dinâmicas no endereço
Header
- Interface para configurar cabeçalhos HTTP
- Editor de pares chave-valor para headers
- Headers comuns pré-configurados (Authorization, Content-Type, etc.)
- Possibilidade de adicionar headers customizados
Body-Multipart
- Interface para dados em formato multipart/form-data
- Ideal para upload de arquivos e formulários complexos
- Editor de campos com tipos diferentes (texto, arquivo, etc.)
- Suporte a múltiplos campos em uma requisição
Body-JSON
- Interface para dados em formato JSON
- Editor com syntax highlighting para JSON
- Validação automática de sintaxe JSON
- Suporte completo a variáveis dinâmicas
Resposta
- Interface para configurar tratamento da resposta da API
- Mapeamento de campos da resposta para colunas do painel
- Configuração de ações baseadas no retorno
- Popular painel com dados da resposta
Casos de Uso Comuns:
- Sincronização de Dados: Enviar dados para ERP ou CRM
- Validações Externas: Consultar CPF/CNPJ em serviços externos
- Notificações: Integrar com sistemas de mensageria (WhatsApp, Telegram)
- Processamento: Enviar dados para processamento em sistemas especializados
Executar Fórmula
A ação Executar Fórmula permite aplicar cálculos matemáticos automáticos nos dados do painel, atualizando campos específicos com resultados calculados baseados em expressões definidas pelo usuário.

Configurações da Fórmula:
1Expressão: Campo para inserir a fórmula que será executada. Aceita operações matemáticas, funções e referências a colunas do painel.
2Assistente de Expressão: Ferramenta visual que facilita a criação da fórmula de forma mais intuitiva, oferecendo seletores e validação em tempo real.
Assistente de Expressão

Funcionalidades do Assistente:
- Coluna Destino: Seleciona a coluna onde o resultado da fórmula será armazenado
- Nome da Coluna: Ao selecionar uma coluna, adiciona sua referência na expressão
- Validação em Tempo Real: Verifica a sintaxe da fórmula durante a digitação
- Sugestões Automáticas: Oferece sugestões de funções e operadores disponíveis
Exemplo Prático:

Operações Suportadas:
- Aritméticas Básicas: +, -, *, /
- Funções Matemáticas: SUM, AVG, MAX, MIN
- Funções de Texto: CONCAT, UPPER, LOWER
- Funções de Data: TODAY, DATEDIFF
- Condicionais: IF, CASE, WHEN
Exemplos de Fórmulas:
// Cálculo de desconto
valor * (desconto_percentual / 100)
// Valor total com impostos
valor_base * (1 + taxa_imposto)
// Dias até vencimento
DATEDIFF(data_vencimento, TODAY())
// Status baseado em valor
IF(valor > 1000, "Alto", "Baixo")
Casos de Uso Comuns:
- Cálculos Financeiros: Descontos, juros, totalizações
- Indicadores: KPIs calculados automaticamente
- Classificações: Status baseados em valores
- Consolidações: Resumos e agregações de dados
Popular Painel
A ação Popular Painel permite transferir ou copiar dados automaticamente do painel atual para outro painel do sistema, criando sincronização automática entre diferentes áreas e processos.

Configurações do Relacionamento:
1Tipo de Relacionamento: Define como os dados serão organizados quando transferidos do painel atual para o painel de destino, determinando a estrutura e quantidade de registros que serão criados.
2Selecionar Painel: Seletor que lista todos os painéis disponíveis no sistema para estabelecer o relacionamento e transferência de dados.
Mapeamento de Colunas
Após selecionar os painéis para relacionar, será exibido um campo para selecionar as colunas que serão mapeadas:

Tipos de Relacionamento:
1 para 1 (ONE_TO_ONE) - Chave Única
Características:
- Cria uma única linha no painel destino para cada chave única encontrada
- Consolida registros duplicados em uma só entrada
- Evita duplicatas no painel de destino
Ideal para:
- Consolidação de dados
- Criação de registros únicos
- Sincronização de cadastros principais
Exemplo:
- Painel de Vendas → Painel de Clientes
- Múltiplas vendas do mesmo cliente geram apenas um registro de cliente
1 para N (ONE_TO_MANY) - Múltiplos Registros
Características:
- Cria uma linha no painel destino para cada registro do painel origem
- Permite duplicatas baseadas na chave de relacionamento
- Mantém todos os registros separadamente
Ideal para:
- Histórico completo de transações
- Rastreamento detalhado
- Análises granulares
Exemplo:
- Painel de Pedidos → Painel de Itens
- Cada item do pedido vira um registro separado
Processo de Configuração:
- Selecionar Painel Destino: Escolha o painel que receberá os dados
- Definir Tipo de Relacionamento: 1:1 ou 1:N conforme necessidade
- Mapear Colunas: Defina correspondência entre campos origem e destino
- Configurar Chave: Estabeleça campo(s) que definem relacionamento
- Testar Configuração: Valide o mapeamento antes de ativar
Casos de Uso Práticos:
- Fluxo de Aprovação: Mover dados aprovados para painel operacional
- Backup de Dados: Criar cópias de segurança automaticamente
- Distribuição por Área: Enviar dados para painéis específicos de departamentos
- Consolidação: Reunir dados de múltiplas fontes em painel central
⚙️ Configurar Valor
A ação Configurar Valor permite definir valores específicos em campos do painel automaticamente quando as condições da regra são atendidas, sendo fundamental para padronização e automação de preenchimentos.
Como Funciona:
01. Selecione a coluna que deseja modificar:

02. Configure o valor conforme o tipo da coluna:
- Colunas do tipo "Opções": Selecione a opção desejada na lista
- Outras colunas: Digite o valor que deseja definir
