Navigation:  Desempenho >

Responsáveis com indicadores com medição atrasada

Previous  Top  Next

Visão geral

Este comando listará todos os indicadores que estão com medição atrasada, acompanhado do responsável pela entrada de medição do indicador, do identificador e nome do indicador do scorecard, identificador e nome do scorecard, e o tipo de acesso que está vinculado ao indicador que faz com que tarefa seja mostrada ao usuário responsável.

 

Tabelas relacionadas

TABELA

Descrição

Chave primária (PK)

Tabelas de ligação

STSCMETRIC

Armazena o indicador do Scorecard

CDSCMETRIC

CDSCORECARD

CDREVISION

STSCORECARD

STSCMETRICACCESS

STSCMETRICACCESS

Armazena as seguranças do indicador do Scorecard

CDSCMETRICACCESS

CDSCMETRIC

CDSCORECARD

CDREVISION

STSCMETRIC

STSCORECARD

Armazena o Scorecard

CDSCORECARD

CDREVISION

STSCMETRIC

STMETRIC

Armazena o indicador

CDMETRIC

STSCMETRIC

ADTEAMUSER

Armazena os usuários de equipes

CDTEAM

CDUSER

ADUSER

ADUSER

Armazena os usuários internos do sistema

CDUSER


ADUSERDEPTPOS

Armazena os usuários das áreas e funções

CDUSER

CDDEPARTMENT

CDPOSITION

ADUSER

ADALLUSER

Armazena os usuários internos/externos do sistema

CDUSER


 

Oracle

SELECT 
   SUBQUERY.IDUSER AS 'Identificador do usuário'
   SUBQUERY.IDSCMETRIC AS 'Identificador do indicador do Scorecard'
   SUBQUERY.NMMETRIC AS 'Nome do indicador'
   SUBQUERY.IDSCORECARD AS 'Identificador do Scorecard'
   SUBQUERY.NMSCORECARD AS 'Nome do Scorecard'
   SUBQUERY.FGACCESSTYPE AS 'Tipo de acesso'
   SUBQUERY.FGPERMISSION AS 'Permissão' 
FROM ( 
   SELECT 
      STSCMETRIC.IDSCMETRIC, 
      STMETRIC.NMMETRIC, 
      STSCORECARD.IDSCORECARD, 
      STSCORECARD.NMSCORECARD, 
      CASE WHEN MACCESS.FGACCESSTYPE = 1 THEN 'Equipe' WHEN MACCESS.FGACCESSTYPE = 2 THEN 'Área' WHEN MACCESS.FGACCESSTYPE = 3 THEN 'Área/Função' WHEN MACCESS.FGACCESSTYPE = 4 THEN 'Função' WHEN MACCESS.FGACCESSTYPE = 5 THEN 'Usuário' WHEN MACCESS.FGACCESSTYPE = 6 THEN 'Todos' END AS FGACCESSTYPE, 
      CASE WHEN MACCESS.FGACCESSTYPE = 1 THEN ADUTEAM.IDUSER WHEN MACCESS.FGACCESSTYPE = 2 THEN ADUDEPART.IDUSER WHEN MACCESS.FGACCESSTYPE = 3 THEN ADUDEPTPOS.IDUSER WHEN MACCESS.FGACCESSTYPE = 4 THEN ADUPOS.IDUSER WHEN MACCESS.FGACCESSTYPE = 5 THEN ADUSER.IDUSER WHEN MACCESS.FGACCESSTYPE = 6 THEN ADALLUSERS.IDUSER END AS IDUSER, 
      MACCESS.FGPERMISSION 
   FROM STSCMETRIC 
    INNER JOIN STSCMETRICACCESS MACCESS ON(MACCESS.CDSCMETRIC = STSCMETRIC.CDSCMETRIC AND MACCESS.CDSCORECARD = STSCMETRIC.CDSCORECARD AND MACCESS.CDREVISION = STSCMETRIC.CDREVISION AND MACCESS.FGACCESSACTUAL = 1/* OBS1 */ 
    INNER JOIN STSCORECARD ON(STSCORECARD.CDSCORECARD = STSCMETRIC.CDSCORECARD AND STSCORECARD.CDREVISION = STSCMETRIC.CDREVISION AND STSCORECARD.FGCURRENT = 1 AND STSCORECARD.FGSTATUS = 1/* OBS2 */ 
    INNER JOIN STMETRIC ON (STMETRIC.CDMETRIC = STSCMETRIC.CDMETRIC AND STMETRIC.FGENABLED = 1/* OBS3 */ 
    LEFT OUTER JOIN ADTEAMUSER ADTU ON(ADTU.CDTEAM = MACCESS.CDTEAM AND MACCESS.FGACCESSTYPE = 1/* OBS4 */ 
    LEFT OUTER JOIN ADUSER ADUTEAM ON(ADUTEAM.CDUSER = ADTU.CDUSER) 
    LEFT OUTER JOIN ADUSERDEPTPOS DEPARTMENT ON(DEPARTMENT.CDDEPARTMENT = MACCESS.CDDEPARTMENT AND MACCESS.FGACCESSTYPE = 2/* OBS5 */ 
    LEFT OUTER JOIN ADUSER ADUDEPART ON(ADUDEPART.CDUSER = DEPARTMENT.CDUSER) 
    LEFT OUTER JOIN ADUSERDEPTPOS DEPTPOS ON(DEPTPOS.CDDEPARTMENT = MACCESS.CDDEPARTMENT AND DEPTPOS.CDDEPARTMENT = MACCESS.CDDEPARTMENT AND MACCESS.FGACCESSTYPE = 3/* OBS6 */ 
    LEFT OUTER JOIN ADUSER ADUDEPTPOS ON(DEPTPOS.CDUSER = ADUDEPTPOS.CDUSER) 
    LEFT OUTER JOIN ADUSERDEPTPOS POSITION ON(POSITION.CDPOSITION = MACCESS.CDPOSITION AND MACCESS.FGACCESSTYPE = 4/* OBS7 */ 
    LEFT OUTER JOIN ADUSER ADUPOS ON(POSITION.CDUSER = ADUPOS.CDUSER) 
    LEFT OUTER JOIN ADUSER ON(ADUSER.CDUSER = MACCESS.CDUSER AND MACCESS.FGACCESSTYPE = 5/* OBS8 */ 
    LEFT OUTER JOIN ADALLUSERS ON(MACCESS.FGACCESSTYPE = 6/* OBS9 */ 
   WHERE STSCMETRIC.DTDUEMEASURE < CURRENT_DATE /* OBS10 */ 
    AND STSCMETRIC.FGMETRICENABLED = 1 /* OBS11 */ 
    AND STSCMETRIC.FGTODOTASK = 1 /* OBS12 */ 
) SUBQUERY 
WHERE SUBQUERY.IDUSER IS NOT NULL 
GROUP BY SUBQUERY.IDUSER, SUBQUERY.IDSCMETRIC, SUBQUERY.NMMETRIC, SUBQUERY.IDSCORECARD, SUBQUERY.NMSCORECARD, SUBQUERY.FGACCESSTYPE, SUBQUERY.FGPERMISSION 
HAVING MAX(SUBQUERY.FGPERMISSION) = 1 /* OBS13 */

 

Postgres

SELECT 
   SUBQUERY.IDUSER AS 'Identificador do usuário'
   SUBQUERY.IDSCMETRIC AS 'Identificador do indicador do Scorecard'
   SUBQUERY.NMMETRIC AS 'Nome do indicador'
   SUBQUERY.IDSCORECARD AS 'Identificador do Scorecard'
   SUBQUERY.NMSCORECARD AS 'Nome do Scorecard'
   SUBQUERY.FGACCESSTYPE AS 'Tipo de acesso'
   SUBQUERY.FGPERMISSION AS 'Permissão' 
FROM ( 
   SELECT 
      STSCMETRIC.IDSCMETRIC, 
      STMETRIC.NMMETRIC, 
      STSCORECARD.IDSCORECARD, 
      STSCORECARD.NMSCORECARD, 
      CASE WHEN ACCESS.FGACCESSTYPE = 1 THEN 'Equipe' WHEN ACCESS.FGACCESSTYPE = 2 THEN 'Área' WHEN ACCESS.FGACCESSTYPE = 3 THEN 'Área/Função' WHEN ACCESS.FGACCESSTYPE = 4 THEN 'Função' WHEN ACCESS.FGACCESSTYPE = 5 THEN 'Usuário' WHEN ACCESS.FGACCESSTYPE = 6 THEN 'Todos' END AS FGACCESSTYPE, 
      CASE WHEN ACCESS.FGACCESSTYPE = 1 THEN ADUTEAM.IDUSER WHEN ACCESS.FGACCESSTYPE = 2 THEN ADUDEPART.IDUSER WHEN ACCESS.FGACCESSTYPE = 3 THEN ADUDEPTPOS.IDUSER WHEN ACCESS.FGACCESSTYPE = 4 THEN ADUPOS.IDUSER WHEN ACCESS.FGACCESSTYPE = 5 THEN ADUSER.IDUSER WHEN ACCESS.FGACCESSTYPE = 6 THEN ADALLUSERS.IDUSER END AS IDUSER, 
      ACCESS.FGPERMISSION 
   FROM STSCMETRIC 
      INNER JOIN STSCMETRICACCESS ACCESS ON(ACCESS.CDSCMETRIC = STSCMETRIC.CDSCMETRIC AND ACCESS.CDSCORECARD = STSCMETRIC.CDSCORECARD AND ACCESS.CDREVISION = STSCMETRIC.CDREVISION AND ACCESS.FGACCESSACTUAL = 1/* OBS1 */ 
      INNER JOIN STSCORECARD ON(STSCORECARD.CDSCORECARD = STSCMETRIC.CDSCORECARD AND STSCORECARD.CDREVISION = STSCMETRIC.CDREVISION AND STSCORECARD.FGCURRENT = 1 AND STSCORECARD.FGSTATUS = 1/* OBS2 */ 
     INNER JOIN STMETRIC ON (STMETRIC.CDMETRIC = STSCMETRIC.CDMETRIC AND STMETRIC.FGENABLED = 1/* OBS3 */ 
     LEFT OUTER JOIN ADTEAMUSER ADTU ON(ADTU.CDTEAM = ACCESS.CDTEAM AND ACCESS.FGACCESSTYPE = 1/* OBS4 */ 
     LEFT OUTER JOIN ADUSER ADUTEAM ON(ADUTEAM.CDUSER = ADTU.CDUSER) 
     LEFT OUTER JOIN ADUSERDEPTPOS DEPARTMENT ON(DEPARTMENT.CDDEPARTMENT = ACCESS.CDDEPARTMENT AND ACCESS.FGACCESSTYPE = 2/* OBS5 */ 
     LEFT OUTER JOIN ADUSER ADUDEPART ON(ADUDEPART.CDUSER = DEPARTMENT.CDUSER) 
     LEFT OUTER JOIN ADUSERDEPTPOS DEPTPOS ON(DEPTPOS.CDDEPARTMENT = ACCESS.CDDEPARTMENT AND DEPTPOS.CDDEPARTMENT = ACCESS.CDDEPARTMENT AND ACCESS.FGACCESSTYPE = 3/* OBS6 */ 
     LEFT OUTER JOIN ADUSER ADUDEPTPOS ON(DEPTPOS.CDUSER = ADUDEPTPOS.CDUSER) 
     LEFT OUTER JOIN ADUSERDEPTPOS POSITION ON(POSITION.CDPOSITION = ACCESS.CDPOSITION AND ACCESS.FGACCESSTYPE = 4/* OBS7 */ 
     LEFT OUTER JOIN ADUSER ADUPOS ON(POSITION.CDUSER = ADUPOS.CDUSER) 
     LEFT OUTER JOIN ADUSER ON(ADUSER.CDUSER = ACCESS.CDUSER AND ACCESS.FGACCESSTYPE = 5/* OBS8 */ 
     LEFT OUTER JOIN ADALLUSERS ON(ACCESS.FGACCESSTYPE = 6/* OBS9 */ 
   WHERE STSCMETRIC.DTDUEMEASURE < CURRENT_DATE /* OBS10 */ 
     AND STSCMETRIC.FGMETRICENABLED = 1 /* OBS11 */ 
     AND STSCMETRIC.FGTODOTASK = 1 /* OBS12 */ 
) SUBQUERY 
WHERE SUBQUERY.IDUSER IS NOT NULL 
GROUP BY SUBQUERY.IDUSER, SUBQUERY.IDSCMETRIC, SUBQUERY.NMMETRIC, SUBQUERY.IDSCORECARD, SUBQUERY.NMSCORECARD, SUBQUERY.FGACCESSTYPE, SUBQUERY.FGPERMISSION 
HAVING MAX(SUBQUERY.FGPERMISSION) = 1 /* OBS13 */

 

SQL Server

SELECT 
   SUBQUERY.IDUSER AS 'Identificador do usuário'
   SUBQUERY.IDSCMETRIC AS 'Identificador do indicador do Scorecard'
   SUBQUERY.NMMETRIC AS 'Nome do indicador'
   SUBQUERY.IDSCORECARD AS 'Identificador do Scorecard'
   SUBQUERY.NMSCORECARD AS 'Nome do Scorecard'
   SUBQUERY.FGACCESSTYPE AS 'Tipo de acesso'
   SUBQUERY.FGPERMISSION AS 'Permissão' 
FROM ( 
   SELECT 
      STSCMETRIC.IDSCMETRIC, 
      STMETRIC.NMMETRIC, 
      STSCORECARD.IDSCORECARD, 
      STSCORECARD.NMSCORECARD, 
      CASE WHEN ACCESS.FGACCESSTYPE = 1 THEN 'Equipe' WHEN ACCESS.FGACCESSTYPE = 2 THEN 'Área' WHEN ACCESS.FGACCESSTYPE = 3 THEN 'Área/Função' WHEN ACCESS.FGACCESSTYPE = 4 THEN 'Função' WHEN ACCESS.FGACCESSTYPE = 5 THEN 'Usuário' WHEN ACCESS.FGACCESSTYPE = 6 THEN 'Todos' END AS FGACCESSTYPE, 
      CASE WHEN ACCESS.FGACCESSTYPE = 1 THEN ADUTEAM.IDUSER WHEN ACCESS.FGACCESSTYPE = 2 THEN ADUDEPART.IDUSER WHEN ACCESS.FGACCESSTYPE = 3 THEN ADUDEPTPOS.IDUSER WHEN ACCESS.FGACCESSTYPE = 4 THEN ADUPOS.IDUSER WHEN ACCESS.FGACCESSTYPE = 5 THEN ADUSER.IDUSER WHEN ACCESS.FGACCESSTYPE = 6 THEN ADALLUSERS.IDUSER END AS IDUSER, 
      ACCESS.FGPERMISSION 
   FROM STSCMETRIC 
      INNER JOIN STSCMETRICACCESS ACCESS ON(ACCESS.CDSCMETRIC = STSCMETRIC.CDSCMETRIC AND ACCESS.CDSCORECARD = STSCMETRIC.CDSCORECARD AND ACCESS.CDREVISION = STSCMETRIC.CDREVISION AND ACCESS.FGACCESSACTUAL = 1/* OBS1 */ 
      INNER JOIN STSCORECARD ON(STSCORECARD.CDSCORECARD = STSCMETRIC.CDSCORECARD AND STSCORECARD.CDREVISION = STSCMETRIC.CDREVISION AND STSCORECARD.FGCURRENT = 1 AND STSCORECARD.FGSTATUS = 1/* OBS2 */ 
      INNER JOIN STMETRIC ON(STMETRIC.CDMETRIC = STSCMETRIC.CDMETRIC AND STMETRIC.FGENABLED = 1/* OBS3 */ 
      LEFT OUTER JOIN ADTEAMUSER ADTU ON(ADTU.CDTEAM = ACCESS.CDTEAM AND ACCESS.FGACCESSTYPE = 1/* OBS4 */ 
      LEFT OUTER JOIN ADUSER ADUTEAM ON(ADUTEAM.CDUSER = ADTU.CDUSER)LEFT OUTER JOIN ADUSERDEPTPOS DEPARTMENT ON(DEPARTMENT.CDDEPARTMENT = ACCESS.CDDEPARTMENT AND ACCESS.FGACCESSTYPE = 2/* OBS5 */ 
      LEFT OUTER JOIN ADUSER ADUDEPART ON(ADUDEPART.CDUSER = DEPARTMENT.CDUSER)LEFT OUTER JOIN ADUSERDEPTPOS DEPTPOS ON(DEPTPOS.CDDEPARTMENT = ACCESS.CDDEPARTMENT AND DEPTPOS.CDDEPARTMENT = ACCESS.CDDEPARTMENT AND ACCESS.FGACCESSTYPE = 3/* OBS6 */ 
      LEFT OUTER JOIN ADUSER ADUDEPTPOS ON(DEPTPOS.CDUSER = ADUDEPTPOS.CDUSER)LEFT OUTER JOIN ADUSERDEPTPOS POSITION ON(POSITION.CDPOSITION = ACCESS.CDPOSITION AND ACCESS.FGACCESSTYPE = 4/* OBS7 */ 
      LEFT OUTER JOIN ADUSER ADUPOS ON(POSITION.CDUSER = ADUPOS.CDUSER)LEFT OUTER JOIN ADUSER ON(ADUSER.CDUSER = ACCESS.CDUSER AND ACCESS.FGACCESSTYPE = 5/* OBS8 */ 
      LEFT OUTER JOIN ADALLUSERS ON(ACCESS.FGACCESSTYPE = 6/* OBS9 */ 
   WHERE STSCMETRIC.DTDUEMEASURE < GETDATE() /* OBS10 */ 
     AND STSCMETRIC.FGMETRICENABLED = 1 /* OBS11 */ 
     AND STSCMETRIC.FGTODOTASK = 1 /* OBS12 */ 
) SUBQUERY 
WHERE SUBQUERY.IDUSER IS NOT NULL 
GROUP BY SUBQUERY.IDUSER, SUBQUERY.IDSCMETRIC, SUBQUERY.NMMETRIC, SUBQUERY.IDSCORECARD, SUBQUERY.NMSCORECARD, SUBQUERY.FGACCESSTYPE, SUBQUERY.FGPERMISSION 
HAVING MAX(SUBQUERY.FGPERMISSION) = 1 /* OBS13 */ 

 

Observações

1: O campo FGACCESSACTUAL igual a 1 determina se o usuário/equipe/área/função tem permissão para inserir valores de medição no indicador.

2: Os campos FGSTATUS igual a 1, e FGCURRENT igual a 1 determinam respectivamente, a situação do scorecard (1-Ativo), e a vigência do scorecard (1-Homologado).

3: O campo FGENABLED igual a 1 determina se o indicador presente no menu de cadastro de indicador está ativo.

4: O campo FGACCESSTYPE igual a 1, determina se o tipo de acesso na segurança do indicador é por equipe.

5:  O campo FGACCESSTYPE igual a 2, determina se o tipo de acesso na segurança do indicador é por área.

6:  O campo FGACCESSTYPE igual a 3, determina se o tipo de acesso na segurança do indicador é por área/função.

7:  O campo FGACCESSTYPE igual a 4, determina se o tipo de acesso na segurança do indicador é por função.

8:  O campo FGACCESSTYPE igual a 5, determina se o tipo de acesso na segurança do indicador é por usuário.

9: O campo FGACCESSTYPE igual a 6, determina se o tipo de acesso na segurança do indicador é todos.

10: O campo DTDUEMEASURE determina a data de vencimento da próxima medição a ser informada. Logo, ela é utilizada na condição WHERE que verifica com o uso da função (CURRENT_DATE|GETDATE) que traz a data atual, se o indicador está atrasado.

11: O campo FGMETRICENABLED igual a 1 determina se o indicador do scorecard está ativo na estrutura do scorecard.

12: O campo FGTODOTASK igual a 1, determina se o indicador está gerando tarefa de inclusão de meta/medição.

13: O campo FGPERMISSION igual a 1, determina se o usuário tem permissão na segurança, que conforme OBS1 remete a segurança de inserção de medição. A função MAX é utilizada para que não se considere caso o indicador possua duas seguranças sendo uma negar(2) e a outra permitir(1).