Subversion Repositories DevTools

Rev

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

Rev Author Line No. Line
13 rsolanki 1
SELECT pkg.pkg_name, comp.*, usr.FULL_NAME, usr.user_email
2
  FROM PACKAGES pkg, 
3
  	   RM_USERS usr,
4
  	   (  
5
 
6
	    /* REMOVED ONLY */
7
		SELECT dpv.pv_id AS pv_id, dpv.pkg_id, NULL AS pkg_version, dpv.pkg_version AS previous_version, -1 AS status, dpv.MODIFIER_ID 
8
		  FROM PACKAGE_VERSIONS dpv,
9
		  	   PACKAGE_DEPENDENCIES dep,
10
		       (
11
		        SELECT olddpv.pv_id AS previous_pv_id, newdpv.pv_id AS current_pv_id 
12
				  FROM PACKAGE_VERSIONS newdpv,
13
				  	   PACKAGE_DEPENDENCIES newdep,
14
				       PACKAGE_VERSIONS olddpv,
15
				  	   PACKAGE_DEPENDENCIES olddep
16
				 WHERE newdep.DPV_ID = newdpv.PV_ID 
17
				   AND olddep.DPV_ID = olddpv.PV_ID
18
				   AND newdep.pv_id = :PROD_ID
19
				   AND olddep.pv_id = :OLD_PROD_ID
20
				   AND newdpv.pkg_id = olddpv.pkg_id 
21
				   AND NVL( newdpv.v_ext , 'LINK_A_NULL' ) = NVL( olddpv.v_ext, 'LINK_A_NULL' )      
22
		       ) diff
23
		 WHERE dep.DPV_ID = dpv.PV_ID
24
		   AND dep.pv_id = :OLD_PROD_ID
25
		   AND dpv.pv_id = diff.previous_pv_id (+)  
26
		   AND (diff.current_pv_id IS NULL OR diff.previous_pv_id IS NULL)   
27
 
28
 
29
		UNION
30
 
31
		/* NEW ONLY*/
32
		SELECT dpv.pv_id AS pv_id, dpv.pkg_id, dpv.pkg_version, NULL AS previous_version, 1 AS status, dpv.MODIFIER_ID
33
		  FROM PACKAGE_VERSIONS dpv,
34
		  	   PACKAGE_DEPENDENCIES dep,
35
		       ( 
36
		        SELECT olddpv.pv_id AS previous_pv_id, newdpv.pv_id AS current_pv_id 
37
				  FROM PACKAGE_VERSIONS newdpv,
38
				  	   PACKAGE_DEPENDENCIES newdep,
39
				       PACKAGE_VERSIONS olddpv,
40
				  	   PACKAGE_DEPENDENCIES olddep
41
				 WHERE newdep.DPV_ID = newdpv.PV_ID 
42
				   AND olddep.DPV_ID = olddpv.PV_ID
43
				   AND newdep.pv_id = :PROD_ID
44
				   AND olddep.pv_id = :OLD_PROD_ID  
45
				   AND newdpv.pkg_id = olddpv.pkg_id 
46
				   AND NVL( newdpv.v_ext , 'LINK_A_NULL' ) = NVL( olddpv.v_ext, 'LINK_A_NULL' ) 
47
                   AND :PROD_ID != :OLD_PROD_ID
48
		       ) diff
49
		 WHERE dep.DPV_ID = dpv.PV_ID
50
		   AND dep.pv_id = :PROD_ID
51
		   AND dpv.pv_id = diff.current_pv_id (+)  
52
		   AND (diff.current_pv_id IS NULL OR diff.previous_pv_id IS NULL)          
53
 
54
 
55
		UNION
56
 
57
		/* UPDATED and NOCHANGE only */
58
		SELECT newdpv.pv_id AS pv_id, newdpv.pkg_id, newdpv.pkg_version,
59
			   DECODE( newdpv.pv_id, olddpv.pv_id, NULL, olddpv.pkg_version ) AS previous_version,
60
			   DECODE( newdpv.pv_id, olddpv.pv_id, 0, 2 ) AS status, newdpv.MODIFIER_ID
61
		  FROM PACKAGE_VERSIONS newdpv,
62
		  	   PACKAGE_DEPENDENCIES newdep,
63
		       PACKAGE_VERSIONS olddpv,
64
		  	   PACKAGE_DEPENDENCIES olddep
65
		 WHERE newdep.DPV_ID = newdpv.PV_ID 
66
		   AND olddep.DPV_ID = olddpv.PV_ID
67
		   AND newdep.pv_id = :PROD_ID
68
		   AND olddep.pv_id = :OLD_PROD_ID
69
		   AND newdpv.pkg_id = olddpv.pkg_id 
70
		   AND NVL( newdpv.v_ext , 'LINK_A_NULL' ) = NVL( olddpv.v_ext, 'LINK_A_NULL' )     
71
           AND :PROD_ID != :OLD_PROD_ID
72
 
73
 
74
		) comp
75
 WHERE comp.pkg_id = pkg.pkg_id  
76
   AND comp.modifier_id = usr.user_id
77
ORDER BY UPPER(pkg.pkg_name)