Comando UC — Relatórios de Usuário Personalizados
Permite criar relatórios customizados concatenando respostas de múltiplos comandos, texto plano e campos calculados. Ideal para integrar dados específicos em formatos sob medida.
🎯 16 relatórios disponíveis (índices 00-0F), cada um totalmente configurável e independente.
Para que serve?
| Caso de uso | Descrição |
|---|---|
| 📊 Telemetria customizada | Combinar dados de GPS, sensores e estados em um só relatório |
| 🔗 Integração com servidores | Formato específico para plataformas de tracking |
| 📝 Relatórios multi-sensor | Concatenar leituras analógicas, digitais e CAN |
| 🏷️ Identificação de cargas | Incluir códigos de cliente/pedido desde buffers XB |
| 📋 Formato JSON/CSV | Estruturar dados para APIs ou processamento |
Comandos
| Operação | Sintaxe | Descrição |
|---|---|---|
| Configurar | SUCnn estrutura | Define estrutura do relatório nn |
| Apagar | SUCnn* | Elimina configuração do relatório nn |
| Consultar | QUCnn | Lê estrutura configurada |
Parâmetros
| Parâmetro | Descrição | Valores |
|---|---|---|
nn | Índice de relatório | 00 a 0F (16 relatórios) |
estrutura | Definição de campos | Campos separados por | |
Resposta
RUCnn campo1|campo2|...|campoNSintaxe de Campos
Caracteres ASCII Especiais
Use códigos hexadecimais para inserir caracteres especiais no relatório.
| Código | Caracter | Descrição |
|---|---|---|
\00 | NULL | Terminador |
\09 | TAB | Tabulação |
\0D | CR | Retorno de carro |
\0A | LF | Quebra de linha |
\20 | SPACE | Espaço |
\2C | , | Vírgula |
\3A | : | Dois pontos |
\3B | ; | Ponto e vírgula |
\5C | \ | Barra invertida |
\7C | | | Pipe |
Avaliação Inline com EVAL
Disponível desde v1.9.18 — Limite de relatório aumentado para 239 bytes.
Permite inserir expressões EVAL diretamente no relatório usando aspas simples. As expressões são avaliadas dinamicamente no momento de enviar.
Sintaxe
'expressão'
'expressão:formato'
'expressão:formato:valor_erro'Tokens Disponíveis
| Token | Descrição |
|---|---|
'CHN' | Nome do canal de comunicação (WIFI, GPRS, etc.) |
'CHC' | Código do canal |
'CSQ' | Qualidade de sinal celular |
'VEL' | Velocidade GPS |
'LAT' | Latitude |
'LON' | Longitude |
'V' | Tensão principal |
'TICK' | Tick do sistema |
Funções
| Função | Descrição |
|---|---|
'IN(x)' | Entrada digital x |
'XP(x)' | Saída digital x |
'AIN(x)' | Entrada analógica x |
'TD(x)' | Timer/Distância x |
'MBS(x,y)' | Sensor BLE (x=índice, y=tipo) |
'MOD(a,b)' | Módulo (resto de a/b) |
Operadores Texto
Para comparações dentro de aspas, use operadores texto:
| Operador | Equivale | Exemplo |
|---|---|---|
gt | > | CSQ gt 15 |
ge | >= | V ge 120 |
lt | < | VEL lt 80 |
le | <= | AIN(0) le 500 |
eq | == | IN(0) eq 1 |
ne | != | XP(0) ne 0 |
Exemplos EVAL Inline
// Relatório com canal, sinal e velocidade formatados
>SUC00 $ID chanel:'CHN' signal:'CSQ:%02d' vel:'VEL:%d';#8002;ID=865413053386354;*61<
>RUC00 $ID chanel:'CHN' signal:'CSQ:%02d' vel:'VEL:%d';#8002;ID=865413053386354;*60<
>QU0;#8003;ID=865413053386354;*37<
>ID chanel:TRM signal:99 vel:0;#8003;ID=865413053386354;*03<
Máximo 20 tokens EVAL por relatório. As expressões são avaliadas no momento de enviar, não ao configurar.
Exemplos
Invocação de Relatórios UC
Consulta manual
>QU0<Consulta o conteúdo do relatório UC00.
Geração automática com eventos
>SRL50E;TRG=IGN+;ACC={GU0}<Gera relatório UC00 quando liga ignição.
Para enviar o relatório ao servidor use GUn (Gerador). QUn só consulta localmente.
Limitações
| Parâmetro | Valor |
|---|---|
| 📦 Relatórios UC disponíveis | 16 (00-0F) |
| 📏 Comprimento máximo texto | 239 bytes |
| 🔢 Campos por relatório | ~20 (segundo comprimento) |
| 🔢 Tokens EVAL inline | 20 máximo |
| 🚫 Comandos aninhados | Não (UC não pode conter UC) |
Compatibilidade
Ver Também
- Reporte Ux - Consulta e geração de relatórios UC
- Comando XB - Buffers de texto
- Comando EVAL - Expressões calculadas
- Motor de Eventos - Geração automática