Page tree
Skip to end of metadata
Go to start of metadata
Purpose of Query

In 7.3, dependencies are not required between two JEE analysis units, provided that they belong to the same execution unit. That is why they are not always declared in Cast-MS.

Starting from 8.0, the behaviour of the JEE analyzer has changed : it will create links between objects belonging to different analysis units IF AND ONLY IF a dependency is declared in Cast-MS.

That is why, after migration from a 7.3.x version to a 8.y.z version, it is necessary to review the dependencies between JEE analysis units to avoid missing links.

This query, run on the 7.3.x CAST management base, will provide the list of dependencies required in Cast-MS 8.y.z to retrieve all the links that were present in 7.3.x

Applicable CAST Version
Release
Yes/No
8.2.x (error)
8.1.x (error)
8.0.x (error)
7.3.x (tick)
Applicable RDBMS
RDBMS
Yes/No
Oracle Server(tick)
Microsoft SQL Server(tick)
CSS2(tick)
Query for CSS
-- replace <MNGT> with the management base name
-- replace <LOCAL> with the knowledge base name
SET search_path=<LOCAL>;
DROP TABLE IF EXISTS MAINT_JEEObjects;

CREATE TEMPORARY TABLE MAINT_JEEObjects AS
SELECT ap.IdJob,
       ap.IdPro,
       op.IdObj AS IdKey
FROM   AnaPro ap
       JOIN Keys kp
       ON     kp.IdKey = ap.IdPro
       AND    kp.ObjTyp IN (98,281)
       AND    ap.Jobtyp = 719
       JOIN ObjPro op
       ON     op.idPro = ap.IdPro
       AND    op.prop  = 0;

CREATE INDEX MAINT_JEEObjects_IdKey
ON MAINT_JEEObjects
             (
                          IdKey
             );

SELECT cjar.OBJECT_ID   AS "source analysis unit id",
       cjar.OBJECT_NAME AS "source analysis unit"   ,
       cjae.OBJECT_ID   AS "target analysis unit id",
       cjae.OBJECT_NAME AS "target analysis unit"
FROM   (SELECT DISTINCT clr.IdPro AS clr,
                        cle.IdPro AS cle
       FROM             MAINT_JEEObjects clr
                        JOIN Acc a
                        ON               a.IdClr = clr.IdKey
                        JOIN MAINT_JEEObjects cle
                        ON               cle.IdKey  = a.IdCle
                        AND              cle.IdPro != clr.IdPro
                        LEFT JOIN MAINT_JEEObjects cle2
                        ON               cle2.IdKey = a.IdCle
                        AND              cle2.IdPro = clr.IdPro
       WHERE            cle2.IdJob            IS NULL
       )
       pro
       JOIN PMC_SUBSET_OBJECTS psor
       ON     psor.OBJECT_ID = pro.clr
       JOIN PMC_SUBSETS psr
       ON     psr.SUBSET_ID      = psor.SUBSET_ID
       AND    psr.SUBSET_NAME LIKE 'CMS_PRO__%'
       JOIN <MNGT>.CMS_J2EE_Analysis cjar
       ON     cjar.Object_id = CAST(substring(psr.SUBSET_NAME, 10) AS INT)
       JOIN PMC_SUBSET_OBJECTS psoe
       ON     psoe.OBJECT_ID = pro.cle
       JOIN PMC_SUBSETS pse
       ON     pse.SUBSET_ID      = psoe.SUBSET_ID
       AND    pse.SUBSET_NAME LIKE 'CMS_PRO__%'
       JOIN <MNGT>.CMS_J2EE_Analysis cjae
       ON     cjae.Object_id = CAST(substring(pse.SUBSET_NAME, 10) AS INT);
Query result example

12353;"onemap-rest";93578;"foundation"
31520;"accessline";12280;"shop"
92985;"personalization";95652;"shopcore"
31519;"shop";92155;"cloudstorage"
92986;"fanprofiletool";12349;"wbfcuverse"

Query result interpretation

There should be the following dependencies in Cast-MS 8.x for all the links to be created :

From AU "onemap-rest" to AU "foundation"

From AU "accessline" to AU "shopcore"

From AU "personalization" to AU "shopcore"

From AU "shop" to AU "cloudstorage"

From AU "fanprofiletool" to AU "wbfcuverse"

Query for Oracle
-- replace <MNGT> with the management base name
-- replace <LOCAL> with the knowledge base name
 
BEGIN
        EXECUTE IMMEDIATE 'DROP TABLE MAINT_JEEObjects';
EXCEPTION
WHEN OTHERS THEN
        IF SQLCODE != -942 THEN
                RAISE;
        END IF;
END;


CREATE GLOBAL TEMPORARY TABLE MAINT_JEEObjects
ON COMMIT PRESERVE ROWS AS
SELECT ap.IdJob,
       ap.IdPro,
       op.IdObj AS IdKey
FROM   <LOCAL>.AnaPro ap
       JOIN <LOCAL>.Keys kp
       ON     kp.IdKey = ap.IdPro
       AND    kp.ObjTyp IN (98,281)
       AND    ap.Jobtyp = 719
       JOIN <LOCAL>.ObjPro op
       ON     op.idPro = ap.IdPro
       AND    op.prop  = 0;



SELECT cjar.OBJECT_ID   AS "source analysis unit id",
       cjar.OBJECT_NAME AS "source analysis unit"   ,
       cjae.OBJECT_ID   AS "target analysis unit id",
       cjae.OBJECT_NAME AS "target analysis unit"
FROM   (SELECT DISTINCT clr.IdPro AS clr,
                        cle.IdPro AS cle
       FROM             MAINT_JEEObjects clr
                        JOIN <LOCAL>.Acc a
                        ON               a.IdClr = clr.IdKey
                        JOIN MAINT_JEEObjects cle
                        ON               cle.IdKey  = a.IdCle
                        AND              cle.IdPro != clr.IdPro
                        LEFT JOIN MAINT_JEEObjects cle2
                        ON               cle2.IdKey = a.IdCle
                        AND              cle2.IdPro = clr.IdPro
       WHERE            cle2.IdJob            IS NULL
       )
       pro
       JOIN <LOCAL>.PMC_SUBSET_OBJECTS psor
       ON     psor.OBJECT_ID = pro.clr
       JOIN <LOCAL>.PMC_SUBSETS psr
       ON     psr.SUBSET_ID      = psor.SUBSET_ID
       AND    psr.SUBSET_NAME LIKE 'CMS_PRO__%'
       JOIN <MNGT>.CMS_J2EE_Analysis cjar
       ON     cjar.Object_id = CAST(SUBSTR(psr.SUBSET_NAME, 10) AS INT)
       JOIN <LOCAL>.PMC_SUBSET_OBJECTS psoe
       ON     psoe.OBJECT_ID = pro.cle
       JOIN <LOCAL>.PMC_SUBSETS pse
       ON     pse.SUBSET_ID      = psoe.SUBSET_ID
       AND    pse.SUBSET_NAME LIKE 'CMS_PRO__%'
       JOIN <MNGT>.CMS_J2EE_Analysis cjae
       ON     cjae.Object_id = CAST(SUBSTR(pse.SUBSET_NAME, 10) AS INT);
Query result example

source analysis unit id source analysis unit target analysis unit id target analysis unit
------------------------------ ----------------------------- ----------------------------- ---------------------------
224776 crc 224769 CRCBE
 224784                     anc                224776                      crc    
224782 WebArTe 224771 SAG

Query result interpretation
 

There should be the following dependencies in Cast-MS 8.x for all the links to be created :

From AU "crc" to AU "CRCBE"

From AU "anc" to AU "crc"

From AU "WebArTe" to AU "SAG"

Query for SQL server
Enter the SQL query
Query result example
 
Query result interpretation
 
Notes/comments
 

 

 

Related Pages
 
  • No labels