Manuais
PHC GO Como configurar marcações dinâmicas
 
Através da Framework PHC GO é possível configurar eventos que retornem registos de Marcações, que serão mostrados na Agenda.

Este tipo de eventos designam-se por Marcações automáticas e têm a particularidade de não serem registos físicos no ecrã de Marcações, pois irão ser carregados em tempo real sempre que aceder à Agenda, dependendo do período no qual foram configurados para exibição.

Este tipo de eventos irão surgir na Agenda com uma cor distinta, de forma a serem distinguidos das restantes Marcações ou Feriados.

Como desenvolver eventos para mostrar as datas de aniversários dos clientes na Agenda


  1. Aceder ao ecrã de Marcações automáticas em (Menu>Go Studio>Toolbox>Marcações automáticas) e Introduzir uma nova marcação automática.

  2. Atribuir o Nome Aniversários dos Clientes.

  3. O campo Descrição é um campo de registo opcional e meramente informativo para indicar resumidamente o que se pretende mostrar na Agenda no âmbito das marcações automáticas.

  4. No campo Código de geração das marcações será introduzido um código que percorre todos os clientes da tabela (CL) e para aqueles que tenham a Data de Nascimento preenchida, irá ser devolvida uma lista de "MarcacaoVO" com essas datas.

    query.entityName = Cl.getTableName
    dim bdayfilter = new FilterItem()
    bdayfilter.filterItem = Cl.nascimento
    bdayfilter.comparison = Comparison.NotEqual
    bdayfilter.valueItem = ""
    query.filterItems.Add(bdayfilter)


  5. No Campo para identificador único das marcações será preenchido o nome interno do campo identificador para as marcações. Será um campo de tipo "stamp" associado à entidade usada no campo do código de geração das marcações. Neste exemplo será clstamp.

  6. No Campo para o título das marcações será indicado qual o campo da entidade utilizado para exibir o título da marcação automática na Agenda. No exemplo será o nome (campo do CL que guarda o nome do cliente).

  7. No Campo para a descrição das marcações (registo opcional) será indicado o campo da entidade utilizado para a exibição da descrição das marcações automáticas na Agenda. Neste exemplo será o email (campo do CL que guarda o e-mail do cliente).

  8. No Campo para a data das marcações é identificado o campo da entidade utilizado para a data das marcações automáticas na Agenda. Neste exemplo será nascimento (campo do CL que guarda a data de nascimento do cliente).

  9. Por se tratar de eventos que irão devolver os aniversários dos clientes, serão ativados os campos As marcações são de dia inteiro? e Repetem-se todos os anos no mesmo dia?. Ao ativar o primeiro campo, determina-se que as marcações automáticas ocorrem todo o dia e não num intervalo horário dinâmico. A ativação do segundo campo estabelece que as marcações automáticas serão repetidas na Agenda, todos os anos no mesmo dia.

    Notas

    Caso pretendesse criar marcações automáticas para ocorrerem em intervalos horários variáveis, então seria necessário desativar o campo As marcações são de dia inteiro? e preencher o Campo para a hora de início das marcações e Campo para a hora de fim das marcações, com o campo da entidade que será utilizado respetivamente para a Hora de Início e Hora de Fim.


  10. Na secção da Navegação, iremos selecionar a opção Tem navegação para a entidade e preencher Rota de destino para a navegação das marcações com a entidade cl. Neste caso devemos preencher com: /mainform/cl/view
    Na prática irá determinar que ao clicar sobre uma Marcação automática da Agenda, será automaticamente encaminhado para a ficha do cliente respetivo.

    Notas

    Existem várias possibilidades a ter em conta na secção da Navegação:
    - Não efetuar qualquer navegação
    - Tem navegação para a entidade
    - Campo para o destino de navegação das marcações

    A 1ª possibilidade determina que não irá haver nenhuma interação quando na Agenda clicar numa Marcação automática. Basta que nesta secção não seja ativo ou preenchido qualquer campo.

    A 2ª opção determina que iremos navegar automaticamente para a entidade que invocámos no código (opção selecionada no exemplo).

    A 3ª opção quando usada terá de identificar no Campo para o destino de navegação das marcações, qual o campo da tabela que será usado para navegações nas marcações automáticas. Por exemplo, se estivermos a usar uma tabela de utilizador que contenha um campo denominado ´Url´ e que guarde endereços internos ou externos, então neste campo iríamos preencher com url.

    No campo É um destino externo, ao ser ativado irá determinar que a navegação das marcações automáticas, será feita como um endereço externo à aplicação e como tal, na prática quando estiver na Agenda e clicar numa Marcação automática, será aberto um tabulador novo no browser com o endereço externo respetivo do registo da marcação automática.
    Não ativando este campo, irá determinar que a navegação das marcações automáticas, será feita como um endereço interno da aplicação e como tal, na prática quando estiver na Agenda e clicar numa Marcação automática, será encaminhado para uma rota dentro da própria aplicação.
    Por exemplo, se estivermos a usar uma tabela de utilizador que contenha um campo denominado url que guarde endereços internos, do tipo: /entity/cl , então a navegação seria feita para o ecrã dos Clientes (cl).


  11. Gravar o registo e adicionar ao Add-On a configuração de Marcações automáticas, através da ação de registo Adicione ao add-on.

  12. Uma vez a Marcação automática adicionada ao add-on, deve aceder ao add-on a partir do Portfólio de add-ons e nas ações de registo selecionar Instale add-on

  13. Uma vez instalado o Add-On, ao fazer login na aplicação e aceder à Agenda, serão visualizados os aniversários dos clientes (Marcações automáticas) que irão ocorrer todo o dia e repetir-se na Agenda ao longo dos anos, no mesmo dia. Para este tipo de Marcações não é possível arrastá-las para um outro período. Ao serem clicadas irão navegar diretamente para a ficha do cliente respetivo.