Mudanças entre as edições de "Configuração das Agendas"

(Conceito)
 
(Uma revisão intermediária pelo mesmo usuário não está sendo mostrada)
Linha 82: Linha 82:
 
|'''Expressão Leitura'''
 
|'''Expressão Leitura'''
 
|Condição que, sendo verdadeira, trava o compromisso: ele não aceita ser arrastado nem redimensionado na agenda. Em branco, nada é travado.
 
|Condição que, sendo verdadeira, trava o compromisso: ele não aceita ser arrastado nem redimensionado na agenda. Em branco, nada é travado.
|-
 
|'''Margem Direita'''
 
|Espaço reservado à direita do card no aplicativo, útil quando o card precisa conviver com um ícone.
 
|-
 
|'''Máximo de Linhas'''
 
|Quantidade máxima de linhas do texto complementar no card do aplicativo.
 
 
|-
 
|-
 
|'''Padrão'''
 
|'''Padrão'''
Linha 120: Linha 114:
  
 
Campo do formulário deixado em branco pelo usuário não gera filtro, o que permite um formulário com vários campos sem obrigar o preenchimento de todos. Recurso, Agenda e situação das anotações são filtros próprios da tela e não precisam ser configurados aqui.
 
Campo do formulário deixado em branco pelo usuário não gera filtro, o que permite um formulário com vários campos sem obrigar o preenchimento de todos. Recurso, Agenda e situação das anotações são filtros próprios da tela e não precisam ser configurados aqui.
 +
 +
==='''Exportar e Importar'''===
 +
 +
A tela permite levar a configuração de uma Agenda de um ambiente para outro: exportar gera um arquivo com tudo o que a Agenda precisa para funcionar, e importar grava esse arquivo no ambiente atual. É o caminho para publicar em produção uma Agenda montada em homologação, ou para repetir num cliente uma configuração já pronta na base modelo.
 +
 +
O arquivo leva só a configuração. Nenhum compromisso é exportado, e nenhum é criado na importação.
 +
 +
O '''Nome''' é a chave. Existindo uma Agenda com o mesmo nome no destino, ela é atualizada; não existindo, uma nova é criada. Importar o mesmo arquivo duas vezes, portanto, não duplica a Agenda.
 +
 +
Tudo o que aponta para outro cadastro viaja pelo '''nome''', nunca pelo código interno, porque os códigos de um ambiente não significam nada no outro. Na importação cada nome é resolvido contra os cadastros do destino:
 +
 +
{| class="wikitable"
 +
!O que viaja por nome
 +
!O que precisa existir no destino
 +
|-
 +
|Cadastro de origem
 +
|O cadastro, apontando para a mesma tabela
 +
|-
 +
|Campo Data, Campo Hora Início, Campo Hora Fim e Campo Recurso
 +
|As colunas, na tabela do cadastro de origem
 +
|-
 +
|Formulário de filtro e o campo dele, em cada filtro
 +
|O formulário e o campo, com os mesmos nomes
 +
|-
 +
|Campo comparado, em cada filtro
 +
|A coluna, na tabela do cadastro de origem
 +
|}
 +
 +
As expressões — Título, Expressão, Condição SQL, Expressão Cor, Expressão Persistir e Expressão Leitura — vão como texto, sem tradução nenhuma. São SQL sobre a tabela do cadastro de origem, que é a mesma nos dois ambientes.
 +
 +
A marca '''Padrão''' acompanha a Agenda. Importando uma que esteja marcada, as demais do destino são desmarcadas, do mesmo modo que aconteceria marcando pela tela.
 +
 +
Os '''filtros''' são regravados por inteiro: a importação descarta a lista que a Agenda tiver no destino e grava a que veio no arquivo. Filtro cujo formulário, campo do formulário ou coluna não existam no destino fica de fora, e o restante da Agenda é gravado normalmente — por isso vale conferir a lista de filtros depois de importar para um ambiente que ainda não tenha o formulário correspondente.
  
 
==='''Conclusão'''===
 
==='''Conclusão'''===

Edição atual tal como às 17h37min de 13 de setembro de 2026

Conceito

Este é o cadastro das diferentes informações que serão unificadas na exibição da Agenda. Cada registro representa uma origem de compromissos, e a tela da Agenda apresenta todas as origens juntas, no mesmo calendário, como se fossem uma coisa só.

Cada registro aponta para um cadastro do sistema e ensina a Agenda a lê-lo como compromisso: qual campo guarda a data, quais guardam a hora de início e de fim, e qual guarda o recurso responsável. É o que permite informações de naturezas diferentes, lançadas em telas diferentes, dividirem a mesma visão de calendário.

Os compromissos de todas as origens aparecem juntos, cada um com a sua cor, e o usuário decide pelo filtro quais deseja enxergar.

O que é

É o cadastro que define uma origem de compromissos para a Agenda. Um registro aqui não guarda compromisso nenhum: ele descreve onde os compromissos estão e como devem ser exibidos.

Por isso, incluir uma Agenda nova é trabalho de configuração, não de programação. Cadastros que hoje não aparecem na Agenda podem passar a aparecer desde que tenham data, hora e recurso.

Para que serve

Serve para dar ao usuário uma visão única da ocupação dos recursos, sem que ele precise abrir cada cadastro para descobrir o que está agendado. A partir dessa visão ele consegue:

  • enxergar a ocupação de um recurso por dia, semana ou mês, e comparar recursos lado a lado;
  • localizar espaço livre antes de assumir um novo compromisso;
  • abrir o registro de origem direto pelo compromisso, sem procurar na tela do cadastro;
  • incluir um compromisso novo clicando no espaço vazio da agenda.

Quais os benefícios e/ou ganhos de uso

O ganho principal é o compromisso deixar de existir só dentro do cadastro em que foi lançado e passar a disputar espaço na agenda do recurso junto com todos os demais. Quem marca passa a ver o que já está marcado, e a sobrecarga de um recurso fica visível antes de virar atraso.

O segundo ganho é a regra de persistência. Um compromisso cuja situação ainda não foi resolvida continua aparecendo na data de hoje mesmo depois de a data original passar, em vez de ficar para trás no calendário. Ele só sai da frente do usuário quando a situação muda para uma que não persiste, o que transforma a agenda também em lista do que está pendente.

O terceiro é a configuração ser por cadastro. Cada empresa decide o que vira compromisso, com que texto, com que cor e sob que condição, sem depender de versão nova do sistema.

Exemplos

Uma empresa de serviços usa duas Agendas. A primeira lê os apontamentos de ordem de serviço, para o técnico enxergar os atendimentos do dia. A segunda lê as anotações da agenda, usadas para lembretes e retornos a clientes.

Nessa mesma empresa, o apontamento que já virou item de ordem de serviço aparece numa cor própria e não aceita ser arrastado, porque o trabalho já foi registrado. A anotação com situação de pendência continua aparecendo hoje até alguém trocá-la por uma situação concluída.

Uma terceira Agenda pode ser criada para visitas comerciais, apontando para o cadastro de visitas, sem nenhuma alteração de programa.

Cadastro

Campo Finalidade
Nome Identificação da Agenda. É por ele que a Agenda é reconhecida ao exportar e importar a configuração entre ambientes.
Legenda Texto apresentado ao usuário, inclusive na lista de Agendas do filtro.
Cadastro Cadastro de origem dos compromissos. Define a tabela que a Agenda lê e também qual tela é aberta quando o usuário clica em um compromisso.
Campo Data Coluna que guarda a data do compromisso. É por ela que a Agenda decide se o registro cai dentro do período exibido.
Campo Hora Início Coluna com a hora de início. Define onde o card começa na grade de horas.
Campo Hora Fim Coluna com a hora de término. Define a altura do card na grade de horas.
Campo Recurso Coluna que liga o compromisso ao recurso responsável. É ela que distribui os compromissos entre as colunas de recurso e que faz valer a permissão de enxergar a agenda de outro recurso.
Título Expressão que monta o texto principal do card.
Expressão Expressão que monta o texto complementar, exibido como segunda linha do card quando há espaço.
Condição SQL Condição adicional aplicada à busca dos compromissos desta Agenda. Serve para restringir o que aparece, por exemplo ignorando registros cancelados.
Expressão Cor Expressão que devolve a cor do card. Em branco, o card assume a cor do recurso.
Expressão Persistir Condição que, sendo verdadeira, mantém o compromisso visível na data de hoje depois de a data original passar. Em branco, o compromisso aparece apenas na data dele.
Expressão Leitura Condição que, sendo verdadeira, trava o compromisso: ele não aceita ser arrastado nem redimensionado na agenda. Em branco, nada é travado.
Padrão Marca a Agenda usada quando o usuário pede um compromisso novo sem partir de um compromisso existente. Somente uma Agenda fica marcada: ao marcar uma, as demais são desmarcadas.

Sobre as expressões

As três expressões são escritas em SQL e valem sobre o registro do compromisso, que na consulta recebe o apelido A. Uma coluna do próprio cadastro é referenciada como A.NOMEDACOLUNA.

Quando a expressão precisa de informação de outra tabela, ela é escrita como subconsulta, e não como junção. Assim a expressão se basta e a Agenda não exige nenhuma configuração adicional de relacionamento.

Funções de data e outras que mudam de nome conforme o banco de dados são escritas com os marcadores do sistema, como @DATA, que são substituídos no momento da consulta. Isso permite que a mesma expressão funcione em qualquer banco homologado.

Filtros

Cada Agenda aceita uma lista de filtros, que ligam um campo do formulário de filtro da Agenda a uma coluna do cadastro de origem, com o operador desejado. É assim que um campo novo no formulário passa a filtrar os compromissos, sem alteração de programa.

Campo Finalidade
Formulário Campo Campo do formulário de filtro que fornece o valor informado pelo usuário.
Operação Forma de comparação entre o valor informado e a coluna: igual, diferente, maior ou igual, menor ou igual, contém ou em.
Campo Coluna do cadastro de origem que será comparada.

Campo do formulário deixado em branco pelo usuário não gera filtro, o que permite um formulário com vários campos sem obrigar o preenchimento de todos. Recurso, Agenda e situação das anotações são filtros próprios da tela e não precisam ser configurados aqui.

Exportar e Importar

A tela permite levar a configuração de uma Agenda de um ambiente para outro: exportar gera um arquivo com tudo o que a Agenda precisa para funcionar, e importar grava esse arquivo no ambiente atual. É o caminho para publicar em produção uma Agenda montada em homologação, ou para repetir num cliente uma configuração já pronta na base modelo.

O arquivo leva só a configuração. Nenhum compromisso é exportado, e nenhum é criado na importação.

O Nome é a chave. Existindo uma Agenda com o mesmo nome no destino, ela é atualizada; não existindo, uma nova é criada. Importar o mesmo arquivo duas vezes, portanto, não duplica a Agenda.

Tudo o que aponta para outro cadastro viaja pelo nome, nunca pelo código interno, porque os códigos de um ambiente não significam nada no outro. Na importação cada nome é resolvido contra os cadastros do destino:

O que viaja por nome O que precisa existir no destino
Cadastro de origem O cadastro, apontando para a mesma tabela
Campo Data, Campo Hora Início, Campo Hora Fim e Campo Recurso As colunas, na tabela do cadastro de origem
Formulário de filtro e o campo dele, em cada filtro O formulário e o campo, com os mesmos nomes
Campo comparado, em cada filtro A coluna, na tabela do cadastro de origem

As expressões — Título, Expressão, Condição SQL, Expressão Cor, Expressão Persistir e Expressão Leitura — vão como texto, sem tradução nenhuma. São SQL sobre a tabela do cadastro de origem, que é a mesma nos dois ambientes.

A marca Padrão acompanha a Agenda. Importando uma que esteja marcada, as demais do destino são desmarcadas, do mesmo modo que aconteceria marcando pela tela.

Os filtros são regravados por inteiro: a importação descarta a lista que a Agenda tiver no destino e grava a que veio no arquivo. Filtro cujo formulário, campo do formulário ou coluna não existam no destino fica de fora, e o restante da Agenda é gravado normalmente — por isso vale conferir a lista de filtros depois de importar para um ambiente que ainda não tenha o formulário correspondente.

Conclusão

Uma Agenda bem configurada resume-se a responder três perguntas: de onde vêm os compromissos, como eles se apresentam e sob que condição continuam exigindo atenção. As duas primeiras são atendidas pelos campos de cadastro e de texto; a terceira, pelas expressões.

Vale rever a configuração sempre que o cadastro de origem ganhar um campo relevante, como uma situação nova, já que a cor e a persistência são consequência do que estiver escrito nas expressões.