Mudanças entre as edições de "Configuração das Agendas"
| Linha 1: | Linha 1: | ||
| + | ==='''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'''=== | ||
| + | |||
| + | {| class="wikitable" | ||
| + | !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. | ||
| + | |||
| + | {| class="wikitable" | ||
| + | !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'''=== | ==='''Exportar e Importar'''=== | ||
| Linha 31: | Linha 147: | ||
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. | 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. | ||
Edição atual tal como às 17h37min de 13 de setembro de 2026
Índice
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.