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
| Release | Yes/No |
|---|---|
| 8.3.x | ✅ |
Applicable RDBMS
| RDBMS | Yes/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