Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Associação de tarefas

Podemos fazer a configuração das tabelas que irão corresponder a cada nivel/camada da “arvore de atividades” na associação de tarefas, para utilizar basta configurar o parâmetro na tabela nfs_core_par_parametros e criar o link através da tabela nfs_core_ds_tabela_campo. exemplo de arquivo de configuração na tabela nfs_core_par_parametros:

INSERT INTO nfs_core_par_parametros(EMPRESA, FILIAL, `LOCAL`, NOME, CONTEUDO, TIPO)
VALUES(9999, 9999, 9999, 'TREE_VIEW', '{
   "layers":{
      "1":{
         "table":"AREA",
         "associationTable":"DISTRIBUICAO_OBJETO"
      },
      "2":{
         "table":"OBJETO",
         "associationTable":"DETALHAMENTO_OBJETO"
      },
      "3":{
         "table":"OPER",
         "isTask":true
      }
   }
}', 1);

agora basta adicionar o link ao registro:

INSERT INTO nfs_core_ds_tabela_campo(TABELA_NOME, NOME, SEQ, SYS, SEND_XMOVA, GRID, GRID_MOBILE, DESCRICAO, DESCRICAO_RESUMIDA, TIPO, OBRIGATORIO, TAMANHO, TAMANHO_DECIMAL, MASCARA, INSERT_UPDATE, DISABLED, HINT, LINK, VALIDACAO, OPCOES, VALOR_DEFAULT, VALIDACAO_VIEW, FILTRO_VIEW, TOOLTIP_MESSAGE, PROPERTIES)
VALUES('FOLHA_TAREFA', 'LINK_ATIVIDADE_METRICAS', 11, 0, 1, 0, 1, 'Métricas Folha Tarefa', 'Métricas Folha Tarefa', 'LINK', NULL, NULL, NULL, NULL, 'IU', '0', NULL, 'FOLHA_TAREFA', '', 'type:GET_URL;url:associationtask;p1:taskSheet;v1:SEQ_DB;icon:fa fa-link', NULL, NULL, NULL, NULL, NULL);

Configuração

config.png

Legendas:

  1. layers(camadas): Atributo onde serão definidas as tabelas de cada camada, bem como a tabela que fara a associação com os níveis “filho”(subnivel do nivel atual), quando for uma task, usaremos o propriedade isTask: true no lugar ta tabela de associação;

  2. niveis: Os niveis sempre irão contar no menos para o maior, na estrutura de arvore o nivel 1 seria a raiz(ou root), não possuindo pai e de onde os proximos niveis serão ramificados;

  3. nivel: Um nível corresponde a alguma tabela que será usada para para relacionar um nivel aos demais, fazendo a ligação entre os nós “pai”(que antecedem) e “filhos”(que sucedem);

  4. Campos que serão utilizados como métricas.

  5. valores padrão(default): permite difinir um valor padrão para as metricas, possuindo os seguintes tipos:

    • value: um valor fixo que será utilizado ao abrir o modal para inserção das metricas;
    • field: o nome de um campo da tabela de atividade;
    • taskSheet: o nome de um campo correspondente aos campos da folha tarefa.

Caso queira definir a tabela final onde sera salva a metrica, basta adicionar a propriedade metricAssociationTable desta forma:

{ 

  "metricAssociationTable":"OPER_GRUPO_METRICA",
  "layers":{
    "1":{
        "table":"AREA",
        "associationTable":"DISTRIBUICAO_OBJETO"
    },
    "2":{
        "table":"OBJETO",
        "associationTable":"DETALHAMENTO_OBJETO"
    },
    "3":{
        "table":"OPER",
        "isTask":true
    }
  }
}

Associação de tarefa x métrica por grupo:

Uma propriedade adicional foi criada para tornar os grupos elementos “arrastáveis”

Configuração:

group_association;

draggable indica que o nó na arvore de associação pode ser movido(através do evento "drag") para a zona de atividades associadas.

group_association_folder;

A pasta colorida indica que o elemento pode ser "arrastado".

Ao arrastar um grupo para a zona de associação, o usuário devera escolher uma das duas opções disponiveis:

group_association_folder;

  • GRUPO: As métricas definidas serão aplicadas para todas as atividades do grupo;
  • ATIVIDADE: O usuário deverá definir manualmente a métrica de cada atividade do grupo.

Caso opte opção “GRUPO” e a atividade ja possua uma métrica associada, esta métrica sera sobrescrita pela métrica definida para o GRUPO