Subversion Repositories DevTools

Rev

Rev 5513 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5634 dpurdie 1
/* Bom Updated Product Location */ 
2
select * from (
3
    WITH newbom as (
4
        SELECT osc.PROD_ID,
5
               CASE WHEN pkg.PKG_ID = 11151 THEN nn.NODE_NAME ||'_'|| os.OS_NAME || '_'  || 'NOTES_' || osc.PROD_ID ELSE  nn.NODE_NAME ||'_'|| os.OS_NAME || '_'  || pv.PKG_ID ||  NVL( pv.V_EXT, '|.NULL|' ) END as PK ,
6
               nt.NODE_ICON,
7
               nn.NODE_ID,
8
               nn.NODE_NAME,
9
               os.OS_ID,
10
               os.OS_NAME,
11
               pkg.PKG_ID,
12
               pkg.PKG_NAME,
13
               pv.PKG_VERSION,
14
               REPLACE(osc.product_comments,CHR(13)||CHR(10), '-') as COMMENTS
15
          FROM OS_CONTENTS osc,
16
               OPERATING_SYSTEMS os,
17
               NETWORK_NODES nn,
18
               NODE_TYPES nt,
19
               BOM_CONTENTS bc,
20
               PACKAGE_VERSIONS pv,
21
               PACKAGES pkg
22
         WHERE osc.OS_ID = os.OS_ID
23
           AND os.NODE_ID = nn.NODE_ID
24
           AND bc.NODE_ID = nn.NODE_ID
25
           AND osc.PROD_ID = pv.PV_ID
26
           AND pv.PKG_ID = pkg.PKG_ID
27
           AND nn.NODE_TYPE_ID = nt.NODE_TYPE_ID
28
           AND bc.BOM_ID = :BOM_ID  
29
               ),
30
    oldbom as (
31
        SELECT osc.PROD_ID,
32
               CASE WHEN pkg.PKG_ID = 11151 THEN nn.NODE_NAME ||'_'|| os.OS_NAME || '_'  || 'NOTES_' || osc.PROD_ID ELSE  nn.NODE_NAME ||'_'|| os.OS_NAME || '_'  || pv.PKG_ID ||  NVL( pv.V_EXT, '|.NULL|' ) END as PK,
33
               nn.NODE_ID,
34
               nn.NODE_NAME,
35
               os.OS_ID,
36
               os.OS_NAME,
37
               pkg.PKG_ID,
38
               pkg.PKG_NAME,
39
               pv.PKG_VERSION,
40
               REPLACE(osc.product_comments,CHR(13)||CHR(10), '-') as COMMENTS
41
          FROM OS_CONTENTS osc,
42
               OPERATING_SYSTEMS os,
43
               NETWORK_NODES nn,
44
               BOM_CONTENTS bc,
45
               PACKAGE_VERSIONS pv,
46
               PACKAGES pkg
47
         WHERE osc.OS_ID = os.OS_ID
48
           AND os.NODE_ID = nn.NODE_ID
49
           AND bc.NODE_ID = nn.NODE_ID
50
           AND osc.PROD_ID = pv.PV_ID
51
           AND pv.PKG_ID = pkg.PKG_ID
52
           AND bc.BOM_ID = :COMPARE_BOM_ID
53
               ),
54
    newNodes as (
55
      SELECT node_id from bom_contents where bom_id = :BOM_ID
56
    ),
57
    newOS as (
58
      SELECT os_id from operating_systems os, bom_contents bc where bc.bom_id = :BOM_ID and bc.node_id = os.node_id
59
    )
60
    SELECT newbom.*, oldbom.PROD_ID AS OPROD_ID , oldbom.comments as OCOMMENTS,newNodes.node_id as nodeExists, newOS.os_id as osExists
61
        from newbom 
62
        full outer join oldbom on newbom.PK = oldbom.PK
63
        left outer join newNodes on newbom.node_id = newNodes.node_id
64
        left outer join newOS on newbom.os_id = newOS.os_id
65
    ) where 
66
      PROD_ID = :PROD_ID
67
      AND ( PROD_ID != OPROD_ID or COMMENTS != OCOMMENTS)
68
      ORDER BY UPPER(PK)
15 rsolanki 69
 
5634 dpurdie 70
 
71