SQL Queries - CAST Knowledge Base - Queries on metrics and diagnostics - How to get LOC by module

Purpose of Query

This query lists LOC by module

Applicable CAST Version

ReleaseYes/No
8.3.x

Applicable RDBMS

RDBMSYes/No
CSS

Query for CSS

For 8.3.36 and below:

SELECT k.keynam AS MODULE,
       SUM(oi.infval) AS LOC
FROM Keys k
JOIN SETROOT sr ON sr.IDSET = k.IdKey
JOIN CTT_OBJECT_APPLICATIONS coa ON coa.APPLICATION_ID = sr.IDROOT
JOIN objinf oi ON coa.object_id = oi.idobj
JOIN keys k2 ON k2.idkey = coa.object_id
WHERE k.ObjTyp = 20000
  AND coa.properties = 0
  AND inftyp = 1
  AND infsubtyp = 0
  AND k.KeyNam not like '%union content%'
  AND k.KeyNam NOT LIKE '% IFPUG objects'
  AND k2.objtyp IN
    (SELECT DISTINCT t.idtyp
     FROM typ t,
          typcat tc
     WHERE t.idtyp = tc.idtyp
       AND tc.idcatparent IN
         (SELECT cat.idcat
          FROM cat
          WHERE catnam LIKE '%APM Sources%'))
GROUP BY k.keynam

For 8.3.37 and above:

SELECT k.keynam AS MODULE,
       SUM(oi.infval) AS LOC
FROM Keys k
JOIN SETROOT sr ON sr.IDSET = k.IdKey
JOIN CTT_OBJECT_APPLICATIONS coa ON coa.APPLICATION_ID = sr.IDROOT
JOIN objinf oi ON coa.object_id = oi.idobj
JOIN keys k2 ON k2.idkey = coa.object_id
WHERE k.ObjTyp = 20000
  AND coa.properties & 255 = 0
  AND inftyp = 1
  AND infsubtyp = 0
  AND k.KeyNam not like '%union content%'
  AND k.KeyNam NOT LIKE '% IFPUG objects'
  AND k2.objtyp IN
    (SELECT DISTINCT t.idtyp
     FROM typ t,
          typcat tc
     WHERE t.idtyp = tc.idtyp
       AND tc.idcatparent IN
         (SELECT cat.idcat
          FROM cat
          WHERE catnam LIKE '%APM Sources%'))
GROUP BY k.keynam

Query result example

“My java full content”;3434

Query result interpretation

The query returns module name and LOC value

Notes/comments

Related Pages