Subversion Repositories DevTools

Rev

Rev 51 | Rev 55 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 51 Rev 53
Line 423... Line 423...
423
 
423
 
424
CREATE TABLE PLANNED
424
CREATE TABLE PLANNED
425
(
425
(
426
  RTAG_ID NUMBER NOT NULL,
426
  RTAG_ID NUMBER NOT NULL,
427
  PV_ID NUMBER NOT NULL,
427
  PV_ID NUMBER NOT NULL,
428
  VIEW_ID NUMBER NOT NULL
428
  VIEW_ID NUMBER NOT NULL,
-
 
429
  OPERATION CHAR(1 BYTE)
429
)
430
)
430
  TABLESPACE "USERS"
431
  TABLESPACE "USERS"
431
  LOGGING 
432
  LOGGING 
432
  PCTFREE 10
433
  PCTFREE 10
433
  PCTUSED 40
434
  PCTUSED 40
Line 2305... Line 2306...
2305
RTAG_ID
2306
RTAG_ID
2306
) ENABLE
2307
) ENABLE
2307
;
2308
;
2308
 
2309
 
2309
ALTER TABLE PLANNED
2310
ALTER TABLE PLANNED
2310
ADD CONSTRAINT REFPACKAGE_VERSIONS54 FOREIGN KEY
2311
ADD CONSTRAINT REFRELEASE_TAGS53 FOREIGN KEY
2311
(
2312
(
2312
  PV_ID
2313
  RTAG_ID
2313
)
2314
)
2314
REFERENCES PACKAGE_VERSIONS
2315
REFERENCES RELEASE_TAGS
2315
(
2316
(
2316
PV_ID
2317
RTAG_ID
2317
) ENABLE
2318
) ENABLE
2318
;
2319
;
2319
 
2320
 
2320
ALTER TABLE PLANNED
2321
ALTER TABLE PLANNED
2321
ADD CONSTRAINT REFRELEASE_TAGS53 FOREIGN KEY
2322
ADD CONSTRAINT REFPACKAGE_VERSIONS54 FOREIGN KEY
2322
(
2323
(
2323
  RTAG_ID
2324
  PV_ID
2324
)
2325
)
2325
REFERENCES RELEASE_TAGS
2326
REFERENCES PACKAGE_VERSIONS
2326
(
2327
(
2327
RTAG_ID
2328
PV_ID
2328
) ENABLE
2329
) ENABLE
2329
;
2330
;
2330
 
2331
 
2331
ALTER TABLE PLANNED
2332
ALTER TABLE PLANNED
2332
ADD CONSTRAINT REFVIEWS55 FOREIGN KEY
2333
ADD CONSTRAINT REFVIEWS55 FOREIGN KEY
Line 2909... Line 2910...
2909
    rc.RTAG_ID,
2910
    rc.RTAG_ID,
2910
    rc.BASE_VIEW_ID AS VIEW_ID,
2911
    rc.BASE_VIEW_ID AS VIEW_ID,
2911
    rc.PKG_STATE,
2912
    rc.PKG_STATE,
2912
 rc.DEPRECATED_STATE,
2913
 rc.DEPRECATED_STATE,
2913
    rc.INSERTOR_ID,
2914
    rc.INSERTOR_ID,
2914
    rc.INSERT_STAMP
2915
    rc.INSERT_STAMP,
-
 
2916
    ' ' AS OPERATION
2915
  FROM RELEASE_CONTENT rc
2917
  FROM RELEASE_CONTENT rc
2916
UNION
2918
UNION
2917
SELECT 0 AS ENV_AREA,
2919
SELECT 0 AS ENV_AREA,
2918
    wip.PV_ID,
2920
    wip.PV_ID,
2919
    wip.RTAG_ID,
2921
    wip.RTAG_ID,
2920
    wip.VIEW_ID,
2922
    wip.VIEW_ID,
2921
    NULL AS PKG_STATE,
2923
    NULL AS PKG_STATE,
2922
 NULL AS DEPRECATED_STATE,
2924
 NULL AS DEPRECATED_STATE,
2923
    NULL AS INSERTOR_ID,
2925
    NULL AS INSERTOR_ID,
2924
    NULL AS INSERT_STAMP
2926
    NULL AS INSERT_STAMP,
-
 
2927
    ' ' AS OPERATION
2925
  FROM WORK_IN_PROGRESS wip 
2928
  FROM WORK_IN_PROGRESS wip
2926
UNION 
2929
UNION
2927
SELECT 1 AS ENV_AREA,
2930
SELECT 1 AS ENV_AREA,
2928
    pl.PV_ID,
2931
    pl.PV_ID,
2929
    pl.RTAG_ID,
2932
    pl.RTAG_ID,
2930
    pl.VIEW_ID,
2933
    pl.VIEW_ID,
2931
    NULL AS PKG_STATE,
2934
    NULL AS PKG_STATE,
2932
 NULL AS DEPRECATED_STATE,
2935
 NULL AS DEPRECATED_STATE,
2933
    NULL AS INSERTOR_ID,
2936
    NULL AS INSERTOR_ID,
2934
    NULL AS INSERT_STAMP
2937
    NULL AS INSERT_STAMP,
-
 
2938
    pl.operation
2935
  FROM PLANNED pl;
2939
FROM PLANNED pl;
2936
 
2940
 
2937
CREATE UNIQUE INDEX UNQ_PKG_BUILD_ENV ON PACKAGE_BUILD_ENV (PV_ID ASC, BE_ID ASC)  TABLESPACE "USERS"
2941
CREATE UNIQUE INDEX UNQ_PKG_BUILD_ENV ON PACKAGE_BUILD_ENV (PV_ID ASC, BE_ID ASC)  TABLESPACE "USERS"
2938
  LOGGING 
2942
  LOGGING 
2939
  PCTFREE 10
2943
  PCTFREE 10
2940
  INITRANS 2
2944
  INITRANS 2
Line 6100... Line 6104...
6100
         WHERE group_email_id NOT IN (SELECT group_email_id
6104
         WHERE group_email_id NOT IN (SELECT group_email_id
6101
                                        FROM members_group);
6105
                                        FROM members_group);
6102
END delete_autobuild_failure_info;
6106
END delete_autobuild_failure_info;
6103
/
6107
/
6104
 
6108
 
6105
CREATE OR REPLACE PACKAGE PK_ENVIRONMENT IS
6109
CREATE OR REPLACE PACKAGE                   "PK_ENVIRONMENT" IS
6106
/*
6110
/*
6107
------------------------------
6111
------------------------------
6108
||  Last Modified:  Rupesh Solanki
6112
||  Last Modified:  G.Huddy
6109
||  Modified Date:  29/Jan/2007
6113
||  Modified Date:  28/May/2008
6110
||  Spec Version:   1.1
6114
||  Spec Version:   1.2
6111
------------------------------
6115
------------------------------
6112
*/
6116
*/
6113
 
6117
 
6114
	TYPE typeCur IS REF CURSOR;
6118
	TYPE typeCur IS REF CURSOR;
6115
 
6119
 
6116
    /*================================================================================================*/
6120
	/*================================================================================================*/
6117
 
6121
 
6118
	FUNCTION SELECT_ENVIRONMENT_AREA ( cDlock IN PACKAGE_VERSIONS.DLOCKED%TYPE ) RETURN NUMBER;
6122
	FUNCTION SELECT_ENVIRONMENT_AREA ( cDlock IN PACKAGE_VERSIONS.DLOCKED%TYPE ) RETURN NUMBER;
6119
	FUNCTION GET_PACKAGE_AREA ( PvId IN NUMBER, RtagId IN NUMBER ) RETURN NUMBER;
6123
	FUNCTION GET_PACKAGE_AREA ( PvId IN NUMBER, RtagId IN NUMBER ) RETURN NUMBER;
6120
	FUNCTION GET_VIEW_LOCATION ( PvId IN NUMBER, RtagId IN NUMBER ) RETURN NUMBER;
6124
	FUNCTION GET_VIEW_LOCATION ( PvId IN NUMBER, RtagId IN NUMBER ) RETURN NUMBER;
6121
	PROCEDURE ADD_PACKAGE ( PvId IN NUMBER, ViewId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6125
	PROCEDURE ADD_PACKAGE ( PvId IN NUMBER, ViewId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6122
	PROCEDURE ADD_PACKAGE_BULK ( PvIdList IN VARCHAR2, ViewId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6126
	PROCEDURE ADD_PACKAGE_BULK ( PvIdList IN VARCHAR2, ViewId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6123
	PROCEDURE REPLACE_PACKAGE ( newPvId IN NUMBER, oldPvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6127
	PROCEDURE REPLACE_PACKAGE ( newPvId IN NUMBER, oldPvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6124
	FUNCTION REMOVE_PACKAGE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER, ForceRemove IN CHAR ) RETURN NUMBER;
6128
	FUNCTION REMOVE_PACKAGE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER, ForceRemove IN CHAR ) RETURN NUMBER;
6125
	
6129
 
6126
	PROCEDURE GET_ENVIRONMENT_ITEMS ( ViewType IN NUMBER, UserId IN NUMBER, RtagId IN NUMBER,  sViewIdShowList IN VARCHAR2, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6130
	PROCEDURE GET_ENVIRONMENT_ITEMS ( ViewType IN NUMBER, UserId IN NUMBER, RtagId IN NUMBER,  sViewIdShowList IN VARCHAR2, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6127
	PROCEDURE GET_RELEASED_ITEMS ( ViewType IN NUMBER, UserId IN NUMBER, RtagId IN NUMBER,  sViewIdShowList IN VARCHAR2, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6131
	PROCEDURE GET_RELEASED_ITEMS ( ViewType IN NUMBER, UserId IN NUMBER, RtagId IN NUMBER,  sViewIdShowList IN VARCHAR2, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6128
	PROCEDURE GET_PENDING_ITEMS ( ViewType IN NUMBER, UserId IN NUMBER, RtagId IN NUMBER,  sViewIdShowList IN VARCHAR2, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6132
	PROCEDURE GET_PENDING_ITEMS ( ViewType IN NUMBER, UserId IN NUMBER, RtagId IN NUMBER,  sViewIdShowList IN VARCHAR2, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6129
	PROCEDURE GET_WORK_IN_PROGRESS_ITEMS ( ViewType IN NUMBER, UserId IN NUMBER, RtagId IN NUMBER,  sViewIdShowList IN VARCHAR2, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6133
	PROCEDURE GET_WORK_IN_PROGRESS_ITEMS ( ViewType IN NUMBER, UserId IN NUMBER, RtagId IN NUMBER,  sViewIdShowList IN VARCHAR2, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6130
	
6134
 
6131
	PROCEDURE GET_VIEW_CONTENT ( RtagId IN NUMBER, ViewId IN NUMBER, RecordSet OUT typeCur );	
6135
	PROCEDURE GET_VIEW_CONTENT ( RtagId IN NUMBER, ViewId IN NUMBER, RecordSet OUT typeCur );
6132
 
6136
 
6133
	FUNCTION GET_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER ) RETURN NUMBER;
6137
	FUNCTION GET_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER ) RETURN NUMBER;
6134
	
6138
 
6135
	
6139
 
6136
	PROCEDURE MAKE_RELEASE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6140
	PROCEDURE MAKE_RELEASE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6137
	PROCEDURE MAKE_UNRELEASE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6141
	PROCEDURE MAKE_UNRELEASE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6138
 
6142
 
6139
	PROCEDURE MAKE_PENDING ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6143
	PROCEDURE MAKE_PENDING ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6140
	PROCEDURE MAKE_APPROVED ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6144
	PROCEDURE MAKE_APPROVED ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6141
	PROCEDURE MAKE_REJECT ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6145
	PROCEDURE MAKE_REJECT ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
-
 
6146
	PROCEDURE APPROVE_MERGE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
6142
	
6147
 
6143
	PROCEDURE CHANGE_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER, NewViewId IN NUMBER );
6148
	PROCEDURE CHANGE_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER, NewViewId IN NUMBER );
6144
	
6149
 
6145
	PROCEDURE FIND_PACKAGE ( sKeyword IN VARCHAR2, nRtagId IN NUMBER, nSearchArea IN NUMBER, RecordSet OUT typeCur );
6150
	PROCEDURE FIND_PACKAGE ( sKeyword IN VARCHAR2, nRtagId IN NUMBER, nSearchArea IN NUMBER, RecordSet OUT typeCur );
6146
	PROCEDURE FIND_FILE ( sKeyword IN VARCHAR2, nRtagId IN NUMBER, nSearchArea IN NUMBER, nPageSize IN NUMBER, RecordSet OUT typeCur );
6151
	PROCEDURE FIND_FILE ( sKeyword IN VARCHAR2, nRtagId IN NUMBER, nSearchArea IN NUMBER, nPageSize IN NUMBER, RecordSet OUT typeCur );
6147
	
6152
 
6148
	PROCEDURE AUTO_MAKE_RELEASE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER, VExt IN 
6153
	PROCEDURE AUTO_MAKE_RELEASE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER, VExt IN
6149
			  			   	 PACKAGE_VERSIONS.V_EXT%TYPE, SSV_EXT IN PACKAGE_VERSIONS.V_EXT%TYPE, 
6154
							 PACKAGE_VERSIONS.V_EXT%TYPE, SSV_EXT IN PACKAGE_VERSIONS.V_EXT%TYPE,
6150
							 CloneFromPvId IN NUMBER );
6155
							 CloneFromPvId IN NUMBER );
6151
							 
6156
 
6152
	PROCEDURE GET_PRODRELEASE_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6157
	PROCEDURE GET_PRODRELEASE_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6153
							 
6158
 
6154
	PROCEDURE GET_INTEGRATION_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );							 
6159
	PROCEDURE GET_INTEGRATION_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6155
							 
6160
 
6156
	PROCEDURE GET_TEST_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6161
	PROCEDURE GET_TEST_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6157
	
-
 
6158
	PROCEDURE GET_DEPLOY_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );								 							 
-
 
6159
 
6162
 
-
 
6163
	PROCEDURE GET_DEPLOY_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
-
 
6164
 
6160
	PROCEDURE GET_REJECT_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );	
6165
	PROCEDURE GET_REJECT_ITEMS ( RtagId IN NUMBER, nTrueRecordCount OUT NUMBER, RecordSet OUT typeCur );
6161
	/*================================================================================================*/
6166
	/*================================================================================================*/
6162
 
6167
 
6163
END PK_ENVIRONMENT;
6168
END PK_ENVIRONMENT;
6164
/
6169
/
6165
 
6170
 
Line 8772... Line 8777...
8772
   	Log_Action ( nPvId, 'unlock_package', nUserId );
8777
   	Log_Action ( nPvId, 'unlock_package', nUserId );
8773
 
8778
 
8774
END Unlock_Package;
8779
END Unlock_Package;
8775
/
8780
/
8776
 
8781
 
8777
CREATE OR REPLACE PACKAGE PK_PLANNED IS
8782
CREATE OR REPLACE PACKAGE                   "PK_PLANNED" IS
8778
/*
8783
/*
8779
------------------------------
8784
------------------------------
8780
||  Last Modified:  S.Vukovic
8785
||  Last Modified:  G.Huddy
8781
||  Modified Date:  6/May/2005
8786
||  Modified Date:  28/May/2008
8782
||  Spec Version:   1.0
8787
||  Spec Version:   1.1
8783
------------------------------
8788
------------------------------
8784
*/
8789
*/
8785
 
8790
 
8786
	TYPE typeCur IS REF CURSOR;
8791
	TYPE typeCur IS REF CURSOR;
8787
 
8792
 
8788
    /*================================================================================================*/
8793
    /*================================================================================================*/
8789
	PROCEDURE ADD_PACKAGE ( newPvId IN NUMBER, ViewId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
8794
	PROCEDURE ADD_PACKAGE ( newPvId IN NUMBER, ViewId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
8790
	PROCEDURE REMOVE_PACKAGE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
8795
	PROCEDURE REMOVE_PACKAGE ( PvId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER );
8791
	FUNCTION GET_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER ) RETURN NUMBER;
8796
	FUNCTION GET_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER ) RETURN NUMBER;
8792
	PROCEDURE GET_VIEW_CONTENT ( RtagId IN NUMBER, ViewId IN NUMBER, RecordSet OUT typeCur );	
8797
	PROCEDURE GET_VIEW_CONTENT ( RtagId IN NUMBER, ViewId IN NUMBER, RecordSet OUT typeCur );
8793
	PROCEDURE CHANGE_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER, NewViewId IN NUMBER );
8798
	PROCEDURE CHANGE_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER, NewViewId IN NUMBER );
-
 
8799
	PROCEDURE MERGE_PACKAGE ( newPvId IN NUMBER, ViewId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER, mergeOperation IN CHAR);
8794
	/*================================================================================================*/
8800
	/*================================================================================================*/
8795
 
8801
 
8796
END PK_PLANNED;
8802
END PK_PLANNED;
8797
/
8803
/
8798
 
8804
 
Line 10390... Line 10396...
10390
		 	   WHERE ar.PV_ID = pvid;			   
10396
		 	   WHERE ar.PV_ID = pvid;			   
10391
			   
10397
			   
10392
		 --- Remove from Jira Issues 
10398
		 --- Remove from Jira Issues 
10393
		 DELETE FROM JIRA_ISSUES jira
10399
		 DELETE FROM JIRA_ISSUES jira
10394
		 	   WHERE jira.PV_ID = pvid;
10400
		 	   WHERE jira.PV_ID = pvid;
-
 
10401
			
-
 
10402
         --- Remove from Package Metrics
-
 
10403
         DELETE FROM package_metrics pm
-
 
10404
              WHERE pm.pv_id = pvid;
10395
			   			   
10405
   			   
10396
         --- Finally Remove From Package Versions
10406
         --- Finally Remove From Package Versions
10397
         --- Get Package name
10407
         --- Get Package name
10398
         SELECT pv.pkg_id
10408
         SELECT pv.pkg_id
10399
           INTO pkgid
10409
           INTO pkgid
10400
           FROM package_versions pv
10410
           FROM package_versions pv
Line 14688... Line 14698...
14688
END;
14698
END;
14689
/*-------------------------------------------------------------------------------------------------------*/        
14699
/*-------------------------------------------------------------------------------------------------------*/        
14690
END PK_BUILDAPI_TEST;
14700
END PK_BUILDAPI_TEST;
14691
/
14701
/
14692
 
14702
 
14693
CREATE OR REPLACE PACKAGE BODY pk_environment
14703
CREATE OR REPLACE PACKAGE BODY                   "PK_ENVIRONMENT"
14694
IS
14704
IS
14695
/*
14705
/*
14696
------------------------------
14706
------------------------------
14697
||  Last Modified:  Rupesh Solanki
14707
||  Last Modified:  G.Huddy
14698
||  Modified Date:  30/Aug/2007
14708
||  Modified Date:  28/May/2008
14699
||  Body Version:   1.2
14709
||  Body Version:   1.3
14700
------------------------------
14710
------------------------------
14701
*/
14711
*/
14702
 
14712
 
14703
   /*-------------------------------------------------------------------------------------------------------*/
14713
   /*-------------------------------------------------------------------------------------------------------*/
14704
   FUNCTION select_environment_area (cdlock IN package_versions.dlocked%TYPE)
14714
   FUNCTION select_environment_area (cdlock IN package_versions.dlocked%TYPE)
14705
      RETURN NUMBER
14715
	  RETURN NUMBER
14706
   IS
14716
   IS
14707
   BEGIN
14717
   BEGIN
14708
       /*
14718
	   /*
14709
      || N - unlocked
14719
	  || N - unlocked
14710
      || Y - release and locked
14720
	  || Y - release and locked
14711
      || P - penging approval
14721
	  || P - penging approval
14712
      || A - approved package ready for auto-build
14722
	  || A - approved package ready for auto-build
14713
      */
14723
	  */
14714
      IF cdlock = 'N' OR cdlock = 'R'
14724
	  IF cdlock = 'N' OR cdlock = 'R'
14715
      THEN
14725
	  THEN
14716
         -- WORK IN PROGRESS --
14726
		 -- WORK IN PROGRESS --
14717
         RETURN 0;
14727
		 RETURN 0;
14718
      ELSIF cdlock = 'P' OR cdlock = 'A'
14728
	  ELSIF cdlock = 'P' OR cdlock = 'A'
14719
      THEN
14729
	  THEN
14720
         -- PENDING --
14730
		 -- PENDING --
14721
         RETURN 1;
14731
		 RETURN 1;
14722
      ELSIF cdlock = 'Y'
14732
	  ELSIF cdlock = 'Y'
14723
      THEN
14733
	  THEN
14724
         -- RELEASED --
14734
		 -- RELEASED --
14725
         RETURN 2;
14735
		 RETURN 2;
14726
      ELSE
14736
	  ELSE
14727
         -- NOT FOUND --
14737
		 -- NOT FOUND --
14728
         raise_application_error
14738
		 raise_application_error
14729
                         (-20000,
14739
						 (-20000,
14730
                             'Cannot decide where to place package. [cDlock='
14740
							 'Cannot decide where to place package. [cDlock='
14731
                          || cdlock
14741
						  || cdlock
14732
                          || ']'
14742
						  || ']'
14733
                         );
14743
						 );
14734
      END IF;
14744
	  END IF;
14735
   END;
14745
   END;
14736
 
14746
 
14737
/*-------------------------------------------------------------------------------------------------------*/
14747
/*-------------------------------------------------------------------------------------------------------*/
14738
   FUNCTION get_package_area (pvid IN NUMBER, rtagid IN NUMBER)
14748
   FUNCTION get_package_area (pvid IN NUMBER, rtagid IN NUMBER)
14739
      RETURN NUMBER
14749
	  RETURN NUMBER
14740
   IS
14750
   IS
14741
      envtab    NUMBER            := -1;
14751
	  envtab	NUMBER			:= -1;
14742
 
14752
 
14743
      CURSOR curarea
14753
	  CURSOR curarea
14744
      IS
14754
	  IS
14745
         SELECT 2 AS envtab
14755
		 SELECT 2 AS envtab
14746
           FROM release_content rc
14756
		   FROM release_content rc
14747
          WHERE rc.rtag_id = rtagid AND rc.pv_id = pvid
14757
		  WHERE rc.rtag_id = rtagid AND rc.pv_id = pvid
14748
         UNION
14758
		 UNION
14749
         SELECT 0 AS envtab
14759
		 SELECT 0 AS envtab
14750
           FROM work_in_progress wip
14760
		   FROM work_in_progress wip
14751
          WHERE wip.rtag_id = rtagid AND wip.pv_id = pvid
14761
		  WHERE wip.rtag_id = rtagid AND wip.pv_id = pvid
14752
         UNION
14762
		 UNION
14753
         SELECT 1 AS envtab
14763
		 SELECT 1 AS envtab
14754
           FROM planned pl
14764
		   FROM planned pl
14755
          WHERE pl.rtag_id = rtagid AND pl.pv_id = pvid;
14765
		  WHERE pl.rtag_id = rtagid AND pl.pv_id = pvid;
14756
 
14766
 
14757
      recarea   curarea%ROWTYPE;
14767
	  recarea   curarea%ROWTYPE;
14758
   BEGIN
14768
   BEGIN
14759
      OPEN curarea;
14769
	  OPEN curarea;
14760
 
14770
 
14761
      FETCH curarea
14771
	  FETCH curarea
14762
       INTO recarea;
14772
	   INTO recarea;
14763
 
14773
 
14764
      IF curarea%FOUND
14774
	  IF curarea%FOUND
14765
      THEN
14775
	  THEN
14766
         envtab := recarea.envtab;
14776
		 envtab := recarea.envtab;
14767
      END IF;
14777
	  END IF;
14768
 
14778
 
14769
      CLOSE curarea;
14779
	  CLOSE curarea;
14770
 
14780
 
14771
      RETURN envtab;
14781
	  RETURN envtab;
14772
   END;
14782
   END;
14773
 
14783
 
14774
/*-------------------------------------------------------------------------------------------------------*/
14784
/*-------------------------------------------------------------------------------------------------------*/
14775
   FUNCTION get_view_location (pvid IN NUMBER, rtagid IN NUMBER)
14785
   FUNCTION get_view_location (pvid IN NUMBER, rtagid IN NUMBER)
14776
      RETURN NUMBER
14786
	  RETURN NUMBER
14777
   IS
14787
   IS
14778
      ispatch   package_versions.dlocked%TYPE;
14788
	  ispatch   package_versions.dlocked%TYPE;
14779
      viewid    NUMBER                          := -1;
14789
	  viewid	NUMBER						  := -1;
14780
 
14790
 
14781
      CURSOR curview
14791
	  CURSOR curview
14782
      IS
14792
	  IS
14783
         SELECT rc.base_view_id AS view_id
14793
		 SELECT rc.base_view_id AS view_id
14784
           FROM release_content rc
14794
		   FROM release_content rc
14785
          WHERE rc.rtag_id = rtagid AND rc.pv_id = pvid
14795
		  WHERE rc.rtag_id = rtagid AND rc.pv_id = pvid
14786
         UNION
14796
		 UNION
14787
         SELECT wip.view_id AS view_id
14797
		 SELECT wip.view_id AS view_id
14788
           FROM work_in_progress wip
14798
		   FROM work_in_progress wip
14789
          WHERE wip.rtag_id = rtagid AND wip.pv_id = pvid
14799
		  WHERE wip.rtag_id = rtagid AND wip.pv_id = pvid
14790
         UNION
14800
		 UNION
14791
         SELECT pl.view_id AS view_id
14801
		 SELECT pl.view_id AS view_id
14792
           FROM planned pl
14802
		   FROM planned pl
14793
          WHERE pl.rtag_id = rtagid AND pl.pv_id = pvid;
14803
		  WHERE pl.rtag_id = rtagid AND pl.pv_id = pvid;
14794
 
14804
 
14795
      recview   curview%ROWTYPE;
14805
	  recview   curview%ROWTYPE;
14796
   BEGIN
14806
   BEGIN
14797
      -- Get dlock state
14807
	  -- Get dlock state
14798
      SELECT pv.is_patch
14808
	  SELECT pv.is_patch
14799
        INTO ispatch
14809
		INTO ispatch
14800
        FROM package_versions pv
14810
		FROM package_versions pv
14801
       WHERE pv.pv_id = pvid;
14811
	   WHERE pv.pv_id = pvid;
-
 
14812
 
-
 
14813
	  -- Decide which view id should package go under.
-
 
14814
	  IF (ispatch != 'Y') OR (ispatch IS NULL)
-
 
14815
	  THEN
-
 
14816
		 -- Get VIEW ID of Package
-
 
14817
		 OPEN curview;
-
 
14818
 
-
 
14819
		 FETCH curview
-
 
14820
		  INTO recview;
-
 
14821
 
-
 
14822
		 IF curview%FOUND
-
 
14823
		 THEN
-
 
14824
			viewid := recview.view_id;
-
 
14825
		 ELSE
-
 
14826
			raise_application_error
-
 
14827
			   (-20000,
-
 
14828
				   'Cannot find view_id to proceed. [PvId='
-
 
14829
				|| pvid
-
 
14830
				|| ']. The current version may not exist in the release anymore.'
-
 
14831
			   );
-
 
14832
		 END IF;
-
 
14833
 
-
 
14834
		 CLOSE curview;
-
 
14835
	  ELSE
-
 
14836
		 -- Get VIEW ID of Patch (view id of parent package)
-
 
14837
		 SELECT rc.base_view_id
-
 
14838
		   INTO viewid
-
 
14839
		   FROM release_content rc, package_patches ppv
-
 
14840
		  WHERE rc.rtag_id = rtagid
-
 
14841
			AND rc.pv_id = ppv.pv_id
-
 
14842
			AND ppv.patch_id = pvid;
-
 
14843
	  END IF;
14802
 
14844
 
14803
      -- Decide which view id should package go under.
-
 
14804
      IF (ispatch != 'Y') OR (ispatch IS NULL)
-
 
14805
      THEN
-
 
14806
         -- Get VIEW ID of Package
-
 
14807
         OPEN curview;
-
 
14808
 
-
 
14809
         FETCH curview
-
 
14810
          INTO recview;
-
 
14811
 
-
 
14812
         IF curview%FOUND
-
 
14813
         THEN
-
 
14814
            viewid := recview.view_id;
-
 
14815
         ELSE
-
 
14816
            raise_application_error
-
 
14817
               (-20000,
-
 
14818
                   'Cannot find view_id to proceed. [PvId='
-
 
14819
                || pvid
-
 
14820
                || ']. The current version may not exist in the release anymore.'
-
 
14821
               );
-
 
14822
         END IF;
-
 
14823
 
-
 
14824
         CLOSE curview;
-
 
14825
      ELSE
-
 
14826
         -- Get VIEW ID of Patch (view id of parent package)
-
 
14827
         SELECT rc.base_view_id
-
 
14828
           INTO viewid
-
 
14829
           FROM release_content rc, package_patches ppv
-
 
14830
          WHERE rc.rtag_id = rtagid
-
 
14831
            AND rc.pv_id = ppv.pv_id
-
 
14832
            AND ppv.patch_id = pvid;
-
 
14833
      END IF;
-
 
14834
 
-
 
14835
      RETURN viewid;
14845
	  RETURN viewid;
14836
   END;
14846
   END;
14837
 
14847
 
14838
/*-------------------------------------------------------------------------------------------------------*/
14848
/*-------------------------------------------------------------------------------------------------------*/
14839
   PROCEDURE add_package (
14849
   PROCEDURE add_package (
14840
      pvid     IN   NUMBER,
14850
	  pvid	 IN   NUMBER,
14841
      viewid   IN   NUMBER,
14851
	  viewid   IN   NUMBER,
14842
      rtagid   IN   NUMBER,
14852
	  rtagid   IN   NUMBER,
14843
      userid   IN   NUMBER
14853
	  userid   IN   NUMBER
14844
   )
14854
   )
14845
   IS
14855
   IS
14846
      dlocked   package_versions.dlocked%TYPE;
14856
	  dlocked   package_versions.dlocked%TYPE;
14847
      envtab    NUMBER;
14857
	  envtab	NUMBER;
14848
   BEGIN
14858
   BEGIN
14849
      IF can_edit_pkg_in_project (pvid, rtagid) = 1
14859
	  IF can_edit_pkg_in_project (pvid, rtagid) = 1
14850
      THEN
14860
	  THEN
14851
         -- Get dlock state
14861
		 -- Get dlock state
14852
         SELECT pv.dlocked
14862
		 SELECT pv.dlocked
14853
           INTO dlocked
14863
		   INTO dlocked
14854
           FROM package_versions pv
14864
		   FROM package_versions pv
14855
          WHERE pv.pv_id = pvid;
14865
		  WHERE pv.pv_id = pvid;
14856
 
14866
 
14857
         -- Get which area should go under
14867
		 -- Get which area should go under
14858
         envtab := select_environment_area (dlocked);
14868
		 envtab := select_environment_area (dlocked);
14859
         -- Log
14869
		 -- Log
14860
         log_action (pvid, 'action', userid, 'Start of Package Add...');
14870
		 log_action (pvid, 'action', userid, 'Start of Package Add...');
14861
 
14871
 
14862
         -- Remove Package
14872
		 -- Remove Package
14863
         IF envtab = 0
14873
		 IF envtab = 0
14864
         THEN
14874
		 THEN
14865
            -- WORK IN PROGRESS --
14875
			-- WORK IN PROGRESS --
14866
            pk_work_in_progress.add_package (pvid, viewid, rtagid, userid);
14876
			pk_work_in_progress.add_package (pvid, viewid, rtagid, userid);
14867
         ELSIF envtab = 1
14877
		 ELSIF envtab = 1
14868
         THEN
14878
		 THEN
14869
            -- PENDING --
14879
			-- PENDING --
14870
            pk_planned.add_package (pvid, viewid, rtagid, userid);
14880
			pk_planned.add_package (pvid, viewid, rtagid, userid);
14871
         ELSIF envtab = 2
14881
		 ELSIF envtab = 2
14872
         THEN
14882
		 THEN
14873
            -- RELEASED --
14883
			-- RELEASED --
14874
            -- NOTE: this package will be replaced with matching package
14884
			-- NOTE: this package will be replaced with matching package
14875
            pk_release.add_package (pvid, viewid, rtagid, userid);
14885
			pk_release.add_package (pvid, viewid, rtagid, userid);
14876
            -- Now do post Release Actions
14886
			-- Now do post Release Actions
14877
            pk_release.run_post_actions (pvid, rtagid);
14887
			pk_release.run_post_actions (pvid, rtagid);
14878
         END IF;
14888
		 END IF;
14879
 
14889
 
14880
         -- Log
14890
		 -- Log
14881
         log_action (pvid, 'action', userid, 'End of Package Add...');
14891
		 log_action (pvid, 'action', userid, 'End of Package Add...');
14882
      END IF;
14892
	  END IF;
14883
   END;
14893
   END;
14884
 
14894
 
14885
/*-------------------------------------------------------------------------------------------------------*/
14895
/*-------------------------------------------------------------------------------------------------------*/
14886
   PROCEDURE add_package_bulk (
14896
   PROCEDURE add_package_bulk (
14887
      pvidlist   IN   VARCHAR2,
14897
	  pvidlist   IN   VARCHAR2,
14888
      viewid     IN   NUMBER,
14898
	  viewid	 IN   NUMBER,
14889
      rtagid     IN   NUMBER,
14899
	  rtagid	 IN   NUMBER,
14890
      userid     IN   NUMBER
14900
	  userid	 IN   NUMBER
14891
   )
14901
   )
14892
   IS
14902
   IS
14893
      nidcollector   relmgr_number_tab_t            := relmgr_number_tab_t
14903
	  nidcollector   relmgr_number_tab_t			:= relmgr_number_tab_t
14894
                                                                          ();
14904
																		  ();
14895
      dlocked        package_versions.dlocked%TYPE;
14905
	  dlocked		package_versions.dlocked%TYPE;
14896
      pvid           NUMBER;
14906
	  pvid		   NUMBER;
14897
      envtab         NUMBER;
14907
	  envtab		 NUMBER;
14898
   BEGIN
14908
   BEGIN
14899
      /*--------------- Business Rules Here -------------------*/
14909
	  /*--------------- Business Rules Here -------------------*/
14900
      IF (pvidlist IS NULL)
14910
	  IF (pvidlist IS NULL)
14901
      THEN
14911
	  THEN
14902
         raise_application_error (-20000,
14912
		 raise_application_error (-20000,
14903
                                  'Please select at least one package.'
14913
								  'Please select at least one package.'
14904
                                 );
14914
								 );
14905
      END IF;
14915
	  END IF;
14906
 
14916
 
14907
/*-------------------------------------------------------*/
14917
/*-------------------------------------------------------*/
14908
      nidcollector := in_list_number (pvidlist);
14918
	  nidcollector := in_list_number (pvidlist);
14909
 
14919
 
14910
      FOR i IN 1 .. nidcollector.COUNT
14920
	  FOR i IN 1 .. nidcollector.COUNT
14911
      LOOP
14921
	  LOOP
14912
         pvid := nidcollector (i);
14922
		 pvid := nidcollector (i);
14913
         add_package (pvid, viewid, rtagid, userid);
14923
		 add_package (pvid, viewid, rtagid, userid);
14914
      END LOOP;
14924
	  END LOOP;
14915
   END;
14925
   END;
14916
 
14926
 
14917
/*-------------------------------------------------------------------------------------------------------*/
14927
/*-------------------------------------------------------------------------------------------------------*/
14918
   PROCEDURE replace_package (
14928
   PROCEDURE replace_package (
14919
      newpvid   IN   NUMBER,
14929
	  newpvid   IN   NUMBER,
14920
      oldpvid   IN   NUMBER,
14930
	  oldpvid   IN   NUMBER,
14921
      rtagid    IN   NUMBER,
14931
	  rtagid	IN   NUMBER,
14922
      userid    IN   NUMBER
14932
	  userid	IN   NUMBER
14923
   )
14933
   )
14924
   IS
14934
   IS
14925
      dlocked        package_versions.dlocked%TYPE;
14935
	  dlocked		package_versions.dlocked%TYPE;
14926
      viewid         NUMBER;
14936
	  viewid		 NUMBER;
14927
      envtab         NUMBER;
14937
	  envtab		 NUMBER;
14928
      ROWCOUNT       NUMBER;
14938
	  ROWCOUNT	   NUMBER;
14929
      creleasemode   CHAR (1);
14939
	  creleasemode   CHAR (1);
14930
      npkgid         NUMBER;
14940
	  npkgid		 NUMBER;
14931
   BEGIN
14941
   BEGIN
14932
      /*--------------- Business Rules Here -------------------*/
14942
	  /*--------------- Business Rules Here -------------------*/
14933
      -- Check if oldPvId exists. It could have been removed
14943
	  -- Check if oldPvId exists. It could have been removed
14934
      SELECT COUNT (pv.pv_id)
14944
	  SELECT COUNT (pv.pv_id)
14935
        INTO ROWCOUNT
14945
		INTO ROWCOUNT
14936
        FROM package_versions pv
14946
		FROM package_versions pv
14937
       WHERE pv.pv_id = oldpvid;
14947
	   WHERE pv.pv_id = oldpvid;
14938
 
14948
 
14939
/*-------------------------------------------------------*/
14949
/*-------------------------------------------------------*/
14940
 
14950
 
14941
      /* This procedure is usually used by "History" option in Release Manager */
14951
	  /* This procedure is usually used by "History" option in Release Manager */
14942
 
-
 
14943
      -- Get dlock state
-
 
14944
      SELECT pv.dlocked
-
 
14945
        INTO dlocked
-
 
14946
        FROM package_versions pv
-
 
14947
       WHERE pv.pv_id = newpvid;
-
 
14948
 
-
 
14949
      -- Get VIEW_ID ---
-
 
14950
      IF ROWCOUNT = 1
-
 
14951
      THEN
-
 
14952
         viewid := get_view_location (oldpvid, rtagid);
-
 
14953
      ELSE
-
 
14954
         -- Set ViewID to default
-
 
14955
         viewid := 7;
-
 
14956
      END IF;
-
 
14957
 
-
 
14958
      -- Get which area should go under
-
 
14959
      envtab := select_environment_area (dlocked);
-
 
14960
      -- Log
-
 
14961
      log_action (oldpvid, 'action', userid, 'Start of Package Replace...');
-
 
14962
 
14952
 
-
 
14953
	  -- Get dlock state
-
 
14954
	  SELECT pv.dlocked
-
 
14955
		INTO dlocked
-
 
14956
		FROM package_versions pv
-
 
14957
	   WHERE pv.pv_id = newpvid;
-
 
14958
 
-
 
14959
	  -- Get VIEW_ID ---
-
 
14960
	  IF ROWCOUNT = 1
-
 
14961
	  THEN
-
 
14962
		 viewid := get_view_location (oldpvid, rtagid);
-
 
14963
	  ELSE
-
 
14964
		 -- Set ViewID to default
-
 
14965
		 viewid := 7;
-
 
14966
	  END IF;
-
 
14967
 
-
 
14968
	  -- Get which area should go under
-
 
14969
	  envtab := select_environment_area (dlocked);
-
 
14970
	  -- Log
-
 
14971
	  log_action (oldpvid, 'action', userid, 'Start of Package Replace...');
-
 
14972
 
14963
      -- Replace package
14973
	  -- Replace package
14964
      IF envtab = 0
14974
	  IF envtab = 0
14965
      THEN
14975
	  THEN
14966
         -- WORK IN PROGRESS --
14976
		 -- WORK IN PROGRESS --
14967
 
14977
 
14968
         -- Delete old package
14978
		 -- Delete old package
14969
         pk_work_in_progress.remove_package (oldpvid, rtagid, userid);
14979
		 pk_work_in_progress.remove_package (oldpvid, rtagid, userid);
14970
         -- Add new package
14980
		 -- Add new package
14971
         pk_work_in_progress.add_package (newpvid, viewid, rtagid, userid);
14981
		 pk_work_in_progress.add_package (newpvid, viewid, rtagid, userid);
14972
      ELSIF envtab = 1
14982
	  ELSIF envtab = 1
14973
      THEN
14983
	  THEN
14974
         -- PENDING --
14984
		 -- PENDING --
-
 
14985
 
-
 
14986
		 -- Delete old package
-
 
14987
		 pk_planned.remove_package (oldpvid, rtagid, userid);
-
 
14988
		 -- Add new package
-
 
14989
		 pk_planned.add_package (newpvid, viewid, rtagid, userid);
-
 
14990
	  ELSIF envtab = 2
-
 
14991
	  THEN
-
 
14992
		 -- RELEASED --
-
 
14993
 
-
 
14994
		 -- Delete old package
-
 
14995
		 pk_release.remove_package (oldpvid, rtagid, userid);
-
 
14996
		 -- Add new package
-
 
14997
		 pk_release.add_package (newpvid, viewid, rtagid, userid);
-
 
14998
		 -- Now do post Release Actions
-
 
14999
		 pk_release.run_post_actions (newpvid, rtagid);
-
 
15000
	  END IF;
14975
 
15001
 
14976
         -- Delete old package
-
 
14977
         pk_planned.remove_package (oldpvid, rtagid, userid);
-
 
14978
         -- Add new package
-
 
14979
         pk_planned.add_package (newpvid, viewid, rtagid, userid);
-
 
14980
      ELSIF envtab = 2
-
 
14981
      THEN
-
 
14982
         -- RELEASED --
-
 
14983
 
-
 
14984
         -- Delete old package
-
 
14985
         pk_release.remove_package (oldpvid, rtagid, userid);
-
 
14986
         -- Add new package
-
 
14987
         pk_release.add_package (newpvid, viewid, rtagid, userid);
-
 
14988
         -- Now do post Release Actions
-
 
14989
         pk_release.run_post_actions (newpvid, rtagid);
-
 
14990
      END IF;
-
 
14991
 
-
 
14992
      -- Log
15002
	  -- Log
14993
      log_action (oldpvid, 'action', userid, 'End of Package Replace...');
15003
	  log_action (oldpvid, 'action', userid, 'End of Package Replace...');
14994
   END;
15004
   END;
14995
 
15005
 
14996
/*-------------------------------------------------------------------------------------------------------*/
15006
/*-------------------------------------------------------------------------------------------------------*/
14997
   FUNCTION remove_package (
15007
   FUNCTION remove_package (
14998
      pvid          IN   NUMBER,
15008
	  pvid		  IN   NUMBER,
14999
      rtagid        IN   NUMBER,
15009
	  rtagid		IN   NUMBER,
15000
      userid        IN   NUMBER,
15010
	  userid		IN   NUMBER,
15001
      forceremove   IN   CHAR
15011
	  forceremove   IN   CHAR
15002
   )
15012
   )
15003
      RETURN NUMBER
15013
	  RETURN NUMBER
15004
   IS
15014
   IS
15005
      envtab        NUMBER;
15015
	  envtab		NUMBER;
15006
      isused        BOOLEAN;
15016
	  isused		BOOLEAN;
15007
      recordcount   NUMBER;
15017
	  recordcount   NUMBER;
15008
   BEGIN
15018
   BEGIN
15009
/*--------------- Business Rules Here -------------------*/
15019
/*--------------- Business Rules Here -------------------*/
15010
/*-------------------------------------------------------*/
15020
/*-------------------------------------------------------*/
15011
 
15021
 
15012
      -- Find location of package
15022
	  -- Find location of package
15013
      envtab := get_package_area (pvid, rtagid);
15023
	  envtab := get_package_area (pvid, rtagid);
15014
 
15024
 
15015
      -- Remove Package
15025
	  -- Remove Package
15016
      IF envtab = 0
15026
	  IF envtab = 0
15017
      THEN
15027
	  THEN
15018
         -- WORK IN PROGRESS --
15028
		 -- WORK IN PROGRESS --
15019
         -- Delete package
15029
		 -- Delete package
15020
         pk_work_in_progress.remove_package (pvid, rtagid, userid);
15030
		 pk_work_in_progress.remove_package (pvid, rtagid, userid);
15021
         RETURN 0;
15031
		 RETURN 0;
15022
      ELSIF envtab = 1
15032
	  ELSIF envtab = 1
15023
      THEN
15033
	  THEN
15024
         -- PENDING --
15034
		 -- PENDING --
15025
         -- Delete package
15035
		 -- Delete package
15026
         pk_planned.remove_package (pvid, rtagid, userid);
15036
		 pk_planned.remove_package (pvid, rtagid, userid);
15027
         RETURN 0;
15037
		 RETURN 0;
15028
      ELSIF envtab = 2
15038
	  ELSIF envtab = 2
15029
      THEN
15039
	  THEN
15030
         -- RELEASED --
15040
		 -- RELEASED --
15031
 
15041
 
15032
         -- Check if is used by other packages
15042
		 -- Check if is used by other packages
15033
         isused := TRUE;
15043
		 isused := TRUE;
15034
 
15044
 
15035
         IF forceremove = 'N'
15045
		 IF forceremove = 'N'
15036
         THEN
15046
		 THEN
15037
            SELECT COUNT (pv.pv_id)
15047
			SELECT COUNT (pv.pv_id)
15038
              INTO recordcount
15048
			  INTO recordcount
15039
              FROM (SELECT dpv.pkg_id, dpv.v_ext
15049
			  FROM (SELECT dpv.pkg_id, dpv.v_ext
15040
                      FROM release_content rc,
15050
					  FROM release_content rc,
15041
                           package_dependencies dep,
15051
						   package_dependencies dep,
15042
                           package_versions dpv
15052
						   package_versions dpv
15043
                     WHERE rc.rtag_id = rtagid
15053
					 WHERE rc.rtag_id = rtagid
15044
                       AND rc.pv_id = dep.pv_id
15054
					   AND rc.pv_id = dep.pv_id
15045
                       AND dep.dpv_id = dpv.pv_id) rdep,
15055
					   AND dep.dpv_id = dpv.pv_id) rdep,
15046
                   package_versions pv
15056
				   package_versions pv
15047
             WHERE pv.pkg_id = rdep.pkg_id
15057
			 WHERE pv.pkg_id = rdep.pkg_id
15048
               AND NVL (pv.v_ext, '|LINK_A_NULL|') =
15058
			   AND NVL (pv.v_ext, '|LINK_A_NULL|') =
15049
                                             NVL (rdep.v_ext, '|LINK_A_NULL|')
15059
											 NVL (rdep.v_ext, '|LINK_A_NULL|')
15050
               AND pv.pv_id = pvid;
15060
			   AND pv.pv_id = pvid;
15051
 
15061
 
15052
            IF recordcount > 0
15062
			IF recordcount > 0
15053
            THEN
15063
			THEN
15054
               RETURN 1;                    -- Return 1 as package being used
15064
			   RETURN 1;					-- Return 1 as package being used
15055
            ELSE
15065
			ELSE
15056
               isused := FALSE;
15066
			   isused := FALSE;
15057
            END IF;
15067
			END IF;
15058
         END IF;
15068
		 END IF;
15059
 
15069
 
15060
         IF forceremove = 'Y' OR NOT isused
15070
		 IF forceremove = 'Y' OR NOT isused
15061
         THEN
15071
		 THEN
15062
            -- Delete old package
15072
			-- Delete old package
15063
            pk_release.remove_package (pvid, rtagid, userid);
15073
			pk_release.remove_package (pvid, rtagid, userid);
15064
            -- Now do post Release Actions
15074
			-- Now do post Release Actions
15065
            pk_release.run_post_actions (pvid, rtagid);
15075
			pk_release.run_post_actions (pvid, rtagid);
15066
            RETURN 0;
15076
			RETURN 0;
15067
         END IF;
15077
		 END IF;
15068
      END IF;
15078
	  END IF;
15069
   END;
15079
   END;
15070
 
15080
 
15071
/*-------------------------------------------------------------------------------------------------------*/
15081
/*-------------------------------------------------------------------------------------------------------*/
-
 
15082
   -- DEVI-45275 added the return of the new "operation" column in the recordset.
-
 
15083
 
15072
   PROCEDURE get_environment_items (
15084
   PROCEDURE get_environment_items (
15073
      viewtype           IN       NUMBER,
15085
	  viewtype		   IN	   NUMBER,
15074
      userid             IN       NUMBER,
15086
	  userid			 IN	   NUMBER,
15075
      rtagid             IN       NUMBER,
15087
	  rtagid			 IN	   NUMBER,
15076
      sviewidshowlist    IN       VARCHAR2,
15088
	  sviewidshowlist	IN	   VARCHAR2,
15077
      ntruerecordcount   OUT      NUMBER,
15089
	  ntruerecordcount   OUT	  NUMBER,
15078
      recordset          OUT      typecur
15090
	  recordset		  OUT	  typecur
15079
   )
15091
   )
15080
   IS
15092
   IS
15081
   BEGIN
15093
   BEGIN
15082
      -- Get true record count because views can give false count
15094
	  -- Get true record count because views can give false count
15083
      SELECT COUNT (pl.pv_id)
15095
	  SELECT COUNT (pl.pv_id)
15084
        INTO ntruerecordcount
15096
		INTO ntruerecordcount
15085
        FROM environment_view pl
15097
		FROM environment_view pl
15086
       WHERE pl.rtag_id = rtagid;
15098
	   WHERE pl.rtag_id = rtagid;
15087
 
15099
 
15088
      IF viewtype = 1
15100
	  IF viewtype = 1
15089
      THEN
15101
	  THEN
15090
         /*--- GUEST VIEW ---*/
15102
		 /*--- GUEST VIEW ---*/
15091
         OPEN recordset FOR
15103
		 OPEN recordset FOR
15092
            SELECT   *
15104
			SELECT   *
15093
                FROM (
15105
				FROM (
15094
                      /* Base Views collapsed */
15106
					  /* Base Views collapsed */
15095
                      SELECT DISTINCT vi.view_id, vi.view_name,
15107
					  SELECT DISTINCT vi.view_id, vi.view_name,
15096
                                      TO_NUMBER (NULL) AS pkg_state,
15108
									  TO_NUMBER (NULL) AS pkg_state,
15097
                                      TO_NUMBER (NULL) AS deprecated_state,
15109
									  TO_NUMBER (NULL) AS deprecated_state,
15098
                                      TO_NUMBER (NULL) AS pv_id,
15110
									  TO_NUMBER (NULL) AS pv_id,
15099
                                      NULL AS pkg_name, NULL AS pkg_version,
15111
									  NULL AS pkg_name, NULL AS pkg_version,
15100
                                      NULL AS dlocked, NULL AS pv_description
15112
									  NULL AS dlocked, NULL AS pv_description,
15101
                                 FROM environment_view rel, views vi
15113
									  rel.operation
15102
                                WHERE rel.view_id = vi.view_id
15114
								 FROM environment_view rel, views vi
15103
                                  AND rtag_id = rtagid
15115
								WHERE rel.view_id = vi.view_id
15104
                                  AND rel.view_id NOT IN (
15116
								  AND rtag_id = rtagid
15105
                                         SELECT *
15117
								  AND rel.view_id NOT IN (
15106
                                           FROM THE
15118
										 SELECT *
15107
                                                   (SELECT CAST
15119
										   FROM THE
15108
                                                              (in_list_number
15120
												   (SELECT CAST
15109
                                                                  (sviewidshowlist
15121
															  (in_list_number
15110
                                                                  ) AS relmgr_number_tab_t
15122
																  (sviewidshowlist
15111
                                                              )
15123
																  ) AS relmgr_number_tab_t
15112
                                                      FROM DUAL
15124
															  )
15113
                                                   ))
15125
													  FROM DUAL
15114
                      UNION
15126
												   ))
15115
                      /* Base Views expanded */
15127
					  UNION
15116
                      SELECT vi.view_id, vi.view_name,
15128
					  /* Base Views expanded */
15117
                             DECODE (rel.pkg_state,
15129
					  SELECT vi.view_id, vi.view_name,
15118
                                     NULL, 0,
15130
							 DECODE (rel.pkg_state,
15119
                                     rel.pkg_state
15131
									 NULL, 0,
15120
                                    ) AS pkg_state,
15132
									 rel.pkg_state
15121
                             rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15133
									) AS pkg_state,
15122
                             pv.pkg_version, pv.dlocked, pv.pv_description
15134
							 rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15123
                        FROM environment_view rel,
15135
							 pv.pkg_version, pv.dlocked, pv.pv_description,
15124
                             PACKAGES pkg,
15136
							 rel.operation
15125
                             package_versions pv,
15137
						FROM environment_view rel,
15126
                             views vi
15138
							 PACKAGES pkg,
15127
                       WHERE pv.pkg_id = pkg.pkg_id
15139
							 package_versions pv,
15128
                         AND rel.pv_id = pv.pv_id
15140
							 views vi
15129
                         AND rel.view_id = vi.view_id
15141
					   WHERE pv.pkg_id = pkg.pkg_id
15130
                         AND rel.view_id IN (
15142
						 AND rel.pv_id = pv.pv_id
15131
                                SELECT *
15143
						 AND rel.view_id = vi.view_id
15132
                                  FROM THE
15144
						 AND rel.view_id IN (
15133
                                          (SELECT CAST
15145
								SELECT *
15134
                                                     (in_list_number
15146
								  FROM THE
15135
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15147
										  (SELECT CAST
15136
                                                     )
15148
													 (in_list_number
15137
                                             FROM DUAL
15149
															  (sviewidshowlist) AS relmgr_number_tab_t
15138
                                          ))
15150
													 )
15139
                         AND rtag_id = rtagid) ord
15151
											 FROM DUAL
15140
            ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15152
										  ))
15141
      ELSIF viewtype = 2
15153
						 AND rtag_id = rtagid) ord
15142
      THEN
15154
			ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15143
         /*--- PERSONAL VIEW ---*/
15155
	  ELSIF viewtype = 2
15144
         OPEN recordset FOR
15156
	  THEN
15145
            SELECT   *
15157
		 /*--- PERSONAL VIEW ---*/
15146
                FROM (
15158
		 OPEN recordset FOR
15147
                      /* Base Views collapsed */
15159
			SELECT   *
15148
                      SELECT DISTINCT vi.view_id, vi.view_name,
15160
				FROM (
15149
                                      TO_NUMBER (NULL) AS pkg_state,
15161
					  /* Base Views collapsed */
15150
                                      TO_NUMBER (NULL) AS deprecated_state,
15162
					  SELECT DISTINCT vi.view_id, vi.view_name,
15151
                                      TO_NUMBER (NULL) AS pv_id,
15163
									  TO_NUMBER (NULL) AS pkg_state,
15152
                                      NULL AS pkg_name, NULL AS pkg_version,
15164
									  TO_NUMBER (NULL) AS deprecated_state,
15153
                                      NULL AS dlocked, NULL AS pv_description
15165
									  TO_NUMBER (NULL) AS pv_id,
15154
                                 FROM environment_view rel,
15166
									  NULL AS pkg_name, NULL AS pkg_version,
15155
                                      view_settings vs,
15167
									  NULL AS dlocked, NULL AS pv_description,
15156
                                      views vi
15168
									  rel.operation
15157
                                WHERE rel.view_id = vi.view_id
15169
								 FROM environment_view rel,
15158
                                  AND vs.view_id = rel.view_id
15170
									  view_settings vs,
15159
                                  AND vs.user_id = userid
15171
									  views vi
15160
                                  AND rtag_id = rtagid
15172
								WHERE rel.view_id = vi.view_id
15161
                                  AND rel.view_id NOT IN (
15173
								  AND vs.view_id = rel.view_id
15162
                                         SELECT *
15174
								  AND vs.user_id = userid
15163
                                           FROM THE
15175
								  AND rtag_id = rtagid
15164
                                                   (SELECT CAST
15176
								  AND rel.view_id NOT IN (
15165
                                                              (in_list_number
15177
										 SELECT *
15166
                                                                  (sviewidshowlist
15178
										   FROM THE
15167
                                                                  ) AS relmgr_number_tab_t
15179
												   (SELECT CAST
15168
                                                              )
15180
															  (in_list_number
15169
                                                      FROM DUAL
15181
																  (sviewidshowlist
15170
                                                   ))
15182
																  ) AS relmgr_number_tab_t
15171
                      UNION
15183
															  )
15172
                      /* Base Views expanded */
15184
													  FROM DUAL
15173
                      SELECT vi.view_id, vi.view_name,
15185
												   ))
15174
                             DECODE (rel.pkg_state,
15186
					  UNION
15175
                                     NULL, 0,
15187
					  /* Base Views expanded */
15176
                                     rel.pkg_state
15188
					  SELECT vi.view_id, vi.view_name,
15177
                                    ) AS pkg_state,
15189
							 DECODE (rel.pkg_state,
15178
                             rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15190
									 NULL, 0,
15179
                             pv.pkg_version, pv.dlocked, pv.pv_description
15191
									 rel.pkg_state
15180
                        FROM environment_view rel,
15192
									) AS pkg_state,
15181
                             PACKAGES pkg,
15193
							 rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15182
                             package_versions pv,
15194
							 pv.pkg_version, pv.dlocked, pv.pv_description,
15183
                             views vi,
15195
							 rel.operation
15184
                             view_settings vs
15196
						FROM environment_view rel,
15185
                       WHERE pv.pkg_id = pkg.pkg_id
15197
							 PACKAGES pkg,
15186
                         AND rel.pv_id = pv.pv_id
15198
							 package_versions pv,
15187
                         AND rel.view_id = vi.view_id
15199
							 views vi,
15188
                         AND vs.view_id = vi.view_id
15200
							 view_settings vs
15189
                         AND vs.user_id = userid
15201
					   WHERE pv.pkg_id = pkg.pkg_id
15190
                         AND rel.view_id IN (
15202
						 AND rel.pv_id = pv.pv_id
15191
                                SELECT *
15203
						 AND rel.view_id = vi.view_id
15192
                                  FROM THE
15204
						 AND vs.view_id = vi.view_id
15193
                                          (SELECT CAST
15205
						 AND vs.user_id = userid
15194
                                                     (in_list_number
15206
						 AND rel.view_id IN (
15195
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15207
								SELECT *
15196
                                                     )
15208
								  FROM THE
15197
                                             FROM DUAL
15209
										  (SELECT CAST
15198
                                          ))
15210
													 (in_list_number
15199
                         AND rtag_id = rtagid
15211
															  (sviewidshowlist) AS relmgr_number_tab_t
15200
                      UNION
15212
													 )
15201
                      /* Private Views collapsed */
15213
											 FROM DUAL
15202
                      SELECT vi.view_id, vi.view_name,
15214
										  ))
15203
                             TO_NUMBER (NULL) AS pkg_state,
15215
						 AND rtag_id = rtagid
15204
                             TO_NUMBER (NULL) AS deprecated_state,
15216
					  UNION
15205
                             TO_NUMBER (NULL) AS pv_id, NULL AS pkg_name,
15217
					  /* Private Views collapsed */
15206
                             NULL AS pkg_version, NULL AS dlocked,
15218
					  SELECT vi.view_id, vi.view_name,
15207
                             NULL AS pv_description
15219
							 TO_NUMBER (NULL) AS pkg_state,
15208
                        FROM view_settings vs,
15220
							 TO_NUMBER (NULL) AS deprecated_state,
15209
                             view_def vd,
15221
							 TO_NUMBER (NULL) AS pv_id, NULL AS pkg_name,
15210
                             views vi,
15222
							 NULL AS pkg_version, NULL AS dlocked,
15211
                             environment_view rel,
15223
							 NULL AS pv_description,
15212
                             package_versions pv
15224
							 rel.operation
15213
                       WHERE vs.view_id = vi.view_id
15225
						FROM view_settings vs,
15214
                         AND rel.pv_id = pv.pv_id
15226
							 view_def vd,
15215
                         AND vd.pkg_id = pv.pkg_id
15227
							 views vi,
15216
                         AND vd.view_id = vi.view_id
15228
							 environment_view rel,
15217
                         AND vi.base_view = 'N'
15229
							 package_versions pv
15218
                         AND rel.rtag_id = rtagid
15230
					   WHERE vs.view_id = vi.view_id
15219
                         AND vs.user_id = userid
15231
						 AND rel.pv_id = pv.pv_id
15220
                         AND vi.view_id NOT IN (
15232
						 AND vd.pkg_id = pv.pkg_id
15221
                                SELECT *
15233
						 AND vd.view_id = vi.view_id
15222
                                  FROM THE
15234
						 AND vi.base_view = 'N'
15223
                                          (SELECT CAST
15235
						 AND rel.rtag_id = rtagid
15224
                                                     (in_list_number
15236
						 AND vs.user_id = userid
15225
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15237
						 AND vi.view_id NOT IN (
15226
                                                     )
15238
								SELECT *
15227
                                             FROM DUAL
15239
								  FROM THE
15228
                                          ))
15240
										  (SELECT CAST
15229
                      UNION
15241
													 (in_list_number
15230
                      /* Private Views expanded */
15242
															  (sviewidshowlist) AS relmgr_number_tab_t
15231
                      SELECT vi.view_id, vi.view_name,
15243
													 )
15232
                             DECODE (rel.pkg_state,
15244
											 FROM DUAL
15233
                                     NULL, 0,
15245
										  ))
15234
                                     rel.pkg_state
15246
					  UNION
15235
                                    ) AS pkg_state,
15247
					  /* Private Views expanded */
15236
                             rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15248
					  SELECT vi.view_id, vi.view_name,
15237
                             pv.pkg_version, pv.dlocked, pv.pv_description
15249
							 DECODE (rel.pkg_state,
15238
                        FROM users usr,
15250
									 NULL, 0,
15239
                             view_settings vs,
15251
									 rel.pkg_state
15240
                             view_def vd,
15252
									) AS pkg_state,
15241
                             views vi,
15253
							 rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15242
                             environment_view rel,
15254
							 pv.pkg_version, pv.dlocked, pv.pv_description,
15243
                             PACKAGES pkg,
15255
							 rel.operation
15244
                             package_versions pv
15256
						FROM users usr,
15245
                       WHERE vs.user_id = usr.user_id
15257
							 view_settings vs,
15246
                         AND vs.view_id = vi.view_id
15258
							 view_def vd,
15247
                         AND vd.view_id = vi.view_id
15259
							 views vi,
15248
                         AND pv.pkg_id = pkg.pkg_id
15260
							 environment_view rel,
15249
                         AND rel.pv_id = pv.pv_id
15261
							 PACKAGES pkg,
15250
                         AND rel.rtag_id = rtagid
15262
							 package_versions pv
15251
                         AND vd.pkg_id = pkg.pkg_id
15263
					   WHERE vs.user_id = usr.user_id
15252
                         AND vi.base_view = 'N'
15264
						 AND vs.view_id = vi.view_id
15253
                         AND vi.view_id IN (
15265
						 AND vd.view_id = vi.view_id
15254
                                SELECT *
15266
						 AND pv.pkg_id = pkg.pkg_id
15255
                                  FROM THE
15267
						 AND rel.pv_id = pv.pv_id
15256
                                          (SELECT CAST
15268
						 AND rel.rtag_id = rtagid
15257
                                                     (in_list_number
15269
						 AND vd.pkg_id = pkg.pkg_id
15258
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15270
						 AND vi.base_view = 'N'
15259
                                                     )
15271
						 AND vi.view_id IN (
15260
                                             FROM DUAL
15272
								SELECT *
15261
                                          ))
15273
								  FROM THE
15262
                         AND usr.user_id = userid) ord
15274
										  (SELECT CAST
15263
            ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15275
													 (in_list_number
15264
      END IF;
15276
															  (sviewidshowlist) AS relmgr_number_tab_t
-
 
15277
													 )
-
 
15278
											 FROM DUAL
-
 
15279
										  ))
-
 
15280
						 AND usr.user_id = userid) ord
-
 
15281
			ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
-
 
15282
	  END IF;
15265
   END;
15283
   END;
15266
 
15284
 
15267
/*-------------------------------------------------------------------------------------------------------*/
15285
/*-------------------------------------------------------------------------------------------------------*/
15268
   PROCEDURE get_released_items (
15286
   PROCEDURE get_released_items (
15269
      viewtype           IN       NUMBER,
15287
	  viewtype		   IN	   NUMBER,
15270
      userid             IN       NUMBER,
15288
	  userid			 IN	   NUMBER,
15271
      rtagid             IN       NUMBER,
15289
	  rtagid			 IN	   NUMBER,
15272
      sviewidshowlist    IN       VARCHAR2,
15290
	  sviewidshowlist	IN	   VARCHAR2,
15273
      ntruerecordcount   OUT      NUMBER,
15291
	  ntruerecordcount   OUT	  NUMBER,
15274
      recordset          OUT      typecur
15292
	  recordset		  OUT	  typecur
15275
   )
15293
   )
15276
   IS
15294
   IS
15277
   BEGIN
15295
   BEGIN
15278
      -- Get true record count because views can give false count
15296
	  -- Get true record count because views can give false count
15279
      SELECT COUNT (rc.pv_id)
15297
	  SELECT COUNT (rc.pv_id)
15280
        INTO ntruerecordcount
15298
		INTO ntruerecordcount
15281
        FROM release_content rc
15299
		FROM release_content rc
15282
       WHERE rc.rtag_id = rtagid;
15300
	   WHERE rc.rtag_id = rtagid;
15283
 
15301
 
15284
      IF viewtype = 1
15302
	  IF viewtype = 1
15285
      THEN
15303
	  THEN
15286
         /*--- GUEST VIEW ---*/
15304
		 /*--- GUEST VIEW ---*/
15287
         OPEN recordset FOR
15305
		 OPEN recordset FOR
15288
            SELECT   *
15306
			SELECT   *
15289
                FROM (
15307
				FROM (
15290
                      /* Base Views collapsed */
15308
					  /* Base Views collapsed */
15291
                      SELECT DISTINCT vi.view_id, vi.view_name,
15309
					  SELECT DISTINCT vi.view_id, vi.view_name,
15292
                                      TO_NUMBER (NULL) AS pkg_state,
15310
									  TO_NUMBER (NULL) AS pkg_state,
15293
                                      TO_NUMBER (NULL) AS deprecated_state,
15311
									  TO_NUMBER (NULL) AS deprecated_state,
15294
                                      TO_NUMBER (NULL) AS pv_id,
15312
									  TO_NUMBER (NULL) AS pv_id,
15295
                                      NULL AS pkg_name, NULL AS pkg_version,
15313
									  NULL AS pkg_name, NULL AS pkg_version,
15296
                                      NULL AS dlocked, NULL AS pv_description
15314
									  NULL AS dlocked, NULL AS pv_description
15297
                                 FROM release_content rel, views vi
15315
								 FROM release_content rel, views vi
15298
                                WHERE rel.base_view_id = vi.view_id
15316
								WHERE rel.base_view_id = vi.view_id
15299
                                  AND rtag_id = rtagid
15317
								  AND rtag_id = rtagid
15300
                                  AND rel.base_view_id NOT IN (
15318
								  AND rel.base_view_id NOT IN (
15301
                                         SELECT *
15319
										 SELECT *
15302
                                           FROM THE
15320
										   FROM THE
15303
                                                   (SELECT CAST
15321
												   (SELECT CAST
15304
                                                              (in_list_number
15322
															  (in_list_number
15305
                                                                  (sviewidshowlist
15323
																  (sviewidshowlist
15306
                                                                  ) AS relmgr_number_tab_t
15324
																  ) AS relmgr_number_tab_t
15307
                                                              )
15325
															  )
15308
                                                      FROM DUAL
15326
													  FROM DUAL
15309
                                                   ))
15327
												   ))
15310
                      UNION
15328
					  UNION
15311
                      /* Base Views expanded */
15329
					  /* Base Views expanded */
15312
                      SELECT vi.view_id, vi.view_name, rel.pkg_state,
15330
					  SELECT vi.view_id, vi.view_name, rel.pkg_state,
15313
                             rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15331
							 rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15314
                             pv.pkg_version, pv.dlocked, pv.pv_description
15332
							 pv.pkg_version, pv.dlocked, pv.pv_description
15315
                        FROM release_content rel,
15333
						FROM release_content rel,
15316
                             PACKAGES pkg,
15334
							 PACKAGES pkg,
15317
                             package_versions pv,
15335
							 package_versions pv,
15318
                             views vi
15336
							 views vi
15319
                       WHERE pv.pkg_id = pkg.pkg_id
15337
					   WHERE pv.pkg_id = pkg.pkg_id
15320
                         AND rel.pv_id = pv.pv_id
15338
						 AND rel.pv_id = pv.pv_id
15321
                         AND rel.base_view_id = vi.view_id
15339
						 AND rel.base_view_id = vi.view_id
15322
                         AND rel.base_view_id IN (
15340
						 AND rel.base_view_id IN (
15323
                                SELECT *
15341
								SELECT *
15324
                                  FROM THE
15342
								  FROM THE
15325
                                          (SELECT CAST
15343
										  (SELECT CAST
15326
                                                     (in_list_number
15344
													 (in_list_number
15327
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15345
															  (sviewidshowlist) AS relmgr_number_tab_t
15328
                                                     )
15346
													 )
15329
                                             FROM DUAL
15347
											 FROM DUAL
15330
                                          ))
15348
										  ))
15331
                         AND rtag_id = rtagid) ord
15349
						 AND rtag_id = rtagid) ord
15332
            ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15350
			ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15333
      ELSIF viewtype = 2
15351
	  ELSIF viewtype = 2
15334
      THEN
15352
	  THEN
15335
         /*--- PERSONAL VIEW ---*/
15353
		 /*--- PERSONAL VIEW ---*/
15336
         OPEN recordset FOR
15354
		 OPEN recordset FOR
15337
            SELECT   *
15355
			SELECT   *
15338
                FROM (
15356
				FROM (
15339
                      /* Base Views collapsed */
15357
					  /* Base Views collapsed */
15340
                      SELECT DISTINCT vi.view_id, vi.view_name,
15358
					  SELECT DISTINCT vi.view_id, vi.view_name,
15341
                                      TO_NUMBER (NULL) AS pkg_state,
15359
									  TO_NUMBER (NULL) AS pkg_state,
15342
                                      TO_NUMBER (NULL) AS deprecated_state,
15360
									  TO_NUMBER (NULL) AS deprecated_state,
15343
                                      TO_NUMBER (NULL) AS pv_id,
15361
									  TO_NUMBER (NULL) AS pv_id,
15344
                                      NULL AS pkg_name, NULL AS pkg_version,
15362
									  NULL AS pkg_name, NULL AS pkg_version,
15345
                                      NULL AS dlocked, NULL AS pv_description
15363
									  NULL AS dlocked, NULL AS pv_description
15346
                                 FROM release_content rel,
15364
								 FROM release_content rel,
15347
                                      view_settings vs,
15365
									  view_settings vs,
15348
                                      views vi
15366
									  views vi
15349
                                WHERE rel.base_view_id = vi.view_id
15367
								WHERE rel.base_view_id = vi.view_id
15350
                                  AND vs.view_id = rel.base_view_id
15368
								  AND vs.view_id = rel.base_view_id
15351
                                  AND vs.user_id = userid
15369
								  AND vs.user_id = userid
15352
                                  AND rtag_id = rtagid
15370
								  AND rtag_id = rtagid
15353
                                  AND rel.base_view_id NOT IN (
15371
								  AND rel.base_view_id NOT IN (
15354
                                         SELECT *
15372
										 SELECT *
15355
                                           FROM THE
15373
										   FROM THE
15356
                                                   (SELECT CAST
15374
												   (SELECT CAST
15357
                                                              (in_list_number
15375
															  (in_list_number
15358
                                                                  (sviewidshowlist
15376
																  (sviewidshowlist
15359
                                                                  ) AS relmgr_number_tab_t
15377
																  ) AS relmgr_number_tab_t
15360
                                                              )
15378
															  )
15361
                                                      FROM DUAL
15379
													  FROM DUAL
15362
                                                   ))
15380
												   ))
15363
                      UNION
15381
					  UNION
15364
                      /* Base Views expanded */
15382
					  /* Base Views expanded */
15365
                      SELECT vi.view_id, vi.view_name, rel.pkg_state,
15383
					  SELECT vi.view_id, vi.view_name, rel.pkg_state,
15366
                             rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15384
							 rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15367
                             pv.pkg_version, pv.dlocked, pv.pv_description
15385
							 pv.pkg_version, pv.dlocked, pv.pv_description
15368
                        FROM release_content rel,
15386
						FROM release_content rel,
15369
                             PACKAGES pkg,
15387
							 PACKAGES pkg,
15370
                             package_versions pv,
15388
							 package_versions pv,
15371
                             views vi,
15389
							 views vi,
15372
                             view_settings vs
15390
							 view_settings vs
15373
                       WHERE pv.pkg_id = pkg.pkg_id
15391
					   WHERE pv.pkg_id = pkg.pkg_id
15374
                         AND rel.pv_id = pv.pv_id
15392
						 AND rel.pv_id = pv.pv_id
15375
                         AND rel.base_view_id = vi.view_id
15393
						 AND rel.base_view_id = vi.view_id
15376
                         AND vs.view_id = vi.view_id
15394
						 AND vs.view_id = vi.view_id
15377
                         AND vs.user_id = userid
15395
						 AND vs.user_id = userid
15378
                         AND rel.base_view_id IN (
15396
						 AND rel.base_view_id IN (
15379
                                SELECT *
15397
								SELECT *
15380
                                  FROM THE
15398
								  FROM THE
15381
                                          (SELECT CAST
15399
										  (SELECT CAST
15382
                                                     (in_list_number
15400
													 (in_list_number
15383
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15401
															  (sviewidshowlist) AS relmgr_number_tab_t
15384
                                                     )
15402
													 )
15385
                                             FROM DUAL
15403
											 FROM DUAL
15386
                                          ))
15404
										  ))
15387
                         AND rtag_id = rtagid
15405
						 AND rtag_id = rtagid
15388
                      UNION
15406
					  UNION
15389
                      /* Private Views collapsed */
15407
					  /* Private Views collapsed */
15390
                      SELECT vi.view_id, vi.view_name,
15408
					  SELECT vi.view_id, vi.view_name,
15391
                             TO_NUMBER (NULL) AS pkg_state,
15409
							 TO_NUMBER (NULL) AS pkg_state,
15392
                             TO_NUMBER (NULL) AS deprecated_state,
15410
							 TO_NUMBER (NULL) AS deprecated_state,
15393
                             TO_NUMBER (NULL) AS pv_id, NULL AS pkg_name,
15411
							 TO_NUMBER (NULL) AS pv_id, NULL AS pkg_name,
15394
                             NULL AS pkg_version, NULL AS dlocked,
15412
							 NULL AS pkg_version, NULL AS dlocked,
15395
                             NULL AS pv_description
15413
							 NULL AS pv_description
15396
                        FROM view_settings vs,
15414
						FROM view_settings vs,
15397
                             view_def vd,
15415
							 view_def vd,
15398
                             views vi,
15416
							 views vi,
15399
                             release_content rel,
15417
							 release_content rel,
15400
                             package_versions pv
15418
							 package_versions pv
15401
                       WHERE vs.view_id = vi.view_id
15419
					   WHERE vs.view_id = vi.view_id
15402
                         AND rel.pv_id = pv.pv_id
15420
						 AND rel.pv_id = pv.pv_id
15403
                         AND vd.pkg_id = pv.pkg_id
15421
						 AND vd.pkg_id = pv.pkg_id
15404
                         AND vd.view_id = vi.view_id
15422
						 AND vd.view_id = vi.view_id
15405
                         AND vi.base_view = 'N'
15423
						 AND vi.base_view = 'N'
15406
                         AND rel.rtag_id = rtagid
15424
						 AND rel.rtag_id = rtagid
15407
                         AND vs.user_id = userid
15425
						 AND vs.user_id = userid
15408
                         AND vi.view_id NOT IN (
15426
						 AND vi.view_id NOT IN (
15409
                                SELECT *
15427
								SELECT *
15410
                                  FROM THE
15428
								  FROM THE
15411
                                          (SELECT CAST
15429
										  (SELECT CAST
15412
                                                     (in_list_number
15430
													 (in_list_number
15413
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15431
															  (sviewidshowlist) AS relmgr_number_tab_t
15414
                                                     )
15432
													 )
15415
                                             FROM DUAL
15433
											 FROM DUAL
15416
                                          ))
15434
										  ))
15417
                      UNION
15435
					  UNION
15418
                      /* Private Views expanded */
15436
					  /* Private Views expanded */
15419
                      SELECT vi.view_id, vi.view_name, rel.pkg_state,
15437
					  SELECT vi.view_id, vi.view_name, rel.pkg_state,
15420
                             rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15438
							 rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15421
                             pv.pkg_version, pv.dlocked, pv.pv_description
15439
							 pv.pkg_version, pv.dlocked, pv.pv_description
15422
                        FROM users usr,
15440
						FROM users usr,
15423
                             view_settings vs,
15441
							 view_settings vs,
15424
                             view_def vd,
15442
							 view_def vd,
15425
                             views vi,
15443
							 views vi,
15426
                             release_content rel,
15444
							 release_content rel,
15427
                             PACKAGES pkg,
15445
							 PACKAGES pkg,
15428
                             package_versions pv
15446
							 package_versions pv
15429
                       WHERE vs.user_id = usr.user_id
15447
					   WHERE vs.user_id = usr.user_id
15430
                         AND vs.view_id = vi.view_id
15448
						 AND vs.view_id = vi.view_id
15431
                         AND vd.view_id = vi.view_id
15449
						 AND vd.view_id = vi.view_id
15432
                         AND pv.pkg_id = pkg.pkg_id
15450
						 AND pv.pkg_id = pkg.pkg_id
15433
                         AND rel.pv_id = pv.pv_id
15451
						 AND rel.pv_id = pv.pv_id
15434
                         AND rel.rtag_id = rtagid
15452
						 AND rel.rtag_id = rtagid
15435
                         AND vd.pkg_id = pkg.pkg_id
15453
						 AND vd.pkg_id = pkg.pkg_id
15436
                         AND vi.base_view = 'N'
15454
						 AND vi.base_view = 'N'
15437
                         AND vi.view_id IN (
15455
						 AND vi.view_id IN (
15438
                                SELECT *
15456
								SELECT *
15439
                                  FROM THE
15457
								  FROM THE
15440
                                          (SELECT CAST
15458
										  (SELECT CAST
15441
                                                     (in_list_number
15459
													 (in_list_number
15442
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15460
															  (sviewidshowlist) AS relmgr_number_tab_t
15443
                                                     )
15461
													 )
15444
                                             FROM DUAL
15462
											 FROM DUAL
15445
                                          ))
15463
										  ))
15446
                         AND usr.user_id = userid) ord
15464
						 AND usr.user_id = userid) ord
15447
            ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15465
			ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15448
      END IF;
15466
	  END IF;
15449
   END;
15467
   END;
15450
 
15468
 
15451
/*-------------------------------------------------------------------------------------------------------*/
15469
/*-------------------------------------------------------------------------------------------------------*/
15452
   PROCEDURE get_work_in_progress_items (
15470
   PROCEDURE get_work_in_progress_items (
15453
      viewtype           IN       NUMBER,
15471
	  viewtype		   IN	   NUMBER,
15454
      userid             IN       NUMBER,
15472
	  userid			 IN	   NUMBER,
15455
      rtagid             IN       NUMBER,
15473
	  rtagid			 IN	   NUMBER,
15456
      sviewidshowlist    IN       VARCHAR2,
15474
	  sviewidshowlist	IN	   VARCHAR2,
15457
      ntruerecordcount   OUT      NUMBER,
15475
	  ntruerecordcount   OUT	  NUMBER,
15458
      recordset          OUT      typecur
15476
	  recordset		  OUT	  typecur
15459
   )
15477
   )
15460
   IS
15478
   IS
15461
   BEGIN
15479
   BEGIN
15462
      -- Get true record count because views can give false count
15480
	  -- Get true record count because views can give false count
15463
      SELECT COUNT (wip.pv_id)
15481
	  SELECT COUNT (wip.pv_id)
15464
        INTO ntruerecordcount
15482
		INTO ntruerecordcount
15465
        FROM work_in_progress wip
15483
		FROM work_in_progress wip
15466
       WHERE wip.rtag_id = rtagid;
15484
	   WHERE wip.rtag_id = rtagid;
-
 
15485
 
-
 
15486
	  IF viewtype = 1
-
 
15487
	  THEN
-
 
15488
		 /*--- GUEST VIEW ---*/
-
 
15489
		 OPEN recordset FOR
-
 
15490
			SELECT   *
-
 
15491
				FROM (
-
 
15492
					  /* Base Views collapsed */
-
 
15493
					  SELECT DISTINCT vi.view_id, vi.view_name,
-
 
15494
									  TO_NUMBER (NULL) AS pkg_state,
-
 
15495
									  TO_NUMBER (NULL) AS deprecated_state,
-
 
15496
									  TO_NUMBER (NULL) AS pv_id,
-
 
15497
									  NULL AS pkg_name, NULL AS pkg_version,
-
 
15498
									  NULL AS dlocked, NULL AS pv_description
-
 
15499
								 FROM work_in_progress rel, views vi
-
 
15500
								WHERE rel.view_id = vi.view_id
-
 
15501
								  AND rtag_id = rtagid
-
 
15502
								  AND rel.view_id NOT IN (
-
 
15503
										 SELECT *
-
 
15504
										   FROM THE
-
 
15505
												   (SELECT CAST
-
 
15506
															  (in_list_number
-
 
15507
																  (sviewidshowlist
-
 
15508
																  ) AS relmgr_number_tab_t
-
 
15509
															  )
-
 
15510
													  FROM DUAL
-
 
15511
												   ))
-
 
15512
					  UNION
-
 
15513
					  /* Base Views expanded */
-
 
15514
					  SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15467
 
15515
 
15468
      IF viewtype = 1
15516
							 --rel.pkg_state,
15469
      THEN
15517
							 TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15470
         /*--- GUEST VIEW ---*/
15518
							 pkg.pkg_name, pv.pkg_version, pv.dlocked,
15471
         OPEN recordset FOR
15519
							 pv.pv_description
15472
            SELECT   *
15520
						FROM work_in_progress rel,
15473
                FROM (
15521
							 PACKAGES pkg,
15474
                      /* Base Views collapsed */
15522
							 package_versions pv,
15475
                      SELECT DISTINCT vi.view_id, vi.view_name,
15523
							 views vi
15476
                                      TO_NUMBER (NULL) AS pkg_state,
15524
					   WHERE pv.pkg_id = pkg.pkg_id
15477
                                      TO_NUMBER (NULL) AS deprecated_state,
15525
						 AND rel.pv_id = pv.pv_id
15478
                                      TO_NUMBER (NULL) AS pv_id,
15526
						 AND rel.view_id = vi.view_id
15479
                                      NULL AS pkg_name, NULL AS pkg_version,
15527
						 AND rel.view_id IN (
15480
                                      NULL AS dlocked, NULL AS pv_description
15528
								SELECT *
15481
                                 FROM work_in_progress rel, views vi
15529
								  FROM THE
15482
                                WHERE rel.view_id = vi.view_id
15530
										  (SELECT CAST
15483
                                  AND rtag_id = rtagid
15531
													 (in_list_number
15484
                                  AND rel.view_id NOT IN (
15532
															  (sviewidshowlist) AS relmgr_number_tab_t
15485
                                         SELECT *
15533
													 )
15486
                                           FROM THE
15534
											 FROM DUAL
15487
                                                   (SELECT CAST
15535
										  ))
15488
                                                              (in_list_number
15536
						 AND rtag_id = rtagid) ord
15489
                                                                  (sviewidshowlist
15537
			ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15490
                                                                  ) AS relmgr_number_tab_t
15538
	  ELSIF viewtype = 2
15491
                                                              )
15539
	  THEN
15492
                                                      FROM DUAL
15540
		 /*--- PERSONAL VIEW ---*/
15493
                                                   ))
15541
		 OPEN recordset FOR
15494
                      UNION
15542
			SELECT   *
15495
                      /* Base Views expanded */
15543
				FROM (
15496
                      SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15544
					  /* Base Views collapsed */
15497
                             
15545
					  SELECT DISTINCT vi.view_id, vi.view_name,
15498
                             --rel.pkg_state,
15546
									  TO_NUMBER (NULL) AS pkg_state,
15499
                             TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15547
									  TO_NUMBER (NULL) AS deprecated_state,
15500
                             pkg.pkg_name, pv.pkg_version, pv.dlocked,
15548
									  TO_NUMBER (NULL) AS pv_id,
15501
                             pv.pv_description
15549
									  NULL AS pkg_name, NULL AS pkg_version,
15502
                        FROM work_in_progress rel,
15550
									  NULL AS dlocked, NULL AS pv_description
15503
                             PACKAGES pkg,
15551
								 FROM work_in_progress rel,
15504
                             package_versions pv,
15552
									  view_settings vs,
15505
                             views vi
15553
									  views vi
15506
                       WHERE pv.pkg_id = pkg.pkg_id
15554
								WHERE rel.view_id = vi.view_id
15507
                         AND rel.pv_id = pv.pv_id
15555
								  AND vs.view_id = rel.view_id
15508
                         AND rel.view_id = vi.view_id
15556
								  AND vs.user_id = userid
15509
                         AND rel.view_id IN (
15557
								  AND rtag_id = rtagid
15510
                                SELECT *
15558
								  AND rel.view_id NOT IN (
15511
                                  FROM THE
15559
										 SELECT *
15512
                                          (SELECT CAST
15560
										   FROM THE
15513
                                                     (in_list_number
15561
												   (SELECT CAST
15514
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15562
															  (in_list_number
15515
                                                     )
15563
																  (sviewidshowlist
15516
                                             FROM DUAL
15564
																  ) AS relmgr_number_tab_t
15517
                                          ))
15565
															  )
15518
                         AND rtag_id = rtagid) ord
15566
													  FROM DUAL
15519
            ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15567
												   ))
15520
      ELSIF viewtype = 2
15568
					  UNION
15521
      THEN
15569
					  /* Base Views expanded */
15522
         /*--- PERSONAL VIEW ---*/
15570
					  SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15523
         OPEN recordset FOR
15571
 
15524
            SELECT   *
15572
							 --rel.pkg_state,
15525
                FROM (
15573
							 TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15526
                      /* Base Views collapsed */
15574
							 pkg.pkg_name, pv.pkg_version, pv.dlocked,
15527
                      SELECT DISTINCT vi.view_id, vi.view_name,
15575
							 pv.pv_description
15528
                                      TO_NUMBER (NULL) AS pkg_state,
15576
						FROM work_in_progress rel,
15529
                                      TO_NUMBER (NULL) AS deprecated_state,
15577
							 PACKAGES pkg,
15530
                                      TO_NUMBER (NULL) AS pv_id,
15578
							 package_versions pv,
15531
                                      NULL AS pkg_name, NULL AS pkg_version,
15579
							 views vi,
15532
                                      NULL AS dlocked, NULL AS pv_description
15580
							 view_settings vs
15533
                                 FROM work_in_progress rel,
15581
					   WHERE pv.pkg_id = pkg.pkg_id
15534
                                      view_settings vs,
15582
						 AND rel.pv_id = pv.pv_id
15535
                                      views vi
15583
						 AND rel.view_id = vi.view_id
15536
                                WHERE rel.view_id = vi.view_id
15584
						 AND vs.view_id = vi.view_id
15537
                                  AND vs.view_id = rel.view_id
15585
						 AND vs.user_id = userid
15538
                                  AND vs.user_id = userid
15586
						 AND rel.view_id IN (
15539
                                  AND rtag_id = rtagid
15587
								SELECT *
15540
                                  AND rel.view_id NOT IN (
15588
								  FROM THE
15541
                                         SELECT *
15589
										  (SELECT CAST
15542
                                           FROM THE
15590
													 (in_list_number
15543
                                                   (SELECT CAST
15591
															  (sviewidshowlist) AS relmgr_number_tab_t
15544
                                                              (in_list_number
15592
													 )
15545
                                                                  (sviewidshowlist
15593
											 FROM DUAL
15546
                                                                  ) AS relmgr_number_tab_t
15594
										  ))
15547
                                                              )
15595
						 AND rtag_id = rtagid
15548
                                                      FROM DUAL
15596
					  UNION
15549
                                                   ))
15597
					  /* Private Views collapsed */
15550
                      UNION
15598
					  SELECT vi.view_id, vi.view_name,
15551
                      /* Base Views expanded */
15599
							 TO_NUMBER (NULL) AS pkg_state,
15552
                      SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15600
							 TO_NUMBER (NULL) AS deprecated_state,
15553
                             
15601
							 TO_NUMBER (NULL) AS pv_id, NULL AS pkg_name,
15554
                             --rel.pkg_state,
15602
							 NULL AS pkg_version, NULL AS dlocked,
15555
                             TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15603
							 NULL AS pv_description
15556
                             pkg.pkg_name, pv.pkg_version, pv.dlocked,
15604
						FROM view_settings vs,
15557
                             pv.pv_description
15605
							 view_def vd,
15558
                        FROM work_in_progress rel,
15606
							 views vi,
15559
                             PACKAGES pkg,
15607
							 work_in_progress rel,
15560
                             package_versions pv,
15608
							 package_versions pv
15561
                             views vi,
15609
					   WHERE vs.view_id = vi.view_id
15562
                             view_settings vs
15610
						 AND rel.pv_id = pv.pv_id
15563
                       WHERE pv.pkg_id = pkg.pkg_id
15611
						 AND vd.pkg_id = pv.pkg_id
15564
                         AND rel.pv_id = pv.pv_id
15612
						 AND vd.view_id = vi.view_id
15565
                         AND rel.view_id = vi.view_id
15613
						 AND vi.base_view = 'N'
15566
                         AND vs.view_id = vi.view_id
15614
						 AND rel.rtag_id = rtagid
15567
                         AND vs.user_id = userid
15615
						 AND vs.user_id = userid
15568
                         AND rel.view_id IN (
15616
						 AND vi.view_id NOT IN (
15569
                                SELECT *
15617
								SELECT *
15570
                                  FROM THE
15618
								  FROM THE
15571
                                          (SELECT CAST
15619
										  (SELECT CAST
15572
                                                     (in_list_number
15620
													 (in_list_number
15573
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15621
															  (sviewidshowlist) AS relmgr_number_tab_t
15574
                                                     )
15622
													 )
15575
                                             FROM DUAL
15623
											 FROM DUAL
15576
                                          ))
15624
										  ))
15577
                         AND rtag_id = rtagid
15625
					  UNION
15578
                      UNION
15626
					  /* Private Views expanded */
15579
                      /* Private Views collapsed */
15627
					  SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15580
                      SELECT vi.view_id, vi.view_name,
15628
 
15581
                             TO_NUMBER (NULL) AS pkg_state,
15629
							 --rel.pkg_state,
15582
                             TO_NUMBER (NULL) AS deprecated_state,
15630
							 TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15583
                             TO_NUMBER (NULL) AS pv_id, NULL AS pkg_name,
15631
							 pkg.pkg_name, pv.pkg_version, pv.dlocked,
15584
                             NULL AS pkg_version, NULL AS dlocked,
15632
							 pv.pv_description
15585
                             NULL AS pv_description
15633
						FROM users usr,
15586
                        FROM view_settings vs,
15634
							 view_settings vs,
15587
                             view_def vd,
15635
							 view_def vd,
15588
                             views vi,
15636
							 views vi,
15589
                             work_in_progress rel,
15637
							 work_in_progress rel,
15590
                             package_versions pv
15638
							 PACKAGES pkg,
15591
                       WHERE vs.view_id = vi.view_id
15639
							 package_versions pv
15592
                         AND rel.pv_id = pv.pv_id
15640
					   WHERE vs.user_id = usr.user_id
15593
                         AND vd.pkg_id = pv.pkg_id
15641
						 AND vs.view_id = vi.view_id
15594
                         AND vd.view_id = vi.view_id
15642
						 AND vd.view_id = vi.view_id
15595
                         AND vi.base_view = 'N'
15643
						 AND pv.pkg_id = pkg.pkg_id
15596
                         AND rel.rtag_id = rtagid
15644
						 AND rel.pv_id = pv.pv_id
15597
                         AND vs.user_id = userid
15645
						 AND rel.rtag_id = rtagid
15598
                         AND vi.view_id NOT IN (
15646
						 AND vd.pkg_id = pkg.pkg_id
15599
                                SELECT *
15647
						 AND vi.base_view = 'N'
15600
                                  FROM THE
15648
						 AND vi.view_id IN (
15601
                                          (SELECT CAST
15649
								SELECT *
15602
                                                     (in_list_number
15650
								  FROM THE
15603
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15651
										  (SELECT CAST
15604
                                                     )
15652
													 (in_list_number
15605
                                             FROM DUAL
15653
															  (sviewidshowlist) AS relmgr_number_tab_t
15606
                                          ))
15654
													 )
15607
                      UNION
15655
											 FROM DUAL
15608
                      /* Private Views expanded */
15656
										  ))
15609
                      SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15657
						 AND usr.user_id = userid) ord
15610
                             
15658
			ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15611
                             --rel.pkg_state,
15659
	  END IF;
15612
                             TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
-
 
15613
                             pkg.pkg_name, pv.pkg_version, pv.dlocked,
-
 
15614
                             pv.pv_description
-
 
15615
                        FROM users usr,
-
 
15616
                             view_settings vs,
-
 
15617
                             view_def vd,
-
 
15618
                             views vi,
-
 
15619
                             work_in_progress rel,
-
 
15620
                             PACKAGES pkg,
-
 
15621
                             package_versions pv
-
 
15622
                       WHERE vs.user_id = usr.user_id
-
 
15623
                         AND vs.view_id = vi.view_id
-
 
15624
                         AND vd.view_id = vi.view_id
-
 
15625
                         AND pv.pkg_id = pkg.pkg_id
-
 
15626
                         AND rel.pv_id = pv.pv_id
-
 
15627
                         AND rel.rtag_id = rtagid
-
 
15628
                         AND vd.pkg_id = pkg.pkg_id
-
 
15629
                         AND vi.base_view = 'N'
-
 
15630
                         AND vi.view_id IN (
-
 
15631
                                SELECT *
-
 
15632
                                  FROM THE
-
 
15633
                                          (SELECT CAST
-
 
15634
                                                     (in_list_number
-
 
15635
                                                              (sviewidshowlist) AS relmgr_number_tab_t
-
 
15636
                                                     )
-
 
15637
                                             FROM DUAL
-
 
15638
                                          ))
-
 
15639
                         AND usr.user_id = userid) ord
-
 
15640
            ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
-
 
15641
      END IF;
-
 
15642
   END;
15660
   END;
15643
 
15661
 
15644
/*-------------------------------------------------------------------------------------------------------*/
15662
/*-------------------------------------------------------------------------------------------------------*/
-
 
15663
   -- DEVI-45275 added the return of the new "operation" column in the recordset.
-
 
15664
 
15645
   PROCEDURE get_pending_items (
15665
   PROCEDURE get_pending_items (
15646
      viewtype           IN       NUMBER,
15666
	  viewtype		   IN	   NUMBER,
15647
      userid             IN       NUMBER,
15667
	  userid			 IN	   NUMBER,
15648
      rtagid             IN       NUMBER,
15668
	  rtagid			 IN	   NUMBER,
15649
      sviewidshowlist    IN       VARCHAR2,
15669
	  sviewidshowlist	IN	   VARCHAR2,
15650
      ntruerecordcount   OUT      NUMBER,
15670
	  ntruerecordcount   OUT	  NUMBER,
15651
      recordset          OUT      typecur
15671
	  recordset		  OUT	  typecur
15652
   )
15672
   )
15653
   IS
15673
   IS
15654
   BEGIN
15674
   BEGIN
15655
      -- Get true record count because views can give false count
15675
	  -- Get true record count because views can give false count
15656
      SELECT COUNT (pl.pv_id)
15676
	  SELECT COUNT (pl.pv_id)
15657
        INTO ntruerecordcount
15677
		INTO ntruerecordcount
15658
        FROM planned pl
15678
		FROM planned pl
15659
       WHERE pl.rtag_id = rtagid;
15679
	   WHERE pl.rtag_id = rtagid;
-
 
15680
 
-
 
15681
	  IF viewtype = 1
-
 
15682
	  THEN
-
 
15683
		 /*--- GUEST VIEW ---*/
-
 
15684
		 OPEN recordset FOR
-
 
15685
			SELECT   *
-
 
15686
				FROM (
-
 
15687
					  /* Base Views collapsed */
-
 
15688
					  SELECT DISTINCT vi.view_id, vi.view_name,
-
 
15689
									  TO_NUMBER (NULL) AS pkg_state,
-
 
15690
									  TO_NUMBER (NULL) AS deprecated_state,
-
 
15691
									  TO_NUMBER (NULL) AS pv_id,
-
 
15692
									  NULL AS pkg_name, NULL AS pkg_version,
-
 
15693
									  NULL AS dlocked, NULL AS pv_description,
-
 
15694
									  rel.operation
-
 
15695
								 FROM planned rel, views vi
-
 
15696
								WHERE rel.view_id = vi.view_id
-
 
15697
								  AND rtag_id = rtagid
-
 
15698
								  AND rel.view_id NOT IN (
-
 
15699
										 SELECT *
-
 
15700
										   FROM THE
-
 
15701
												   (SELECT CAST
-
 
15702
															  (in_list_number
-
 
15703
																  (sviewidshowlist
-
 
15704
																  ) AS relmgr_number_tab_t
-
 
15705
															  )
-
 
15706
													  FROM DUAL
-
 
15707
												   ))
-
 
15708
					  UNION
-
 
15709
					  /* Base Views expanded */
-
 
15710
					  SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15660
 
15711
 
15661
      IF viewtype = 1
15712
							 --rel.pkg_state,
15662
      THEN
15713
							 TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15663
         /*--- GUEST VIEW ---*/
15714
							 pkg.pkg_name, pv.pkg_version, pv.dlocked,
15664
         OPEN recordset FOR
15715
							 pv.pv_description,
15665
            SELECT   *
15716
							 rel.operation
15666
                FROM (
15717
						FROM planned rel,
15667
                      /* Base Views collapsed */
15718
							 PACKAGES pkg,
15668
                      SELECT DISTINCT vi.view_id, vi.view_name,
15719
							 package_versions pv,
15669
                                      TO_NUMBER (NULL) AS pkg_state,
15720
							 views vi
15670
                                      TO_NUMBER (NULL) AS deprecated_state,
15721
					   WHERE pv.pkg_id = pkg.pkg_id
15671
                                      TO_NUMBER (NULL) AS pv_id,
15722
						 AND rel.pv_id = pv.pv_id
15672
                                      NULL AS pkg_name, NULL AS pkg_version,
15723
						 AND rel.view_id = vi.view_id
15673
                                      NULL AS dlocked, NULL AS pv_description
15724
						 AND rel.view_id IN (
15674
                                 FROM planned rel, views vi
15725
								SELECT *
15675
                                WHERE rel.view_id = vi.view_id
15726
								  FROM THE
15676
                                  AND rtag_id = rtagid
15727
										  (SELECT CAST
15677
                                  AND rel.view_id NOT IN (
15728
													 (in_list_number
15678
                                         SELECT *
15729
															  (sviewidshowlist) AS relmgr_number_tab_t
15679
                                           FROM THE
15730
													 )
15680
                                                   (SELECT CAST
15731
											 FROM DUAL
15681
                                                              (in_list_number
15732
										  ))
15682
                                                                  (sviewidshowlist
15733
						 AND rtag_id = rtagid) ord
15683
                                                                  ) AS relmgr_number_tab_t
15734
			ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15684
                                                              )
15735
	  ELSIF viewtype = 2
15685
                                                      FROM DUAL
15736
	  THEN
15686
                                                   ))
15737
		 /*--- PERSONAL VIEW ---*/
15687
                      UNION
15738
		 OPEN recordset FOR
15688
                      /* Base Views expanded */
15739
			SELECT   *
15689
                      SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15740
				FROM (
15690
                             
15741
					  /* Base Views collapsed */
15691
                             --rel.pkg_state,
15742
					  SELECT DISTINCT vi.view_id, vi.view_name,
15692
                             TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15743
									  TO_NUMBER (NULL) AS pkg_state,
15693
                             pkg.pkg_name, pv.pkg_version, pv.dlocked,
15744
									  TO_NUMBER (NULL) AS deprecated_state,
15694
                             pv.pv_description
15745
									  TO_NUMBER (NULL) AS pv_id,
15695
                        FROM planned rel,
15746
									  NULL AS pkg_name, NULL AS pkg_version,
15696
                             PACKAGES pkg,
15747
									  NULL AS dlocked, NULL AS pv_description,
15697
                             package_versions pv,
15748
									  rel.operation
15698
                             views vi
15749
								 FROM planned rel, view_settings vs, views vi
15699
                       WHERE pv.pkg_id = pkg.pkg_id
15750
								WHERE rel.view_id = vi.view_id
15700
                         AND rel.pv_id = pv.pv_id
15751
								  AND vs.view_id = rel.view_id
15701
                         AND rel.view_id = vi.view_id
15752
								  AND vs.user_id = userid
15702
                         AND rel.view_id IN (
15753
								  AND rtag_id = rtagid
15703
                                SELECT *
15754
								  AND rel.view_id NOT IN (
15704
                                  FROM THE
15755
										 SELECT *
15705
                                          (SELECT CAST
15756
										   FROM THE
15706
                                                     (in_list_number
15757
												   (SELECT CAST
15707
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15758
															  (in_list_number
15708
                                                     )
15759
																  (sviewidshowlist
15709
                                             FROM DUAL
15760
																  ) AS relmgr_number_tab_t
15710
                                          ))
15761
															  )
15711
                         AND rtag_id = rtagid) ord
15762
													  FROM DUAL
15712
            ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15763
												   ))
15713
      ELSIF viewtype = 2
15764
					  UNION
15714
      THEN
15765
					  /* Base Views expanded */
15715
         /*--- PERSONAL VIEW ---*/
15766
					  SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15716
         OPEN recordset FOR
15767
 
15717
            SELECT   *
15768
							 --rel.pkg_state,
15718
                FROM (
15769
							 TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15719
                      /* Base Views collapsed */
15770
							 pkg.pkg_name, pv.pkg_version, pv.dlocked,
15720
                      SELECT DISTINCT vi.view_id, vi.view_name,
15771
							 pv.pv_description,
15721
                                      TO_NUMBER (NULL) AS pkg_state,
15772
							 rel.operation
15722
                                      TO_NUMBER (NULL) AS deprecated_state,
15773
						FROM planned rel,
15723
                                      TO_NUMBER (NULL) AS pv_id,
15774
							 PACKAGES pkg,
15724
                                      NULL AS pkg_name, NULL AS pkg_version,
15775
							 package_versions pv,
15725
                                      NULL AS dlocked, NULL AS pv_description
15776
							 views vi,
15726
                                 FROM planned rel, view_settings vs, views vi
15777
							 view_settings vs
15727
                                WHERE rel.view_id = vi.view_id
15778
					   WHERE pv.pkg_id = pkg.pkg_id
15728
                                  AND vs.view_id = rel.view_id
15779
						 AND rel.pv_id = pv.pv_id
15729
                                  AND vs.user_id = userid
15780
						 AND rel.view_id = vi.view_id
15730
                                  AND rtag_id = rtagid
15781
						 AND vs.view_id = vi.view_id
15731
                                  AND rel.view_id NOT IN (
15782
						 AND vs.user_id = userid
15732
                                         SELECT *
15783
						 AND rel.view_id IN (
15733
                                           FROM THE
15784
								SELECT *
15734
                                                   (SELECT CAST
15785
								  FROM THE
15735
                                                              (in_list_number
15786
										  (SELECT CAST
15736
                                                                  (sviewidshowlist
15787
													 (in_list_number
15737
                                                                  ) AS relmgr_number_tab_t
15788
															  (sviewidshowlist) AS relmgr_number_tab_t
15738
                                                              )
15789
													 )
15739
                                                      FROM DUAL
15790
											 FROM DUAL
15740
                                                   ))
15791
										  ))
15741
                      UNION
15792
						 AND rtag_id = rtagid
15742
                      /* Base Views expanded */
15793
					  UNION
15743
                      SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15794
					  /* Private Views collapsed */
15744
                             
15795
					  SELECT vi.view_id, vi.view_name,
15745
                             --rel.pkg_state,
15796
							 TO_NUMBER (NULL) AS pkg_state,
15746
                             TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15797
							 TO_NUMBER (NULL) AS deprecated_state,
15747
                             pkg.pkg_name, pv.pkg_version, pv.dlocked,
15798
							 TO_NUMBER (NULL) AS pv_id, NULL AS pkg_name,
15748
                             pv.pv_description
15799
							 NULL AS pkg_version, NULL AS dlocked,
15749
                        FROM planned rel,
15800
							 NULL AS pv_description,
15750
                             PACKAGES pkg,
15801
							 rel.operation
15751
                             package_versions pv,
15802
						FROM view_settings vs,
15752
                             views vi,
15803
							 view_def vd,
15753
                             view_settings vs
15804
							 views vi,
15754
                       WHERE pv.pkg_id = pkg.pkg_id
15805
							 planned rel,
15755
                         AND rel.pv_id = pv.pv_id
15806
							 package_versions pv
15756
                         AND rel.view_id = vi.view_id
15807
					   WHERE vs.view_id = vi.view_id
15757
                         AND vs.view_id = vi.view_id
15808
						 AND rel.pv_id = pv.pv_id
15758
                         AND vs.user_id = userid
15809
						 AND vd.pkg_id = pv.pkg_id
15759
                         AND rel.view_id IN (
15810
						 AND vd.view_id = vi.view_id
15760
                                SELECT *
15811
						 AND vi.base_view = 'N'
15761
                                  FROM THE
15812
						 AND rel.rtag_id = rtagid
15762
                                          (SELECT CAST
15813
						 AND vs.user_id = userid
15763
                                                     (in_list_number
15814
						 AND vi.view_id NOT IN (
15764
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15815
								SELECT *
15765
                                                     )
15816
								  FROM THE
15766
                                             FROM DUAL
15817
										  (SELECT CAST
15767
                                          ))
15818
													 (in_list_number
15768
                         AND rtag_id = rtagid
15819
															  (sviewidshowlist) AS relmgr_number_tab_t
15769
                      UNION
15820
													 )
15770
                      /* Private Views collapsed */
15821
											 FROM DUAL
15771
                      SELECT vi.view_id, vi.view_name,
15822
										  ))
15772
                             TO_NUMBER (NULL) AS pkg_state,
15823
					  UNION
15773
                             TO_NUMBER (NULL) AS deprecated_state,
15824
					  /* Private Views expanded */
15774
                             TO_NUMBER (NULL) AS pv_id, NULL AS pkg_name,
15825
					  SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15775
                             NULL AS pkg_version, NULL AS dlocked,
15826
 
15776
                             NULL AS pv_description
15827
							 --rel.pkg_state,
15777
                        FROM view_settings vs,
15828
							 TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15778
                             view_def vd,
15829
							 pkg.pkg_name, pv.pkg_version, pv.dlocked,
15779
                             views vi,
15830
							 pv.pv_description,
15780
                             planned rel,
15831
							 rel.operation
15781
                             package_versions pv
15832
						FROM users usr,
15782
                       WHERE vs.view_id = vi.view_id
15833
							 view_settings vs,
15783
                         AND rel.pv_id = pv.pv_id
15834
							 view_def vd,
15784
                         AND vd.pkg_id = pv.pkg_id
15835
							 views vi,
15785
                         AND vd.view_id = vi.view_id
15836
							 planned rel,
15786
                         AND vi.base_view = 'N'
15837
							 PACKAGES pkg,
15787
                         AND rel.rtag_id = rtagid
15838
							 package_versions pv
15788
                         AND vs.user_id = userid
15839
					   WHERE vs.user_id = usr.user_id
15789
                         AND vi.view_id NOT IN (
15840
						 AND vs.view_id = vi.view_id
15790
                                SELECT *
15841
						 AND vd.view_id = vi.view_id
15791
                                  FROM THE
15842
						 AND pv.pkg_id = pkg.pkg_id
15792
                                          (SELECT CAST
15843
						 AND rel.pv_id = pv.pv_id
15793
                                                     (in_list_number
15844
						 AND rel.rtag_id = rtagid
15794
                                                              (sviewidshowlist) AS relmgr_number_tab_t
15845
						 AND vd.pkg_id = pkg.pkg_id
15795
                                                     )
15846
						 AND vi.base_view = 'N'
15796
                                             FROM DUAL
15847
						 AND vi.view_id IN (
15797
                                          ))
15848
								SELECT *
15798
                      UNION
15849
								  FROM THE
15799
                      /* Private Views expanded */
15850
										  (SELECT CAST
15800
                      SELECT vi.view_id, vi.view_name, 0 AS pkg_state,
15851
													 (in_list_number
15801
                             
15852
															  (sviewidshowlist) AS relmgr_number_tab_t
15802
                             --rel.pkg_state,
15853
													 )
15803
                             TO_NUMBER (NULL) AS deprecated_state, pv.pv_id,
15854
											 FROM DUAL
15804
                             pkg.pkg_name, pv.pkg_version, pv.dlocked,
15855
										  ))
15805
                             pv.pv_description
15856
						 AND usr.user_id = userid) ord
15806
                        FROM users usr,
15857
			ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
15807
                             view_settings vs,
15858
	  END IF;
15808
                             view_def vd,
-
 
15809
                             views vi,
-
 
15810
                             planned rel,
-
 
15811
                             PACKAGES pkg,
-
 
15812
                             package_versions pv
-
 
15813
                       WHERE vs.user_id = usr.user_id
-
 
15814
                         AND vs.view_id = vi.view_id
-
 
15815
                         AND vd.view_id = vi.view_id
-
 
15816
                         AND pv.pkg_id = pkg.pkg_id
-
 
15817
                         AND rel.pv_id = pv.pv_id
-
 
15818
                         AND rel.rtag_id = rtagid
-
 
15819
                         AND vd.pkg_id = pkg.pkg_id
-
 
15820
                         AND vi.base_view = 'N'
-
 
15821
                         AND vi.view_id IN (
-
 
15822
                                SELECT *
-
 
15823
                                  FROM THE
-
 
15824
                                          (SELECT CAST
-
 
15825
                                                     (in_list_number
-
 
15826
                                                              (sviewidshowlist) AS relmgr_number_tab_t
-
 
15827
                                                     )
-
 
15828
                                             FROM DUAL
-
 
15829
                                          ))
-
 
15830
                         AND usr.user_id = userid) ord
-
 
15831
            ORDER BY UPPER (ord.view_name), UPPER (ord.pkg_name);
-
 
15832
      END IF;
-
 
15833
   END;
15859
   END;
15834
 
15860
 
15835
/*-------------------------------------------------------------------------------------------------------*/
15861
/*-------------------------------------------------------------------------------------------------------*/
15836
   PROCEDURE get_view_content (
15862
   PROCEDURE get_view_content (
15837
      rtagid      IN       NUMBER,
15863
	  rtagid	  IN	   NUMBER,
15838
      viewid      IN       NUMBER,
15864
	  viewid	  IN	   NUMBER,
15839
      recordset   OUT      typecur
15865
	  recordset   OUT	  typecur
15840
   )
15866
   )
15841
   IS
15867
   IS
15842
      isbaseview   CHAR (1);
15868
	  isbaseview   CHAR (1);
15843
   BEGIN
15869
   BEGIN
15844
      -- Check if the view is BASE VIEW
15870
	  -- Check if the view is BASE VIEW
15845
      SELECT vi.base_view
15871
	  SELECT vi.base_view
15846
        INTO isbaseview
15872
		INTO isbaseview
15847
        FROM views vi
15873
		FROM views vi
15848
       WHERE vi.view_id = viewid;
15874
	   WHERE vi.view_id = viewid;
15849
 
15875
 
15850
      IF (isbaseview = 'Y')
15876
	  IF (isbaseview = 'Y')
15851
      THEN
15877
	  THEN
15852
         -- Get Base view content
15878
		 -- Get Base view content
15853
         OPEN recordset FOR
15879
		 OPEN recordset FOR
15854
            SELECT   DECODE (rel.pkg_state,
15880
			SELECT   DECODE (rel.pkg_state,
15855
                             NULL, 0,
15881
							 NULL, 0,
15856
                             rel.pkg_state
15882
							 rel.pkg_state
15857
                            ) AS pkg_state,
15883
							) AS pkg_state,
15858
                     rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15884
					 rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15859
                     pv.pkg_version, pv.dlocked, pv.pv_description,
15885
					 pv.pkg_version, pv.dlocked, pv.pv_description,
15860
                     pv.build_type
15886
					 pv.build_type,
-
 
15887
					 rel.operation
15861
                FROM environment_view rel, PACKAGES pkg, package_versions pv
15888
				FROM environment_view rel, PACKAGES pkg, package_versions pv
15862
               WHERE pv.pkg_id = pkg.pkg_id
15889
			   WHERE pv.pkg_id = pkg.pkg_id
15863
                 AND rel.pv_id = pv.pv_id
15890
				 AND rel.pv_id = pv.pv_id
15864
                 AND rel.view_id = viewid
15891
				 AND rel.view_id = viewid
15865
                 AND rel.rtag_id = rtagid
15892
				 AND rel.rtag_id = rtagid
15866
            ORDER BY UPPER (pkg.pkg_name);
15893
			ORDER BY UPPER (pkg.pkg_name);
15867
      ELSE
15894
	  ELSE
15868
         -- Get non base view content
15895
		 -- Get non base view content
15869
         OPEN recordset FOR
15896
		 OPEN recordset FOR
15870
            SELECT   DECODE (rel.pkg_state,
15897
			SELECT   DECODE (rel.pkg_state,
15871
                             NULL, 0,
15898
							 NULL, 0,
15872
                             rel.pkg_state
15899
							 rel.pkg_state
15873
                            ) AS pkg_state,
15900
							) AS pkg_state,
15874
                     rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15901
					 rel.deprecated_state, pv.pv_id, pkg.pkg_name,
15875
                     pv.pkg_version, pv.dlocked, pv.pv_description,
15902
					 pv.pkg_version, pv.dlocked, pv.pv_description,
15876
                     pv.build_type
15903
					 pv.build_type,
-
 
15904
					 rel.operation
15877
                FROM environment_view rel,
15905
				FROM environment_view rel,
15878
                     PACKAGES pkg,
15906
					 PACKAGES pkg,
15879
                     package_versions pv,
15907
					 package_versions pv,
15880
                     view_def vd
15908
					 view_def vd
15881
               WHERE pv.pkg_id = pkg.pkg_id
15909
			   WHERE pv.pkg_id = pkg.pkg_id
15882
                 AND rel.pv_id = pv.pv_id
15910
				 AND rel.pv_id = pv.pv_id
15883
                 AND rel.rtag_id = rtagid
15911
				 AND rel.rtag_id = rtagid
15884
                 AND vd.view_id = viewid
15912
				 AND vd.view_id = viewid
15885
                 AND vd.pkg_id = pv.pkg_id
15913
				 AND vd.pkg_id = pv.pkg_id
15886
            ORDER BY UPPER (pkg.pkg_name);
15914
			ORDER BY UPPER (pkg.pkg_name);
15887
      END IF;
15915
	  END IF;
15888
   END;
15916
   END;
15889
 
15917
 
15890
/*-------------------------------------------------------------------------------------------------------*/
15918
/*-------------------------------------------------------------------------------------------------------*/
15891
   FUNCTION get_package_view (pvid IN NUMBER, rtagid IN NUMBER)
15919
   FUNCTION get_package_view (pvid IN NUMBER, rtagid IN NUMBER)
15892
      RETURN NUMBER
15920
	  RETURN NUMBER
15893
   IS
15921
   IS
15894
      envtab             NUMBER;
15922
	  envtab			 NUMBER;
15895
      returnvalue        NUMBER;
15923
	  returnvalue		NUMBER;
15896
      return_not_found   NUMBER := -1;
15924
	  return_not_found   NUMBER := -1;
15897
   BEGIN
15925
   BEGIN
15898
      envtab := get_package_area (pvid, rtagid);
15926
	  envtab := get_package_area (pvid, rtagid);
15899
 
15927
 
15900
      IF envtab = 0
15928
	  IF envtab = 0
15901
      THEN
15929
	  THEN
15902
         -- WORK IN PROGRESS --
15930
		 -- WORK IN PROGRESS --
15903
         returnvalue := pk_work_in_progress.get_package_view (pvid, rtagid);
15931
		 returnvalue := pk_work_in_progress.get_package_view (pvid, rtagid);
15904
      ELSIF envtab = 1
15932
	  ELSIF envtab = 1
15905
      THEN
15933
	  THEN
15906
         -- PENDING --
15934
		 -- PENDING --
15907
         returnvalue := pk_planned.get_package_view (pvid, rtagid);
15935
		 returnvalue := pk_planned.get_package_view (pvid, rtagid);
15908
      ELSIF envtab = 2
15936
	  ELSIF envtab = 2
15909
      THEN
15937
	  THEN
15910
         -- RELEASED --
15938
		 -- RELEASED --
15911
         returnvalue := pk_release.get_package_view (pvid, rtagid);
15939
		 returnvalue := pk_release.get_package_view (pvid, rtagid);
15912
      ELSE
15940
	  ELSE
15913
         -- This may be a Patch not located anywhere but unlocked
15941
		 -- This may be a Patch not located anywhere but unlocked
15914
         returnvalue := return_not_found;
15942
		 returnvalue := return_not_found;
15915
      END IF;
15943
	  END IF;
15916
 
15944
 
15917
      RETURN returnvalue;
15945
	  RETURN returnvalue;
15918
   END;
15946
   END;
15919
 
15947
 
15920
/*-------------------------------------------------------------------------------------------------------*/
15948
/*-------------------------------------------------------------------------------------------------------*/
15921
   PROCEDURE make_release (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
15949
   PROCEDURE make_release (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
15922
   IS
15950
   IS
15923
      viewid          NUMBER;
15951
	  viewid		  NUMBER;
15924
      envtab          NUMBER;
15952
	  envtab		  NUMBER;
15925
      ispatch         CHAR (1) := NULL;
15953
	  ispatch		 CHAR (1) := NULL;
15926
      buildtype       CHAR (1) := NULL;
15954
	  buildtype	   CHAR (1) := NULL;
15927
      lastversionid   NUMBER;
15955
	  lastversionid   NUMBER;
15928
   BEGIN
15956
   BEGIN
15929
      -- Check if package is patch
15957
	  -- Check if package is patch
15930
      SELECT pv.is_patch, pv.build_type, pv.last_pv_id
15958
	  SELECT pv.is_patch, pv.build_type, pv.last_pv_id
15931
        INTO ispatch, buildtype, lastversionid
15959
		INTO ispatch, buildtype, lastversionid
15932
        FROM package_versions pv
15960
		FROM package_versions pv
15933
       WHERE pv.pv_id = pvid;
15961
	   WHERE pv.pv_id = pvid;
15934
 
15962
 
15935
      -- Get ViewId
15963
	  -- Get ViewId
15936
      viewid := get_package_view (pvid, rtagid);
15964
	  viewid := get_package_view (pvid, rtagid);
15937
      -- Remove from current area
15965
	  -- Remove from current area
15938
      envtab := pk_environment.get_package_area (pvid, rtagid);
15966
	  envtab := pk_environment.get_package_area (pvid, rtagid);
15939
 
15967
 
15940
      -- Make sure that package was in work-in-progress or pending before makeing it release
15968
	  -- Make sure that package was in work-in-progress or pending before makeing it release
15941
      -- Exclude patches, ripple builds
15969
	  -- Exclude patches, ripple builds
15942
      IF (envtab < 0)
15970
	  IF (envtab < 0)
15943
      THEN
15971
	  THEN
15944
         -- Not found in work-in-progress or pending
15972
		 -- Not found in work-in-progress or pending
15945
         IF (ispatch IS NULL) AND (buildtype = 'M')
15973
		 IF (ispatch IS NULL) AND (buildtype = 'M')
15946
         THEN
15974
		 THEN
15947
            raise_application_error (-20000,
15975
			raise_application_error (-20000,
15948
                                     'This package cannot be released here.'
15976
									 'This package cannot be released here.'
15949
                                    );
15977
									);
15950
         END IF;
15978
		 END IF;
15951
      END IF;
15979
	  END IF;
15952
 
15980
 
15953
      -- Log
15981
	  -- Log
15954
      log_action (pvid, 'action', userid, 'Start of Make Package Release...');
15982
	  log_action (pvid, 'action', userid, 'Start of Make Package Release...');
15955
 
15983
 
15956
      IF envtab = 0
15984
	  IF envtab = 0
15957
      THEN
15985
	  THEN
15958
         -- WORK IN PROGRESS --
15986
		 -- WORK IN PROGRESS --
15959
         pk_work_in_progress.remove_package (pvid, rtagid, userid);
15987
		 pk_work_in_progress.remove_package (pvid, rtagid, userid);
15960
      ELSIF envtab = 1
15988
	  ELSIF envtab = 1
15961
      THEN
15989
	  THEN
15962
         -- PENDING --
15990
		 -- PENDING --
15963
         pk_planned.remove_package (pvid, rtagid, userid);
15991
		 pk_planned.remove_package (pvid, rtagid, userid);
15964
      END IF;
15992
	  END IF;
15965
 
15993
 
15966
      -- Change package state
15994
	  -- Change package state
15967
      pk_package.change_state (pvid, 'Y', userid);
15995
	  pk_package.change_state (pvid, 'Y', userid);
15968
 
15996
 
15969
      -- Make sure it is valid BASE VIEW
15997
	  -- Make sure it is valid BASE VIEW
15970
      IF viewid < 1
15998
	  IF viewid < 1
15971
      THEN
15999
	  THEN
15972
         viewid := 7;                            -- This is default base view
16000
		 viewid := 7;							-- This is default base view
-
 
16001
	  END IF;
-
 
16002
 
-
 
16003
	  IF (ispatch IS NULL)
-
 
16004
	  THEN
-
 
16005
		 -- Add package to new area
-
 
16006
		 pk_release.add_package (pvid, viewid, rtagid, userid);
15973
      END IF;
16007
	  END IF;
-
 
16008
 
-
 
16009
	  -- Now do post Release Actions
-
 
16010
	  pk_release.run_post_actions (pvid, rtagid);
-
 
16011
 
-
 
16012
	  -- Now delete old version from DO_NOT_RIPPLE Table if it Exists
-
 
16013
	  DELETE FROM do_not_ripple
-
 
16014
			WHERE rtag_id = rtagid AND pv_id = lastversionid;
-
 
16015
 
-
 
16016
	  -- Now delete old version from ADVISORY_RIPPLES Table if it Exists
-
 
16017
	  DELETE FROM advisory_ripple
-
 
16018
			WHERE rtag_id = rtagid AND pv_id = lastversionid;
15974
 
16019
 
15975
      IF (ispatch IS NULL)
-
 
15976
      THEN
-
 
15977
         -- Add package to new area
-
 
15978
         pk_release.add_package (pvid, viewid, rtagid, userid);
-
 
15979
      END IF;
-
 
15980
 
-
 
15981
      -- Now do post Release Actions
-
 
15982
      pk_release.run_post_actions (pvid, rtagid);
-
 
15983
 
-
 
15984
      -- Now delete old version from DO_NOT_RIPPLE Table if it Exists
-
 
15985
      DELETE FROM do_not_ripple
-
 
15986
            WHERE rtag_id = rtagid AND pv_id = lastversionid;
-
 
15987
 
-
 
15988
      -- Now delete old version from ADVISORY_RIPPLES Table if it Exists
-
 
15989
      DELETE FROM advisory_ripple
-
 
15990
            WHERE rtag_id = rtagid AND pv_id = lastversionid;
-
 
15991
 
-
 
15992
      -- Log
16020
	  -- Log
15993
      log_action (pvid, 'action', userid, 'End of Make Package Release...');
16021
	  log_action (pvid, 'action', userid, 'End of Make Package Release...');
15994
   END;
16022
   END;
15995
 
16023
 
15996
/*-------------------------------------------------------------------------------------------------------*/
16024
/*-------------------------------------------------------------------------------------------------------*/
15997
   PROCEDURE auto_make_release (
16025
   PROCEDURE auto_make_release (
15998
      pvid            IN   NUMBER,
16026
	  pvid			IN   NUMBER,
15999
      rtagid          IN   NUMBER,
16027
	  rtagid		  IN   NUMBER,
16000
      userid          IN   NUMBER,
16028
	  userid		  IN   NUMBER,
16001
      vext            IN   package_versions.v_ext%TYPE,
16029
	  vext			IN   package_versions.v_ext%TYPE,
16002
      ssv_ext         IN   package_versions.v_ext%TYPE,
16030
	  ssv_ext		 IN   package_versions.v_ext%TYPE,
16003
      clonefrompvid   IN   NUMBER
16031
	  clonefrompvid   IN   NUMBER
16004
   )
16032
   )
16005
   IS
16033
   IS
16006
      viewid          NUMBER;
16034
	  viewid		  NUMBER;
16007
      envtab          NUMBER;
16035
	  envtab		  NUMBER;
16008
      ispatch         CHAR (1) := NULL;
16036
	  ispatch		 CHAR (1) := NULL;
16009
      buildtype       CHAR (1) := NULL;
16037
	  buildtype	   CHAR (1) := NULL;
16010
      lastversionid   NUMBER;
16038
	  lastversionid   NUMBER;
16011
   BEGIN
16039
   BEGIN
16012
      -- Check if package is patch
16040
	  -- Check if package is patch
16013
      SELECT pv.is_patch, pv.build_type, pv.last_pv_id
16041
	  SELECT pv.is_patch, pv.build_type, pv.last_pv_id
16014
        INTO ispatch, buildtype, lastversionid
16042
		INTO ispatch, buildtype, lastversionid
16015
        FROM package_versions pv
16043
		FROM package_versions pv
16016
       WHERE pv.pv_id = pvid;
16044
	   WHERE pv.pv_id = pvid;
-
 
16045
 
-
 
16046
	  IF vext <> ssv_ext
-
 
16047
	  THEN
-
 
16048
		 -- Get ViewId
-
 
16049
		 viewid := get_package_view (clonefrompvid, rtagid);
-
 
16050
		 -- Remove from current area
-
 
16051
		 envtab := pk_environment.get_package_area (clonefrompvid, rtagid);
-
 
16052
	  ELSE
-
 
16053
		 -- Get ViewId
-
 
16054
		 viewid := get_package_view (pvid, rtagid);
-
 
16055
		 -- Remove from current area
-
 
16056
		 envtab := pk_environment.get_package_area (pvid, rtagid);
-
 
16057
	  END IF;
-
 
16058
 
-
 
16059
	  -- Make sure that package was in work-in-progress or pending before makeing it release
-
 
16060
	  -- Exclude patches, ripple builds
-
 
16061
	  IF (envtab < 0)
-
 
16062
	  THEN
-
 
16063
		 -- Not found in work-in-progress or pending
-
 
16064
		 IF (ispatch IS NULL) AND (buildtype = 'M')
-
 
16065
		 THEN
-
 
16066
			raise_application_error (-20000,
-
 
16067
									 'This package cannot be released here.'
-
 
16068
									);
-
 
16069
		 END IF;
-
 
16070
	  END IF;
-
 
16071
 
-
 
16072
	  -- Log
-
 
16073
	  log_action (pvid, 'action', userid, 'Start of Make Package Release...');
-
 
16074
 
-
 
16075
	  IF vext <> ssv_ext
-
 
16076
	  THEN
-
 
16077
		 IF envtab = 0
-
 
16078
		 THEN
-
 
16079
			-- WORK IN PROGRESS --
-
 
16080
			pk_work_in_progress.remove_package (clonefrompvid, rtagid,
-
 
16081
												userid);
-
 
16082
		 ELSIF envtab = 1
-
 
16083
		 THEN
-
 
16084
			-- PENDING --
-
 
16085
			pk_planned.remove_package (clonefrompvid, rtagid, userid);
-
 
16086
		 ELSIF envtab = 2
-
 
16087
		 THEN
-
 
16088
			-- RELEASED --
-
 
16089
			pk_release.remove_package (clonefrompvid, rtagid, userid);
-
 
16090
		 END IF;
-
 
16091
	  ELSE
-
 
16092
		 IF envtab = 0
-
 
16093
		 THEN
-
 
16094
			-- WORK IN PROGRESS --
-
 
16095
			pk_work_in_progress.remove_package (pvid, rtagid, userid);
-
 
16096
		 ELSIF envtab = 1
-
 
16097
		 THEN
-
 
16098
			-- PENDING --
-
 
16099
			pk_planned.remove_package (pvid, rtagid, userid);
-
 
16100
		 END IF;
-
 
16101
	  END IF;
-
 
16102
 
-
 
16103
	  -- Change package state
-
 
16104
	  pk_package.change_state (pvid, 'Y', userid);
-
 
16105
 
-
 
16106
	  -- Make sure it is valid BASE VIEW
-
 
16107
	  IF viewid < 1
-
 
16108
	  THEN
-
 
16109
		 viewid := 7;							-- This is default base view
-
 
16110
	  END IF;
-
 
16111
 
-
 
16112
	  IF (ispatch IS NULL)
-
 
16113
	  THEN
-
 
16114
		 -- Add package to new area
-
 
16115
		 pk_release.add_package (pvid, viewid, rtagid, userid);
-
 
16116
	  END IF;
-
 
16117
 
-
 
16118
	  -- Now do post Release Actions
-
 
16119
	  pk_release.run_post_actions (pvid, rtagid);
-
 
16120
	  -- Now update the Dash_Board Table (DEPRECATED)
-
 
16121
	  pk_rmapi.update_dash_board (rtagid);
-
 
16122
 
-
 
16123
	  -- Now delete old version from DO_NOT_RIPPLE Table if it Exists
-
 
16124
	  DELETE FROM do_not_ripple
-
 
16125
			WHERE rtag_id = rtagid AND pv_id = lastversionid;
-
 
16126
 
-
 
16127
	  -- Now delete old version from ADVISORY_RIPPLES Table if it Exists
-
 
16128
	  DELETE FROM advisory_ripple
-
 
16129
			WHERE rtag_id = rtagid AND pv_id = lastversionid;
16017
 
16130
 
16018
      IF vext <> ssv_ext
-
 
16019
      THEN
-
 
16020
         -- Get ViewId
-
 
16021
         viewid := get_package_view (clonefrompvid, rtagid);
-
 
16022
         -- Remove from current area
-
 
16023
         envtab := pk_environment.get_package_area (clonefrompvid, rtagid);
-
 
16024
      ELSE
-
 
16025
         -- Get ViewId
-
 
16026
         viewid := get_package_view (pvid, rtagid);
-
 
16027
         -- Remove from current area
-
 
16028
         envtab := pk_environment.get_package_area (pvid, rtagid);
-
 
16029
      END IF;
-
 
16030
 
-
 
16031
      -- Make sure that package was in work-in-progress or pending before makeing it release
-
 
16032
      -- Exclude patches, ripple builds
-
 
16033
      IF (envtab < 0)
-
 
16034
      THEN
-
 
16035
         -- Not found in work-in-progress or pending
-
 
16036
         IF (ispatch IS NULL) AND (buildtype = 'M')
-
 
16037
         THEN
-
 
16038
            raise_application_error (-20000,
-
 
16039
                                     'This package cannot be released here.'
-
 
16040
                                    );
-
 
16041
         END IF;
-
 
16042
      END IF;
-
 
16043
 
-
 
16044
      -- Log
-
 
16045
      log_action (pvid, 'action', userid, 'Start of Make Package Release...');
-
 
16046
 
-
 
16047
      IF vext <> ssv_ext
-
 
16048
      THEN
-
 
16049
         IF envtab = 0
-
 
16050
         THEN
-
 
16051
            -- WORK IN PROGRESS --
-
 
16052
            pk_work_in_progress.remove_package (clonefrompvid, rtagid,
-
 
16053
                                                userid);
-
 
16054
         ELSIF envtab = 1
-
 
16055
         THEN
-
 
16056
            -- PENDING --
-
 
16057
            pk_planned.remove_package (clonefrompvid, rtagid, userid);
-
 
16058
         ELSIF envtab = 2
-
 
16059
         THEN
-
 
16060
            -- RELEASED --
-
 
16061
            pk_release.remove_package (clonefrompvid, rtagid, userid);
-
 
16062
         END IF;
-
 
16063
      ELSE
-
 
16064
         IF envtab = 0
-
 
16065
         THEN
-
 
16066
            -- WORK IN PROGRESS --
-
 
16067
            pk_work_in_progress.remove_package (pvid, rtagid, userid);
-
 
16068
         ELSIF envtab = 1
-
 
16069
         THEN
-
 
16070
            -- PENDING --
-
 
16071
            pk_planned.remove_package (pvid, rtagid, userid);
-
 
16072
         END IF;
-
 
16073
      END IF;
-
 
16074
 
-
 
16075
      -- Change package state
-
 
16076
      pk_package.change_state (pvid, 'Y', userid);
-
 
16077
 
-
 
16078
      -- Make sure it is valid BASE VIEW
-
 
16079
      IF viewid < 1
-
 
16080
      THEN
-
 
16081
         viewid := 7;                            -- This is default base view
-
 
16082
      END IF;
-
 
16083
 
-
 
16084
      IF (ispatch IS NULL)
-
 
16085
      THEN
-
 
16086
         -- Add package to new area
-
 
16087
         pk_release.add_package (pvid, viewid, rtagid, userid);
-
 
16088
      END IF;
-
 
16089
 
-
 
16090
      -- Now do post Release Actions
-
 
16091
      pk_release.run_post_actions (pvid, rtagid);
-
 
16092
      -- Now update the Dash_Board Table (DEPRECATED)
-
 
16093
      pk_rmapi.update_dash_board (rtagid);
-
 
16094
 
-
 
16095
      -- Now delete old version from DO_NOT_RIPPLE Table if it Exists
-
 
16096
      DELETE FROM do_not_ripple
-
 
16097
            WHERE rtag_id = rtagid AND pv_id = lastversionid;
-
 
16098
 
-
 
16099
      -- Now delete old version from ADVISORY_RIPPLES Table if it Exists
-
 
16100
      DELETE FROM advisory_ripple
-
 
16101
            WHERE rtag_id = rtagid AND pv_id = lastversionid;
-
 
16102
 
-
 
16103
      -- Log
16131
	  -- Log
16104
      log_action (pvid, 'action', userid, 'End of Make Package Release...');
16132
	  log_action (pvid, 'action', userid, 'End of Make Package Release...');
16105
   END;
16133
   END;
16106
 
16134
 
16107
/*-------------------------------------------------------------------------------------------------------*/
16135
/*-------------------------------------------------------------------------------------------------------*/
16108
   PROCEDURE make_unrelease (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
16136
   PROCEDURE make_unrelease (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
16109
   IS
16137
   IS
16110
      viewid   NUMBER;
16138
	  viewid   NUMBER;
16111
      envtab   NUMBER;
16139
	  envtab   NUMBER;
16112
   BEGIN
16140
   BEGIN
16113
      -- Get ViewId
16141
	  -- Get ViewId
16114
      --ViewId := PK_RELEASE.GET_PACKAGE_VIEW ( PvId, RtagId );
16142
	  --ViewId := PK_RELEASE.GET_PACKAGE_VIEW ( PvId, RtagId );
16115
      viewid := get_package_view (pvid, rtagid);
16143
	  viewid := get_package_view (pvid, rtagid);
16116
      -- Remove from current area
16144
	  -- Remove from current area
16117
      envtab := pk_environment.get_package_area (pvid, rtagid);
16145
	  envtab := pk_environment.get_package_area (pvid, rtagid);
16118
      -- Log
16146
	  -- Log
16119
      log_action (pvid,
16147
	  log_action (pvid,
16120
                  'action',
16148
				  'action',
16121
                  userid,
16149
				  userid,
16122
                  'Start of Make Package UnRelease...'
16150
				  'Start of Make Package UnRelease...'
16123
                 );
16151
				 );
16124
 
16152
 
16125
      IF envtab = 2
16153
	  IF envtab = 2
16126
      THEN
16154
	  THEN
16127
         -- RELEASE AREA --
16155
		 -- RELEASE AREA --
16128
         pk_release.remove_package (pvid, rtagid, userid);
16156
		 pk_release.remove_package (pvid, rtagid, userid);
16129
      ELSIF envtab = 1
16157
	  ELSIF envtab = 1
16130
      THEN
16158
	  THEN
16131
         -- PENDING --
16159
		 -- PENDING --
16132
         pk_planned.remove_package (pvid, rtagid, userid);
16160
		 pk_planned.remove_package (pvid, rtagid, userid);
16133
      END IF;
16161
	  END IF;
16134
 
16162
 
16135
      -- Change package state
16163
	  -- Change package state
16136
      pk_package.change_state (pvid, 'N', userid);
16164
	  pk_package.change_state (pvid, 'N', userid);
16137
 
16165
 
16138
      -- Make sure it is valid BASE VIEW
16166
	  -- Make sure it is valid BASE VIEW
16139
      IF viewid < 1
16167
	  IF viewid < 1
16140
      THEN
16168
	  THEN
16141
         viewid := 7;                            -- This is default base view
16169
		 viewid := 7;							-- This is default base view
16142
      END IF;
16170
	  END IF;
16143
 
16171
 
16144
      -- Add package to new area
16172
	  -- Add package to new area
16145
      pk_work_in_progress.add_package (pvid, viewid, rtagid, userid);
16173
	  pk_work_in_progress.add_package (pvid, viewid, rtagid, userid);
16146
      -- Now do post Release Actions
16174
	  -- Now do post Release Actions
16147
      pk_release.run_post_actions (pvid, rtagid);
16175
	  pk_release.run_post_actions (pvid, rtagid);
16148
      -- Log
16176
	  -- Log
16149
      log_action (pvid, 'action', userid, 'End of Make Package UnRelease...');
16177
	  log_action (pvid, 'action', userid, 'End of Make Package UnRelease...');
16150
   END;
16178
   END;
16151
 
16179
 
16152
/*-------------------------------------------------------------------------------------------------------*/
16180
/*-------------------------------------------------------------------------------------------------------*/
16153
   PROCEDURE make_pending (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
16181
   PROCEDURE make_pending (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
16154
   IS
16182
   IS
16155
      viewid      NUMBER;
16183
	  viewid	  NUMBER;
16156
      ispatch     CHAR (1) := NULL;
16184
	  ispatch	 CHAR (1) := NULL;
16157
      buildtype   CHAR (1) := NULL;
16185
	  buildtype   CHAR (1) := NULL;
16158
   BEGIN
16186
   BEGIN
16159
      -- Check if package is patch
16187
	  -- Check if package is patch
16160
      SELECT pv.is_patch, pv.build_type
16188
	  SELECT pv.is_patch, pv.build_type
16161
        INTO ispatch, buildtype
16189
		INTO ispatch, buildtype
16162
        FROM package_versions pv
16190
		FROM package_versions pv
16163
       WHERE pv.pv_id = pvid;
16191
	   WHERE pv.pv_id = pvid;
-
 
16192
 
-
 
16193
	  -- Get ViewId
-
 
16194
	  viewid := get_package_view (pvid, rtagid);
-
 
16195
	  --ViewId := PK_WORK_IN_PROGRESS.GET_PACKAGE_VIEW ( PvId, RtagId );
-
 
16196
 
-
 
16197
	  -- Log
-
 
16198
	  log_action (pvid, 'action', userid, 'Start of Make Package Pending...');
-
 
16199
 
-
 
16200
	  IF (ispatch IS NULL)
-
 
16201
	  THEN
-
 
16202
		 -- Remove from current area
-
 
16203
		 pk_work_in_progress.remove_package (pvid, rtagid, userid);
-
 
16204
		 -- Change package state
-
 
16205
		 pk_package.change_state (pvid, 'P', userid);
-
 
16206
		 -- Add package to new area
-
 
16207
		 pk_planned.add_package (pvid, viewid, rtagid, userid);
-
 
16208
	  END IF;
16164
 
16209
 
16165
      -- Get ViewId
-
 
16166
      viewid := get_package_view (pvid, rtagid);
-
 
16167
      --ViewId := PK_WORK_IN_PROGRESS.GET_PACKAGE_VIEW ( PvId, RtagId );
-
 
16168
 
-
 
16169
      -- Log
16210
	  -- Log
16170
      log_action (pvid, 'action', userid, 'Start of Make Package Pending...');
-
 
16171
 
-
 
16172
      IF (ispatch IS NULL)
-
 
16173
      THEN
-
 
16174
         -- Remove from current area
-
 
16175
         pk_work_in_progress.remove_package (pvid, rtagid, userid);
-
 
16176
         -- Change package state
-
 
16177
         pk_package.change_state (pvid, 'P', userid);
-
 
16178
         -- Add package to new area
-
 
16179
         pk_planned.add_package (pvid, viewid, rtagid, userid);
-
 
16180
      END IF;
-
 
16181
 
-
 
16182
      -- Log
-
 
16183
      log_action (pvid, 'action', userid, 'End of Make Package Pending...');
16211
	  log_action (pvid, 'action', userid, 'End of Make Package Pending...');
16184
   END;
16212
   END;
16185
 
16213
 
16186
/*-------------------------------------------------------------------------------------------------------*/
16214
/*-------------------------------------------------------------------------------------------------------*/
16187
   PROCEDURE make_approved (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
16215
   PROCEDURE make_approved (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
16188
   IS
16216
   IS
16189
   BEGIN
16217
   BEGIN
16190
      -- Log
16218
	  -- Log
16191
      log_action (pvid,
16219
	  log_action (pvid,
16192
                  'action',
16220
				  'action',
16193
                  userid,
16221
				  userid,
16194
                  'Start of Package Pending Approval...'
16222
				  'Start of Package Pending Approval...'
16195
                 );
16223
				 );
16196
      -- Change package state
16224
	  -- Change package state
16197
      pk_package.change_state (pvid, 'A', userid);
16225
	  pk_package.change_state (pvid, 'A', userid);
16198
      -- Log
16226
	  -- Log
16199
      log_action (pvid, 'action', userid,
16227
	  log_action (pvid, 'action', userid,
16200
                  'End of Package Pending Approval...');
16228
				  'End of Package Pending Approval...');
16201
   END;
16229
   END;
16202
 
16230
 
16203
/*-------------------------------------------------------------------------------------------------------*/
16231
/*-------------------------------------------------------------------------------------------------------*/
16204
   PROCEDURE make_reject (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
16232
   PROCEDURE make_reject (pvid IN NUMBER, rtagid IN NUMBER, userid IN NUMBER)
16205
   IS
16233
   IS
16206
      viewid   NUMBER;
16234
	  viewid   NUMBER;
-
 
16235
	  operation CHAR;
16207
   BEGIN
16236
   BEGIN
16208
      -- Get ViewId
16237
	  -- Get ViewId
16209
      viewid := get_package_view (pvid, rtagid);
16238
	  viewid := get_package_view (pvid, rtagid);
16210
-- ViewId := PK_PLANNED.GET_PACKAGE_VIEW ( PvId, RtagId );
16239
	  -- ViewId := PK_PLANNED.GET_PACKAGE_VIEW ( PvId, RtagId );
-
 
16240
 
-
 
16241
	  -- DEVI-45275
-
 
16242
	  -- If the package version is an official version that is to be rejected from a merge operation
-
 
16243
	  -- then find out in order to prevent it being added back to work-in-progress table . This will
-
 
16244
	  -- be denoted by the operation field in the planned table being A or S
-
 
16245
	  operation := ' ';
-
 
16246
	  SELECT
-
 
16247
	  (CASE WHEN pl.operation IS NOT NULL THEN pl.operation ELSE ' ' END) INTO operation
-
 
16248
	  FROM planned pl
-
 
16249
	  WHERE pl.PV_ID = pvid
-
 
16250
	  AND pl.RTAG_ID = rtagid;
16211
 
16251
 
16212
      -- Log
16252
	  -- Log
16213
      log_action (pvid, 'action', userid, 'Start of Reject Package...');
16253
	  log_action (pvid, 'action', userid, 'Start of Reject Package...');
16214
      -- Remove from current area
16254
	  -- Remove from current area
16215
      pk_planned.remove_package (pvid, rtagid, userid);
16255
	  pk_planned.remove_package (pvid, rtagid, userid);
-
 
16256
 
-
 
16257
	  -- DEVI-45275 - Prevent merge candidate from being added back to work-in-progress table .
-
 
16258
	  IF operation <> 'A' AND operation <> 'S'
-
 
16259
	  THEN
16216
      -- Change package state
16260
	  -- Change package state
16217
      pk_package.change_state (pvid, 'R', userid);
16261
	  pk_package.change_state (pvid, 'R', userid);
16218
      -- Add package to new area
16262
	  -- Add package to new area
16219
      pk_work_in_progress.add_package (pvid, viewid, rtagid, userid);
16263
	  pk_work_in_progress.add_package (pvid, viewid, rtagid, userid);
-
 
16264
	  ELSE
-
 
16265
		log_action (pvid, 'action', userid, 'Rejected Package Merge');
-
 
16266
	  END IF;
16220
      -- Log
16267
	  -- Log
16221
      log_action (pvid, 'action', userid, 'Start of Reject Package...');
16268
	  log_action (pvid, 'action', userid, 'End of Reject Package...');
16222
   END;
16269
   END;
16223
 
16270
 
16224
/*-------------------------------------------------------------------------------------------------------*/
16271
/*-------------------------------------------------------------------------------------------------------*/
16225
   PROCEDURE change_package_view (
16272
   PROCEDURE change_package_view (
16226
      pvid        IN   NUMBER,
16273
	  pvid		IN   NUMBER,
16227
      rtagid      IN   NUMBER,
16274
	  rtagid	  IN   NUMBER,
16228
      newviewid   IN   NUMBER
16275
	  newviewid   IN   NUMBER
16229
   )
16276
   )
16230
   IS
16277
   IS
16231
      envtab   NUMBER;
16278
	  envtab   NUMBER;
16232
   BEGIN
16279
   BEGIN
16233
      envtab := pk_environment.get_package_area (pvid, rtagid);
16280
	  envtab := pk_environment.get_package_area (pvid, rtagid);
16234
 
16281
 
16235
      IF envtab = 0
16282
	  IF envtab = 0
16236
      THEN
16283
	  THEN
16237
         -- WORK IN PROGRESS --
16284
		 -- WORK IN PROGRESS --
16238
         pk_work_in_progress.change_package_view (pvid, rtagid, newviewid);
16285
		 pk_work_in_progress.change_package_view (pvid, rtagid, newviewid);
16239
      ELSIF envtab = 1
16286
	  ELSIF envtab = 1
16240
      THEN
16287
	  THEN
16241
         -- PENDING --
16288
		 -- PENDING --
16242
         pk_planned.change_package_view (pvid, rtagid, newviewid);
16289
		 pk_planned.change_package_view (pvid, rtagid, newviewid);
16243
      ELSIF envtab = 2
16290
	  ELSIF envtab = 2
16244
      THEN
16291
	  THEN
16245
         -- RELEASED --
16292
		 -- RELEASED --
16246
         pk_release.change_package_view (pvid, rtagid, newviewid);
16293
		 pk_release.change_package_view (pvid, rtagid, newviewid);
16247
      END IF;
16294
	  END IF;
16248
   END;
16295
   END;
16249
 
16296
 
16250
/*-------------------------------------------------------------------------------------------------------*/
16297
/*-------------------------------------------------------------------------------------------------------*/
16251
   PROCEDURE find_package (
16298
   PROCEDURE find_package (
16252
      skeyword      IN       VARCHAR2,
16299
	  skeyword	  IN	   VARCHAR2,
16253
      nrtagid       IN       NUMBER,
16300
	  nrtagid	   IN	   NUMBER,
16254
      nsearcharea   IN       NUMBER,
16301
	  nsearcharea   IN	   NUMBER,
16255
      recordset     OUT      typecur
16302
	  recordset	 OUT	  typecur
16256
   )
16303
   )
16257
   IS
16304
   IS
16258
   BEGIN
16305
   BEGIN
16259
      IF nsearcharea = 0
16306
	  IF nsearcharea = 0
16260
      THEN
16307
	  THEN
16261
         /* Search Work In Progress */
16308
		 /* Search Work In Progress */
16262
         OPEN recordset FOR
16309
		 OPEN recordset FOR
16263
            SELECT   nsearcharea AS env_area, vi.view_name, pv.dlocked,
16310
			SELECT   nsearcharea AS env_area, vi.view_name, pv.dlocked,
16264
                     pkg.pkg_name, pv.pv_id, pv.pkg_version, pv.comments,
16311
					 pkg.pkg_name, pv.pv_id, pv.pkg_version, pv.comments,
16265
                     pv.modified_stamp, usr.full_name, usr.user_email
16312
					 pv.modified_stamp, usr.full_name, usr.user_email
16266
                FROM views vi,
16313
				FROM views vi,
16267
                     work_in_progress rc,
16314
					 work_in_progress rc,
16268
                     PACKAGES pkg,
16315
					 PACKAGES pkg,
16269
                     package_versions pv,
16316
					 package_versions pv,
16270
                     users usr
16317
					 users usr
16271
               WHERE rc.view_id = vi.view_id
16318
			   WHERE rc.view_id = vi.view_id
16272
                 AND rc.pv_id = pv.pv_id
16319
				 AND rc.pv_id = pv.pv_id
16273
                 AND pkg.pkg_id = pv.pkg_id
16320
				 AND pkg.pkg_id = pv.pkg_id
16274
                 AND pv.modifier_id = usr.user_id
16321
				 AND pv.modifier_id = usr.user_id
16275
                 AND rc.rtag_id = nrtagid
16322
				 AND rc.rtag_id = nrtagid
16276
                 AND UPPER (pkg.pkg_name) LIKE UPPER (skeyword)
16323
				 AND UPPER (pkg.pkg_name) LIKE UPPER (skeyword)
16277
            ORDER BY UPPER (pkg.pkg_name);
16324
			ORDER BY UPPER (pkg.pkg_name);
16278
      ELSIF nsearcharea = 1
16325
	  ELSIF nsearcharea = 1
16279
      THEN
16326
	  THEN
16280
         /* Search Pending */
16327
		 /* Search Pending */
16281
         OPEN recordset FOR
16328
		 OPEN recordset FOR
16282
            SELECT   nsearcharea AS env_area, vi.view_name, pv.dlocked,
16329
			SELECT   nsearcharea AS env_area, vi.view_name, pv.dlocked,
16283
                     pkg.pkg_name, pv.pv_id, pv.pkg_version, pv.comments,
16330
					 pkg.pkg_name, pv.pv_id, pv.pkg_version, pv.comments,
16284
                     pv.modified_stamp, usr.full_name, usr.user_email
16331
					 pv.modified_stamp, usr.full_name, usr.user_email
16285
                FROM views vi,
16332
				FROM views vi,
16286
                     planned rc,
16333
					 planned rc,
16287
                     PACKAGES pkg,
16334
					 PACKAGES pkg,
16288
                     package_versions pv,
16335
					 package_versions pv,
16289
                     users usr
16336
					 users usr
16290
               WHERE rc.view_id = vi.view_id
16337
			   WHERE rc.view_id = vi.view_id
16291
                 AND rc.pv_id = pv.pv_id
16338
				 AND rc.pv_id = pv.pv_id
16292
                 AND pkg.pkg_id = pv.pkg_id
16339
				 AND pkg.pkg_id = pv.pkg_id
16293
                 AND pv.modifier_id = usr.user_id
16340
				 AND pv.modifier_id = usr.user_id
16294
                 AND rc.rtag_id = nrtagid
16341
				 AND rc.rtag_id = nrtagid
16295
                 AND UPPER (pkg.pkg_name) LIKE UPPER (skeyword)
16342
				 AND UPPER (pkg.pkg_name) LIKE UPPER (skeyword)
16296
            ORDER BY UPPER (pkg.pkg_name);
16343
			ORDER BY UPPER (pkg.pkg_name);
16297
      ELSIF nsearcharea = 2
16344
	  ELSIF nsearcharea = 2
16298
      THEN
16345
	  THEN
16299
         /* Search Released */
16346
		 /* Search Released */
16300
         OPEN recordset FOR
16347
		 OPEN recordset FOR
16301
            SELECT   nsearcharea AS env_area, vi.view_name, pv.dlocked,
16348
			SELECT   nsearcharea AS env_area, vi.view_name, pv.dlocked,
16302
                     pkg.pkg_name, pv.pv_id, pv.pkg_version, pv.comments,
16349
					 pkg.pkg_name, pv.pv_id, pv.pkg_version, pv.comments,
16303
                     pv.modified_stamp, usr.full_name, usr.user_email
16350
					 pv.modified_stamp, usr.full_name, usr.user_email
16304
                FROM views vi,
16351
				FROM views vi,
16305
                     release_content rc,
16352
					 release_content rc,
16306
                     PACKAGES pkg,
16353
					 PACKAGES pkg,
16307
                     package_versions pv,
16354
					 package_versions pv,
16308
                     users usr
16355
					 users usr
16309
               WHERE rc.base_view_id = vi.view_id
16356
			   WHERE rc.base_view_id = vi.view_id
16310
                 AND rc.pv_id = pv.pv_id
16357
				 AND rc.pv_id = pv.pv_id
16311
                 AND pkg.pkg_id = pv.pkg_id
16358
				 AND pkg.pkg_id = pv.pkg_id
16312
                 AND pv.modifier_id = usr.user_id
16359
				 AND pv.modifier_id = usr.user_id
16313
                 AND rc.rtag_id = nrtagid
16360
				 AND rc.rtag_id = nrtagid
16314
                 AND UPPER (pkg.pkg_name) LIKE UPPER (skeyword)
16361
				 AND UPPER (pkg.pkg_name) LIKE UPPER (skeyword)
16315
            ORDER BY UPPER (pkg.pkg_name);
16362
			ORDER BY UPPER (pkg.pkg_name);
16316
      ELSIF nsearcharea = 3
16363
	  ELSIF nsearcharea = 3
16317
      THEN
16364
	  THEN
16318
         /* Search ALL */
16365
		 /* Search ALL */
16319
         OPEN recordset FOR
16366
		 OPEN recordset FOR
16320
            SELECT   rc.env_area, vi.view_name, pv.dlocked, pkg.pkg_name,
16367
			SELECT   rc.env_area, vi.view_name, pv.dlocked, pkg.pkg_name,
16321
                     pv.pv_id, pv.pkg_version, pv.comments,
16368
					 pv.pv_id, pv.pkg_version, pv.comments,
16322
                     pv.modified_stamp, usr.full_name, usr.user_email
16369
					 pv.modified_stamp, usr.full_name, usr.user_email
16323
                FROM views vi,
16370
				FROM views vi,
16324
                     environment_view rc,
16371
					 environment_view rc,
16325
                     PACKAGES pkg,
16372
					 PACKAGES pkg,
16326
                     package_versions pv,
16373
					 package_versions pv,
16327
                     users usr
16374
					 users usr
16328
               WHERE rc.view_id = vi.view_id
16375
			   WHERE rc.view_id = vi.view_id
16329
                 AND rc.pv_id = pv.pv_id
16376
				 AND rc.pv_id = pv.pv_id
16330
                 AND pkg.pkg_id = pv.pkg_id
16377
				 AND pkg.pkg_id = pv.pkg_id
16331
                 AND pv.modifier_id = usr.user_id
16378
				 AND pv.modifier_id = usr.user_id
16332
                 AND rc.rtag_id = nrtagid
16379
				 AND rc.rtag_id = nrtagid
16333
                 AND UPPER (pkg.pkg_name) LIKE UPPER (skeyword)
16380
				 AND UPPER (pkg.pkg_name) LIKE UPPER (skeyword)
16334
            ORDER BY UPPER (pkg.pkg_name);
16381
			ORDER BY UPPER (pkg.pkg_name);
16335
      END IF;
16382
	  END IF;
16336
   END;
16383
   END;
16337
 
16384
 
16338
/*-------------------------------------------------------------------------------------------------------*/
16385
/*-------------------------------------------------------------------------------------------------------*/
16339
   PROCEDURE find_file (
16386
   PROCEDURE find_file (
16340
      skeyword      IN       VARCHAR2,
16387
	  skeyword	  IN	   VARCHAR2,
16341
      nrtagid       IN       NUMBER,
16388
	  nrtagid	   IN	   NUMBER,
16342
      nsearcharea   IN       NUMBER,
16389
	  nsearcharea   IN	   NUMBER,
16343
      npagesize     IN       NUMBER,
16390
	  npagesize	 IN	   NUMBER,
16344
      recordset     OUT      typecur
16391
	  recordset	 OUT	  typecur
16345
   )
16392
   )
16346
   IS
16393
   IS
16347
   BEGIN
16394
   BEGIN
16348
      IF nsearcharea = 0
16395
	  IF nsearcharea = 0
16349
      THEN
16396
	  THEN
16350
         /* Search Work In Progress */
16397
		 /* Search Work In Progress */
16351
         OPEN recordset FOR
16398
		 OPEN recordset FOR
16352
            SELECT   qry.*
16399
			SELECT   qry.*
16353
                FROM (
16400
				FROM (
16354
                      /* File search on Packages */
16401
					  /* File search on Packages */
16355
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16402
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16356
                             pv.pv_id, pv.pkg_version, art.crc_cksum
16403
							 pv.pv_id, pv.pkg_version, art.crc_cksum
16357
                        FROM work_in_progress rc,
16404
						FROM work_in_progress rc,
16358
                             PACKAGES pkg,
16405
							 PACKAGES pkg,
16359
                             package_versions pv,
16406
							 package_versions pv,
16360
                             release_components art
16407
							 release_components art
16361
                       WHERE rc.pv_id = art.pv_id
16408
					   WHERE rc.pv_id = art.pv_id
16362
                         AND pv.pkg_id = pkg.pkg_id
16409
						 AND pv.pkg_id = pkg.pkg_id
16363
                         AND rc.pv_id = pv.pv_id
16410
						 AND rc.pv_id = pv.pv_id
16364
                         AND rc.rtag_id = nrtagid
16411
						 AND rc.rtag_id = nrtagid
16365
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)
16412
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)
16366
                      UNION ALL
16413
					  UNION ALL
16367
                      /* File search on Products */
16414
					  /* File search on Products */
16368
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16415
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16369
                             pv.pv_id, pv.pkg_version, art.crc_cksum
16416
							 pv.pv_id, pv.pkg_version, art.crc_cksum
16370
                        FROM work_in_progress rc,
16417
						FROM work_in_progress rc,
16371
                             PACKAGES pkg,
16418
							 PACKAGES pkg,
16372
                             package_versions pv,
16419
							 package_versions pv,
16373
                             product_components art
16420
							 product_components art
16374
                       WHERE rc.pv_id = art.pv_id
16421
					   WHERE rc.pv_id = art.pv_id
16375
                         AND pv.pkg_id = pkg.pkg_id
16422
						 AND pv.pkg_id = pkg.pkg_id
16376
                         AND rc.pv_id = pv.pv_id
16423
						 AND rc.pv_id = pv.pv_id
16377
                         AND rc.rtag_id = nrtagid
16424
						 AND rc.rtag_id = nrtagid
16378
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)) qry
16425
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)) qry
16379
               WHERE ROWNUM <= npagesize
16426
			   WHERE ROWNUM <= npagesize
16380
            ORDER BY UPPER (qry.pkg_name);
16427
			ORDER BY UPPER (qry.pkg_name);
16381
      ELSIF nsearcharea = 1
16428
	  ELSIF nsearcharea = 1
16382
      THEN
16429
	  THEN
16383
         /* Search Pending */
16430
		 /* Search Pending */
16384
         OPEN recordset FOR
16431
		 OPEN recordset FOR
16385
            SELECT   qry.*
16432
			SELECT   qry.*
16386
                FROM (
16433
				FROM (
16387
                      /* File search on Packages */
16434
					  /* File search on Packages */
16388
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16435
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16389
                             pv.pv_id, pv.pkg_version, art.crc_cksum
16436
							 pv.pv_id, pv.pkg_version, art.crc_cksum
16390
                        FROM planned rc,
16437
						FROM planned rc,
16391
                             PACKAGES pkg,
16438
							 PACKAGES pkg,
16392
                             package_versions pv,
16439
							 package_versions pv,
16393
                             release_components art
16440
							 release_components art
16394
                       WHERE rc.pv_id = art.pv_id
16441
					   WHERE rc.pv_id = art.pv_id
16395
                         AND pv.pkg_id = pkg.pkg_id
16442
						 AND pv.pkg_id = pkg.pkg_id
16396
                         AND rc.pv_id = pv.pv_id
16443
						 AND rc.pv_id = pv.pv_id
16397
                         AND rc.rtag_id = nrtagid
16444
						 AND rc.rtag_id = nrtagid
16398
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)
16445
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)
16399
                      UNION ALL
16446
					  UNION ALL
16400
                      /* File search on Products */
16447
					  /* File search on Products */
16401
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16448
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16402
                             pv.pv_id, pv.pkg_version, art.crc_cksum
16449
							 pv.pv_id, pv.pkg_version, art.crc_cksum
16403
                        FROM planned rc,
16450
						FROM planned rc,
16404
                             PACKAGES pkg,
16451
							 PACKAGES pkg,
16405
                             package_versions pv,
16452
							 package_versions pv,
16406
                             product_components art
16453
							 product_components art
16407
                       WHERE rc.pv_id = art.pv_id
16454
					   WHERE rc.pv_id = art.pv_id
16408
                         AND pv.pkg_id = pkg.pkg_id
16455
						 AND pv.pkg_id = pkg.pkg_id
16409
                         AND rc.pv_id = pv.pv_id
16456
						 AND rc.pv_id = pv.pv_id
16410
                         AND rc.rtag_id = nrtagid
16457
						 AND rc.rtag_id = nrtagid
16411
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)) qry
16458
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)) qry
16412
               WHERE ROWNUM <= npagesize
16459
			   WHERE ROWNUM <= npagesize
16413
            ORDER BY UPPER (qry.pkg_name);
16460
			ORDER BY UPPER (qry.pkg_name);
16414
      ELSIF nsearcharea = 2
16461
	  ELSIF nsearcharea = 2
16415
      THEN
16462
	  THEN
16416
         /* Search Released */
16463
		 /* Search Released */
16417
         OPEN recordset FOR
16464
		 OPEN recordset FOR
16418
            SELECT   qry.*
16465
			SELECT   qry.*
16419
                FROM (
16466
				FROM (
16420
                      /* File search on Packages */
16467
					  /* File search on Packages */
16421
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16468
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16422
                             pv.pv_id, pv.pkg_version, art.crc_cksum,
16469
							 pv.pv_id, pv.pkg_version, art.crc_cksum,
16423
                             NULL AS patch_id
16470
							 NULL AS patch_id
16424
                        FROM release_content rc,
16471
						FROM release_content rc,
16425
                             PACKAGES pkg,
16472
							 PACKAGES pkg,
16426
                             package_versions pv,
16473
							 package_versions pv,
16427
                             release_components art
16474
							 release_components art
16428
                       WHERE rc.pv_id = art.pv_id
16475
					   WHERE rc.pv_id = art.pv_id
16429
                         AND pv.pkg_id = pkg.pkg_id
16476
						 AND pv.pkg_id = pkg.pkg_id
16430
                         AND rc.pv_id = pv.pv_id
16477
						 AND rc.pv_id = pv.pv_id
16431
                         AND rc.rtag_id = nrtagid
16478
						 AND rc.rtag_id = nrtagid
16432
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)
16479
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)
16433
                      UNION ALL
16480
					  UNION ALL
16434
                      /* File search on Products */
16481
					  /* File search on Products */
16435
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16482
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16436
                             pv.pv_id, pv.pkg_version, art.crc_cksum,
16483
							 pv.pv_id, pv.pkg_version, art.crc_cksum,
16437
                             NULL AS patch_id
16484
							 NULL AS patch_id
16438
                        FROM release_content rc,
16485
						FROM release_content rc,
16439
                             PACKAGES pkg,
16486
							 PACKAGES pkg,
16440
                             package_versions pv,
16487
							 package_versions pv,
16441
                             product_components art
16488
							 product_components art
16442
                       WHERE rc.pv_id = art.pv_id
16489
					   WHERE rc.pv_id = art.pv_id
16443
                         AND pv.pkg_id = pkg.pkg_id
16490
						 AND pv.pkg_id = pkg.pkg_id
16444
                         AND rc.pv_id = pv.pv_id
16491
						 AND rc.pv_id = pv.pv_id
16445
                         AND rc.rtag_id = nrtagid
16492
						 AND rc.rtag_id = nrtagid
16446
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)
16493
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)
16447
                      UNION ALL
16494
					  UNION ALL
16448
                      /* File search on Patches */
16495
					  /* File search on Patches */
16449
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16496
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16450
                             pv.pv_id, pv.pkg_version, art.crc_cksum,
16497
							 pv.pv_id, pv.pkg_version, art.crc_cksum,
16451
                             DECODE (art.file_path,
16498
							 DECODE (art.file_path,
16452
                                     NULL, pp.patch_id,
16499
									 NULL, pp.patch_id,
16453
                                     NULL
16500
									 NULL
16454
                                    ) AS patch_id
16501
									) AS patch_id
16455
                        FROM release_content rc,
16502
						FROM release_content rc,
16456
                             PACKAGES pkg,
16503
							 PACKAGES pkg,
16457
                             package_versions pv,
16504
							 package_versions pv,
16458
                             release_components art,
16505
							 release_components art,
16459
                             package_patches pp
16506
							 package_patches pp
16460
                       WHERE pv.pv_id = pp.pv_id
16507
					   WHERE pv.pv_id = pp.pv_id
16461
                         AND pv.pkg_id = pkg.pkg_id
16508
						 AND pv.pkg_id = pkg.pkg_id
16462
                         AND rc.rtag_id = nrtagid
16509
						 AND rc.rtag_id = nrtagid
16463
                         AND art.pv_id = pp.patch_id
16510
						 AND art.pv_id = pp.patch_id
16464
                         AND rc.pv_id = pp.pv_id
16511
						 AND rc.pv_id = pp.pv_id
16465
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)) qry
16512
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)) qry
16466
               WHERE ROWNUM <= npagesize
16513
			   WHERE ROWNUM <= npagesize
16467
            ORDER BY UPPER (qry.pkg_name);
16514
			ORDER BY UPPER (qry.pkg_name);
16468
      ELSIF nsearcharea = 3
16515
	  ELSIF nsearcharea = 3
16469
      THEN
16516
	  THEN
16470
         /* Search ALL */
16517
		 /* Search ALL */
16471
         OPEN recordset FOR
16518
		 OPEN recordset FOR
16472
            SELECT   qry.*
16519
			SELECT   qry.*
16473
                FROM (
16520
				FROM (
16474
                      /* File search on Packages */
16521
					  /* File search on Packages */
16475
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16522
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16476
                             pv.pv_id, pv.pkg_version, art.crc_cksum,
16523
							 pv.pv_id, pv.pkg_version, art.crc_cksum,
16477
                             NULL AS patch_id
16524
							 NULL AS patch_id
16478
                        FROM environment_view rc,
16525
						FROM environment_view rc,
16479
                             PACKAGES pkg,
16526
							 PACKAGES pkg,
16480
                             package_versions pv,
16527
							 package_versions pv,
16481
                             release_components art
16528
							 release_components art
16482
                       WHERE rc.pv_id = art.pv_id
16529
					   WHERE rc.pv_id = art.pv_id
16483
                         AND pv.pkg_id = pkg.pkg_id
16530
						 AND pv.pkg_id = pkg.pkg_id
16484
                         AND rc.pv_id = pv.pv_id
16531
						 AND rc.pv_id = pv.pv_id
16485
                         AND rc.rtag_id = nrtagid
16532
						 AND rc.rtag_id = nrtagid
16486
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)
16533
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)
16487
                      UNION ALL
16534
					  UNION ALL
16488
                      /* File search on Products */
16535
					  /* File search on Products */
16489
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16536
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16490
                             pv.pv_id, pv.pkg_version, art.crc_cksum,
16537
							 pv.pv_id, pv.pkg_version, art.crc_cksum,
16491
                             NULL AS patch_id
16538
							 NULL AS patch_id
16492
                        FROM environment_view rc,
16539
						FROM environment_view rc,
16493
                             PACKAGES pkg,
16540
							 PACKAGES pkg,
16494
                             package_versions pv,
16541
							 package_versions pv,
16495
                             product_components art
16542
							 product_components art
16496
                       WHERE rc.pv_id = art.pv_id
16543
					   WHERE rc.pv_id = art.pv_id
16497
                         AND pv.pkg_id = pkg.pkg_id
16544
						 AND pv.pkg_id = pkg.pkg_id
16498
                         AND rc.pv_id = pv.pv_id
16545
						 AND rc.pv_id = pv.pv_id
16499
                         AND rc.rtag_id = nrtagid
16546
						 AND rc.rtag_id = nrtagid
16500
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)
16547
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)
16501
                      UNION ALL
16548
					  UNION ALL
16502
                      /* File search on Patches */
16549
					  /* File search on Patches */
16503
                      SELECT art.file_name, art.file_path, pkg.pkg_name,
16550
					  SELECT art.file_name, art.file_path, pkg.pkg_name,
16504
                             pv.pv_id, pv.pkg_version, art.crc_cksum,
16551
							 pv.pv_id, pv.pkg_version, art.crc_cksum,
16505
                             DECODE (art.file_path,
16552
							 DECODE (art.file_path,
16506
                                     NULL, pp.patch_id,
16553
									 NULL, pp.patch_id,
16507
                                     NULL
16554
									 NULL
16508
                                    ) AS patch_id
16555
									) AS patch_id
16509
                        FROM release_content rc,
16556
						FROM release_content rc,
16510
                             PACKAGES pkg,
16557
							 PACKAGES pkg,
16511
                             package_versions pv,
16558
							 package_versions pv,
16512
                             release_components art,
16559
							 release_components art,
16513
                             package_patches pp
16560
							 package_patches pp
16514
                       WHERE pv.pv_id = pp.pv_id
16561
					   WHERE pv.pv_id = pp.pv_id
16515
                         AND pv.pkg_id = pkg.pkg_id
16562
						 AND pv.pkg_id = pkg.pkg_id
16516
                         AND rc.rtag_id = nrtagid
16563
						 AND rc.rtag_id = nrtagid
16517
                         AND art.pv_id = pp.patch_id
16564
						 AND art.pv_id = pp.patch_id
16518
                         AND rc.pv_id = pp.pv_id
16565
						 AND rc.pv_id = pp.pv_id
16519
                         AND UPPER (art.file_name) LIKE UPPER (skeyword)) qry
16566
						 AND UPPER (art.file_name) LIKE UPPER (skeyword)) qry
16520
               WHERE ROWNUM <= npagesize
16567
			   WHERE ROWNUM <= npagesize
16521
            ORDER BY UPPER (qry.pkg_name);
16568
			ORDER BY UPPER (qry.pkg_name);
16522
      END IF;
16569
	  END IF;
16523
   END;
16570
   END;
16524
 
16571
 
16525
/*-------------------------------------------------------------------------------------------------------*/
16572
/*-------------------------------------------------------------------------------------------------------*/
16526
   PROCEDURE get_prodrelease_items (
16573
   PROCEDURE get_prodrelease_items (
16527
      rtagid             IN       NUMBER,
16574
	  rtagid			 IN	   NUMBER,
16528
      ntruerecordcount   OUT      NUMBER,
16575
	  ntruerecordcount   OUT	  NUMBER,
16529
      recordset          OUT      typecur
16576
	  recordset		  OUT	  typecur
16530
   )
16577
   )
16531
   IS
16578
   IS
16532
   BEGIN
16579
   BEGIN
16533
      -- Get true record count n the number of integration products
16580
	  -- Get true record count n the number of integration products
16534
      SELECT COUNT (rc.pv_id)
16581
	  SELECT COUNT (rc.pv_id)
16535
        INTO ntruerecordcount
16582
		INTO ntruerecordcount
16536
        FROM release_content rc
16583
		FROM release_content rc
16537
       WHERE rc.rtag_id = rtagid;
16584
	   WHERE rc.rtag_id = rtagid;
16538
 
16585
 
16539
      OPEN recordset FOR
16586
	  OPEN recordset FOR
16540
         SELECT   vi.view_id, vi.view_name, rel.pkg_state,    --rel.pkg_state,
16587
		 SELECT   vi.view_id, vi.view_name, rel.pkg_state,	--rel.pkg_state,
16541
                  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16588
				  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16542
                  pv.pkg_version, pv.dlocked, pv.pv_description
16589
				  pv.pkg_version, pv.dlocked, pv.pv_description
16543
             FROM release_content rel,
16590
			 FROM release_content rel,
16544
                  PACKAGES pkg,
16591
				  PACKAGES pkg,
16545
                  package_versions pv,
16592
				  package_versions pv,
16546
                  views vi
16593
				  views vi
16547
            WHERE pv.pkg_id = pkg.pkg_id
16594
			WHERE pv.pkg_id = pkg.pkg_id
16548
              AND rel.pv_id = pv.pv_id
16595
			  AND rel.pv_id = pv.pv_id
16549
              AND rel.base_view_id = vi.view_id
16596
			  AND rel.base_view_id = vi.view_id
16550
              AND pv.is_deployable = 'Y'
16597
			  AND pv.is_deployable = 'Y'
16551
              AND rtag_id = rtagid
16598
			  AND rtag_id = rtagid
16552
              AND pv.pv_id NOT IN (SELECT DISTINCT prod_id
16599
			  AND pv.pv_id NOT IN (SELECT DISTINCT prod_id
16553
                                              FROM deployment_manager.os_contents)
16600
											  FROM deployment_manager.os_contents)
16554
              AND rel.product_state IS NULL
16601
			  AND rel.product_state IS NULL
16555
         ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16602
		 ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16556
   END;
16603
   END;
16557
 
16604
 
16558
/*-------------------------------------------------------------------------------------------------------*/
16605
/*-------------------------------------------------------------------------------------------------------*/
16559
   PROCEDURE get_integration_items (
16606
   PROCEDURE get_integration_items (
16560
      rtagid             IN       NUMBER,
16607
	  rtagid			 IN	   NUMBER,
16561
      ntruerecordcount   OUT      NUMBER,
16608
	  ntruerecordcount   OUT	  NUMBER,
16562
      recordset          OUT      typecur
16609
	  recordset		  OUT	  typecur
16563
   )
16610
   )
16564
   IS
16611
   IS
16565
   BEGIN
16612
   BEGIN
16566
      -- Get true record count n the number of integration products
16613
	  -- Get true record count n the number of integration products
16567
      SELECT COUNT (rc.pv_id)
16614
	  SELECT COUNT (rc.pv_id)
16568
        INTO ntruerecordcount
16615
		INTO ntruerecordcount
16569
        FROM release_content rc
16616
		FROM release_content rc
16570
       WHERE rc.rtag_id = rtagid AND rc.product_state = 1;
16617
	   WHERE rc.rtag_id = rtagid AND rc.product_state = 1;
16571
 
16618
 
16572
      OPEN recordset FOR
16619
	  OPEN recordset FOR
16573
         SELECT   vi.view_id, vi.view_name, rel.pkg_state,
16620
		 SELECT   vi.view_id, vi.view_name, rel.pkg_state,
16574
                  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16621
				  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16575
                  pv.pkg_version, pv.dlocked, pv.pv_description
16622
				  pv.pkg_version, pv.dlocked, pv.pv_description
16576
             FROM release_content rel,
16623
			 FROM release_content rel,
16577
                  PACKAGES pkg,
16624
				  PACKAGES pkg,
16578
                  package_versions pv,
16625
				  package_versions pv,
16579
                  views vi
16626
				  views vi
16580
            WHERE pv.pkg_id = pkg.pkg_id
16627
			WHERE pv.pkg_id = pkg.pkg_id
16581
              AND rel.pv_id = pv.pv_id
16628
			  AND rel.pv_id = pv.pv_id
16582
              AND rel.base_view_id = vi.view_id
16629
			  AND rel.base_view_id = vi.view_id
16583
              AND pv.is_deployable = 'Y'
16630
			  AND pv.is_deployable = 'Y'
16584
              AND rtag_id = rtagid
16631
			  AND rtag_id = rtagid
16585
              AND rel.product_state IN (1, 5)
16632
			  AND rel.product_state IN (1, 5)
16586
         ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16633
		 ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16587
   END;
16634
   END;
16588
 
16635
 
16589
/*-------------------------------------------------------------------------------------------------------*/
16636
/*-------------------------------------------------------------------------------------------------------*/
16590
   PROCEDURE get_test_items (
16637
   PROCEDURE get_test_items (
16591
      rtagid             IN       NUMBER,
16638
	  rtagid			 IN	   NUMBER,
16592
      ntruerecordcount   OUT      NUMBER,
16639
	  ntruerecordcount   OUT	  NUMBER,
16593
      recordset          OUT      typecur
16640
	  recordset		  OUT	  typecur
16594
   )
16641
   )
16595
   IS
16642
   IS
16596
   BEGIN
16643
   BEGIN
16597
      -- Get true record count n the number of test products
16644
	  -- Get true record count n the number of test products
16598
      SELECT COUNT (rc.pv_id)
16645
	  SELECT COUNT (rc.pv_id)
16599
        INTO ntruerecordcount
16646
		INTO ntruerecordcount
16600
        FROM release_content rc
16647
		FROM release_content rc
16601
       WHERE rc.rtag_id = rtagid AND rc.product_state = 2;
16648
	   WHERE rc.rtag_id = rtagid AND rc.product_state = 2;
16602
 
16649
 
16603
      OPEN recordset FOR
16650
	  OPEN recordset FOR
16604
         SELECT   vi.view_id, vi.view_name, rel.pkg_state,
16651
		 SELECT   vi.view_id, vi.view_name, rel.pkg_state,
16605
                  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16652
				  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16606
                  pv.pkg_version, pv.dlocked, pv.pv_description
16653
				  pv.pkg_version, pv.dlocked, pv.pv_description
16607
             FROM release_content rel,
16654
			 FROM release_content rel,
16608
                  PACKAGES pkg,
16655
				  PACKAGES pkg,
16609
                  package_versions pv,
16656
				  package_versions pv,
16610
                  views vi
16657
				  views vi
16611
            WHERE pv.pkg_id = pkg.pkg_id
16658
			WHERE pv.pkg_id = pkg.pkg_id
16612
              AND rel.pv_id = pv.pv_id
16659
			  AND rel.pv_id = pv.pv_id
16613
              AND rel.base_view_id = vi.view_id
16660
			  AND rel.base_view_id = vi.view_id
16614
              AND pv.is_deployable = 'Y'
16661
			  AND pv.is_deployable = 'Y'
16615
              AND rtag_id = rtagid
16662
			  AND rtag_id = rtagid
16616
              AND rel.product_state = 2
16663
			  AND rel.product_state = 2
16617
         ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16664
		 ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16618
   END;
16665
   END;
16619
 
16666
 
16620
/*-------------------------------------------------------------------------------------------------------*/
16667
/*-------------------------------------------------------------------------------------------------------*/
16621
   PROCEDURE get_deploy_items (
16668
   PROCEDURE get_deploy_items (
16622
      rtagid             IN       NUMBER,
16669
	  rtagid			 IN	   NUMBER,
16623
      ntruerecordcount   OUT      NUMBER,
16670
	  ntruerecordcount   OUT	  NUMBER,
16624
      recordset          OUT      typecur
16671
	  recordset		  OUT	  typecur
16625
   )
16672
   )
16626
   IS
16673
   IS
16627
   BEGIN
16674
   BEGIN
16628
      -- Get true record count n the number of deploy products
16675
	  -- Get true record count n the number of deploy products
16629
      SELECT COUNT (rc.pv_id)
16676
	  SELECT COUNT (rc.pv_id)
16630
        INTO ntruerecordcount
16677
		INTO ntruerecordcount
16631
        FROM release_content rc
16678
		FROM release_content rc
16632
       WHERE rc.rtag_id = rtagid AND rc.product_state = 3;
16679
	   WHERE rc.rtag_id = rtagid AND rc.product_state = 3;
16633
 
16680
 
16634
      OPEN recordset FOR
16681
	  OPEN recordset FOR
16635
         SELECT   vi.view_id, vi.view_name, rel.pkg_state,
16682
		 SELECT   vi.view_id, vi.view_name, rel.pkg_state,
16636
                  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16683
				  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16637
                  pv.pkg_version, pv.dlocked, pv.pv_description
16684
				  pv.pkg_version, pv.dlocked, pv.pv_description
16638
             FROM release_content rel,
16685
			 FROM release_content rel,
16639
                  PACKAGES pkg,
16686
				  PACKAGES pkg,
16640
                  package_versions pv,
16687
				  package_versions pv,
16641
                  views vi
16688
				  views vi
16642
            WHERE pv.pkg_id = pkg.pkg_id
16689
			WHERE pv.pkg_id = pkg.pkg_id
16643
              AND rel.pv_id = pv.pv_id
16690
			  AND rel.pv_id = pv.pv_id
16644
              AND rel.base_view_id = vi.view_id
16691
			  AND rel.base_view_id = vi.view_id
16645
              AND pv.is_deployable = 'Y'
16692
			  AND pv.is_deployable = 'Y'
16646
              AND rtag_id = rtagid
16693
			  AND rtag_id = rtagid
16647
              AND rel.product_state IN (3, 5)
16694
			  AND rel.product_state IN (3, 5)
16648
              AND pv.pv_id NOT IN (SELECT DISTINCT prod_id
16695
			  AND pv.pv_id NOT IN (SELECT DISTINCT prod_id
16649
                                              FROM deployment_manager.os_contents)
16696
											  FROM deployment_manager.os_contents)
16650
         ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16697
		 ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16651
   END;
16698
   END;
16652
 
16699
 
16653
/*-------------------------------------------------------------------------------------------------------*/
16700
/*-------------------------------------------------------------------------------------------------------*/
16654
   PROCEDURE get_reject_items (
16701
   PROCEDURE get_reject_items (
16655
      rtagid             IN       NUMBER,
16702
	  rtagid			 IN	   NUMBER,
16656
      ntruerecordcount   OUT      NUMBER,
16703
	  ntruerecordcount   OUT	  NUMBER,
16657
      recordset          OUT      typecur
16704
	  recordset		  OUT	  typecur
16658
   )
16705
   )
16659
   IS
16706
   IS
16660
   BEGIN
16707
   BEGIN
16661
      -- Get true record count n the number of reject products
16708
	  -- Get true record count n the number of reject products
16662
      SELECT COUNT (rc.pv_id)
16709
	  SELECT COUNT (rc.pv_id)
16663
        INTO ntruerecordcount
16710
		INTO ntruerecordcount
16664
        FROM release_content rc
16711
		FROM release_content rc
16665
       WHERE rc.rtag_id = rtagid AND rc.product_state = 4;
16712
	   WHERE rc.rtag_id = rtagid AND rc.product_state = 4;
16666
 
16713
 
16667
      OPEN recordset FOR
16714
	  OPEN recordset FOR
16668
         SELECT   vi.view_id, vi.view_name, rel.pkg_state,
16715
		 SELECT   vi.view_id, vi.view_name, rel.pkg_state,
16669
                  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16716
				  rel.deprecated_state, pv.pv_id, pkg.pkg_name,
16670
                  pv.pkg_version, pv.dlocked, pv.pv_description
16717
				  pv.pkg_version, pv.dlocked, pv.pv_description
16671
             FROM release_content rel,
16718
			 FROM release_content rel,
16672
                  PACKAGES pkg,
16719
				  PACKAGES pkg,
16673
                  package_versions pv,
16720
				  package_versions pv,
16674
                  views vi
16721
				  views vi
16675
            WHERE pv.pkg_id = pkg.pkg_id
16722
			WHERE pv.pkg_id = pkg.pkg_id
16676
              AND rel.pv_id = pv.pv_id
16723
			  AND rel.pv_id = pv.pv_id
16677
              AND rel.base_view_id = vi.view_id
16724
			  AND rel.base_view_id = vi.view_id
16678
              AND pv.is_deployable = 'Y'
16725
			  AND pv.is_deployable = 'Y'
16679
              AND rtag_id = rtagid
16726
			  AND rtag_id = rtagid
16680
              AND rel.product_state = 4
16727
			  AND rel.product_state = 4
16681
         ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16728
		 ORDER BY UPPER (vi.view_name), UPPER (pkg.pkg_name);
16682
   END;
16729
   END;
16683
/*-------------------------------------------------------------------------------------------------------*/
16730
/*-------------------------------------------------------------------------------------------------------*/
-
 
16731
   -- DEVI-45275 - this procedure performs the merge of an existing package version in the planned table
-
 
16732
   -- to the release_content table.
-
 
16733
 
-
 
16734
  PROCEDURE approve_merge (
-
 
16735
	PvId	IN NUMBER,
-
 
16736
	RtagId  IN NUMBER,
-
 
16737
	UserId  IN NUMBER
-
 
16738
  )
-
 
16739
  IS
-
 
16740
	viewid		  NUMBER;
-
 
16741
	envtab		  NUMBER;
-
 
16742
	oper			CHAR;
-
 
16743
  BEGIN
-
 
16744
	   -- Get ViewId
-
 
16745
	  viewid := get_package_view (pvid, rtagid);
-
 
16746
 
-
 
16747
	  -- Get the view tab
-
 
16748
	  envtab := pk_environment.get_package_area (pvid, rtagid);
-
 
16749
 
-
 
16750
	  -- Make sure that package was in pending before merging it to released
-
 
16751
	  IF (envtab <> 1)
-
 
16752
	  THEN
-
 
16753
		 -- Not found in pending
-
 
16754
		 raise_application_error (-20000,
-
 
16755
								  'This package cannot be released here.'
-
 
16756
								 );
-
 
16757
	  END IF;
-
 
16758
 
-
 
16759
	  -- Log
-
 
16760
	  log_action (pvid, 'action', userid, 'Start of Package Merge...');
-
 
16761
 
-
 
16762
	  -- Get the planned operation type A=Add, S=Subtract
-
 
16763
	  SELECT ev.operation INTO oper
-
 
16764
	  FROM environment_view ev
-
 
16765
	  WHERE ev.rtag_id = RtagId
-
 
16766
	  AND ev.pv_id = PvId
-
 
16767
	  AND (ev.operation = 'A' OR ev.operation = 'S');
-
 
16768
 
-
 
16769
	  -- Remove from Pending
-
 
16770
	  pk_planned.remove_package (PvId, RtagId, UserId);
-
 
16771
 
-
 
16772
	  -- Either add to the release, or remove from the release as the operation commands
-
 
16773
	  IF oper = 'A'
-
 
16774
	  THEN
-
 
16775
		pk_release.add_package(PvId, viewId, RtagId, UserId);
-
 
16776
	  ELSIF oper = 'S'
-
 
16777
	  THEN
-
 
16778
		  pk_release.remove_package(PvId, RtagId, UserId);
-
 
16779
	  END IF;
-
 
16780
 
-
 
16781
	  touch_release(RtagId);
-
 
16782
 
-
 
16783
	  -- Log
-
 
16784
	  log_action (pvid, 'action', userid, 'End of Package Merge...');
-
 
16785
  END;
-
 
16786
/*-------------------------------------------------------------------------------------------------------*/
16684
END pk_environment;
16787
END pk_environment;
16685
/
16788
/
16686
 
16789
 
16687
CREATE OR REPLACE PACKAGE BODY PK_WORK_IN_PROGRESS IS
16790
CREATE OR REPLACE PACKAGE BODY PK_WORK_IN_PROGRESS IS
16688
 
16791
 
Line 18675... Line 18778...
18675
	END;
18778
	END;
18676
 
18779
 
18677
END Rm_Issues;
18780
END Rm_Issues;
18678
/
18781
/
18679
 
18782
 
18680
CREATE OR REPLACE PACKAGE BODY PK_PLANNED IS
18783
CREATE OR REPLACE PACKAGE BODY                   "PK_PLANNED" IS
18681
 
18784
 
18682
/*
18785
/*
18683
------------------------------
18786
------------------------------
18684
||  Last Modified:  S.Vukovic
18787
||  Last Modified:  G.Huddy
18685
||  Modified Date:  6/May/2005
18788
||  Modified Date:  28/May/2008
18686
||  Body Version:   1.0
18789
||  Body Version:   1.1
18687
------------------------------
18790
------------------------------
18688
*/
18791
*/
18689
 
18792
 
18690
 
18793
 
18691
/*-------------------------------------------------------------------------------------------------------*/
18794
/*-------------------------------------------------------------------------------------------------------*/
Line 18694... Line 18797...
18694
	oldPvId NUMBER;
18797
	oldPvId NUMBER;
18695
	ReleaseLocation VARCHAR2(4000);
18798
	ReleaseLocation VARCHAR2(4000);
18696
	IsPatch CHAR(1) := NULL;
18799
	IsPatch CHAR(1) := NULL;
18697
	sLocation VARCHAR2(4000) := NULL;
18800
	sLocation VARCHAR2(4000) := NULL;
18698
	nRtagIdLocation NUMBER;
18801
	nRtagIdLocation NUMBER;
18699
	
18802
 
18700
 
18803
 
18701
 
18804
 
18702
BEGIN
18805
BEGIN
18703
	/*--------------- Business Rules Here -------------------*/
18806
	/*--------------- Business Rules Here -------------------*/
18704
	/*-------------------------------------------------------*/
18807
	/*-------------------------------------------------------*/
18705
 
18808
 
18706
	BEGIN
18809
	BEGIN
18707
		-- Check if Exists in "Work in progress" anywhere in the world, except "Closed mode" releases
18810
		-- Check if Exists in "Work in progress" anywhere in the world, except "Closed mode" releases
18708
		SELECT proj.PROJ_NAME ||' > '|| rt.RTAG_NAME, rt.RTAG_ID  INTO sLocation, nRtagIdLocation
18811
		SELECT proj.PROJ_NAME ||' > '|| rt.RTAG_NAME, rt.RTAG_ID  INTO sLocation, nRtagIdLocation
18709
		  FROM PLANNED pl,
18812
		  FROM PLANNED pl,
18710
		  	   RELEASE_TAGS rt,
18813
			   RELEASE_TAGS rt,
18711
			   PROJECTS proj
18814
			   PROJECTS proj
18712
		 WHERE pl.PV_ID = newPvId
18815
		 WHERE pl.PV_ID = newPvId
18713
		   AND pl.RTAG_ID = rt.RTAG_ID
18816
		   AND pl.RTAG_ID = rt.RTAG_ID
18714
		   AND rt.OFFICIAL != 'Y'
18817
		   AND rt.OFFICIAL != 'Y'
18715
		   AND rt.PROJ_ID = proj.PROJ_ID;
18818
		   AND rt.PROJ_ID = proj.PROJ_ID;
18716
 
18819
 
18717
		EXCEPTION
18820
		EXCEPTION
18718
	    	WHEN NO_DATA_FOUND THEN
18821
			WHEN NO_DATA_FOUND THEN
18719
	       		sLocation := NULL;
18822
				sLocation := NULL;
18720
	END;	   	     
18823
	END;
18721
 
18824
 
18722
 
18825
 
18723
 
18826
 
18724
	IF (sLocation IS NULL) OR (nRtagIdLocation = RtagId) THEN
18827
	IF (sLocation IS NULL) OR (nRtagIdLocation = RtagId) THEN
18725
 
18828
 
18726
		-- Add to "Pending" area
18829
		-- Add to "Pending" area
18727
		INSERT INTO PLANNED ( RTAG_ID, PV_ID, VIEW_ID )
18830
		INSERT INTO PLANNED ( RTAG_ID, PV_ID, VIEW_ID, OPERATION )
18728
		VALUES( RtagId, newPvId, ViewId );
18831
		VALUES( RtagId, newPvId, ViewId, 'R' );
18729
 
18832
 
18730
 
18833
 
18731
	    /* LOG ACTION */
18834
		/* LOG ACTION */
18732
		SELECT proj.PROJ_NAME ||' / '|| rt.RTAG_NAME INTO ReleaseLocation
18835
		SELECT proj.PROJ_NAME ||' / '|| rt.RTAG_NAME INTO ReleaseLocation
18733
		  FROM PROJECTS proj,
18836
		  FROM PROJECTS proj,
18734
		  	   RELEASE_TAGS rt
18837
			   RELEASE_TAGS rt
18735
		 WHERE rt.PROJ_ID = proj.PROJ_ID
18838
		 WHERE rt.PROJ_ID = proj.PROJ_ID
18736
		   AND rt.RTAG_ID = RtagId;
18839
		   AND rt.RTAG_ID = RtagId;
18737
 
18840
 
18738
		Log_Action ( newPvId, 'add_to_planned', UserId, 'Location: '|| ReleaseLocation );
18841
		Log_Action ( newPvId, 'add_to_planned', UserId, 'Location: '|| ReleaseLocation );
18739
	
18842
 
18740
	ELSE
18843
	ELSE
18741
		
18844
 
18742
		RAISE_APPLICATION_ERROR (-20000, 'This version is already in Pending Area at '|| sLocation ||'.' );		
18845
		RAISE_APPLICATION_ERROR (-20000, 'This version is already in Pending Area at '|| sLocation ||'.' );
18743
 
18846
 
18744
	END IF;
18847
	END IF;
18745
 
18848
 
18746
END;
18849
END;
18747
/*-------------------------------------------------------------------------------------------------------*/
18850
/*-------------------------------------------------------------------------------------------------------*/
Line 18756... Line 18859...
18756
 
18859
 
18757
 
18860
 
18758
	-- Get release location for logging pusposes
18861
	-- Get release location for logging pusposes
18759
	SELECT proj.PROJ_NAME  ||' / '|| rt.RTAG_NAME INTO ReleaseLocation
18862
	SELECT proj.PROJ_NAME  ||' / '|| rt.RTAG_NAME INTO ReleaseLocation
18760
	  FROM PROJECTS proj,
18863
	  FROM PROJECTS proj,
18761
	  	   RELEASE_TAGS rt
18864
		   RELEASE_TAGS rt
18762
	 WHERE rt.PROJ_ID = proj.PROJ_ID
18865
	 WHERE rt.PROJ_ID = proj.PROJ_ID
18763
	   AND rt.RTAG_ID = RtagId;
18866
	   AND rt.RTAG_ID = RtagId;
18764
 
18867
 
18765
 
18868
 
18766
	-- Delete from Work In Progress
18869
	-- Delete from Work In Progress
Line 18790... Line 18893...
18790
END;
18893
END;
18791
/*-------------------------------------------------------------------------------------------------------*/
18894
/*-------------------------------------------------------------------------------------------------------*/
18792
PROCEDURE GET_VIEW_CONTENT ( RtagId IN NUMBER, ViewId IN NUMBER, RecordSet OUT typeCur ) IS
18895
PROCEDURE GET_VIEW_CONTENT ( RtagId IN NUMBER, ViewId IN NUMBER, RecordSet OUT typeCur ) IS
18793
 
18896
 
18794
	IsBaseView CHAR(1);
18897
	IsBaseView CHAR(1);
18795
	
18898
 
18796
BEGIN
18899
BEGIN
18797
 
18900
 
18798
	-- Check if the view is BASE VIEW
18901
	-- Check if the view is BASE VIEW
18799
	SELECT vi.BASE_VIEW INTO IsBaseView
18902
	SELECT vi.BASE_VIEW INTO IsBaseView
18800
	  FROM VIEWS vi
18903
	  FROM VIEWS vi
18801
	 WHERE vi.VIEW_ID = ViewId;
18904
	 WHERE vi.VIEW_ID = ViewId;
18802
 
18905
 
18803
	 
18906
 
18804
	IF (IsBaseView = 'Y') THEN 
18907
	IF (IsBaseView = 'Y') THEN
18805
		-- Get Base view content
18908
		-- Get Base view content
18806
		OPEN RecordSet FOR
18909
		OPEN RecordSet FOR
18807
		SELECT 0 AS PKG_STATE,
18910
		SELECT 0 AS PKG_STATE,
18808
			   NULL AS DEPRECATED_STATE,
18911
			   NULL AS DEPRECATED_STATE,
18809
			   pv.pv_id, 
18912
			   pv.pv_id,
18810
			   pkg.pkg_name, 
18913
			   pkg.pkg_name,
18811
			   pv.pkg_version, 
18914
			   pv.pkg_version,
18812
			   pv.dlocked, 
18915
			   pv.dlocked,
18813
			   pv.pv_description,
18916
			   pv.pv_description,
18814
			   pv.BUILD_TYPE
18917
			   pv.BUILD_TYPE,
-
 
18918
			   rel.operation
18815
		  FROM PLANNED rel,
18919
		  FROM PLANNED rel,
18816
		       packages pkg,
18920
			   packages pkg,
18817
		       package_versions pv
18921
			   package_versions pv
18818
		 WHERE pv.pkg_id = pkg.pkg_id
18922
		 WHERE pv.pkg_id = pkg.pkg_id
18819
		   AND rel.pv_id = pv.pv_id
18923
		   AND rel.pv_id = pv.pv_id
18820
		   AND rel.VIEW_ID = ViewId
18924
		   AND rel.VIEW_ID = ViewId
18821
		   AND rel.RTAG_ID = RtagId
18925
		   AND rel.RTAG_ID = RtagId
18822
		 ORDER BY UPPER(pkg.PKG_NAME);
18926
		 ORDER BY UPPER(pkg.PKG_NAME);
18823
 
18927
 
18824
	ELSE	 
18928
	ELSE
18825
	 
18929
 
18826
	 	-- Get non base view content
18930
		-- Get non base view content
18827
		OPEN RecordSet FOR
18931
		OPEN RecordSet FOR
18828
		SELECT 0 AS PKG_STATE,
18932
		SELECT 0 AS PKG_STATE,
18829
			   NULL AS DEPRECATED_STATE,
18933
			   NULL AS DEPRECATED_STATE,
18830
			   pv.pv_id, 
18934
			   pv.pv_id,
18831
			   pkg.pkg_name, 
18935
			   pkg.pkg_name,
18832
			   pv.pkg_version, 
18936
			   pv.pkg_version,
18833
			   pv.dlocked, 
18937
			   pv.dlocked,
18834
			   pv.pv_description,
18938
			   pv.pv_description,
18835
			   pv.BUILD_TYPE
18939
			   pv.BUILD_TYPE,
-
 
18940
			   rel.operation
18836
		  FROM PLANNED rel,
18941
		  FROM PLANNED rel,
18837
		       packages pkg,
18942
			   packages pkg,
18838
		       package_versions pv,
18943
			   package_versions pv,
18839
			   VIEW_DEF vd
18944
			   VIEW_DEF vd
18840
		 WHERE pv.pkg_id = pkg.pkg_id
18945
		 WHERE pv.pkg_id = pkg.pkg_id
18841
		   AND rel.pv_id = pv.pv_id
18946
		   AND rel.pv_id = pv.pv_id
18842
		   AND rel.RTAG_ID = RtagId
18947
		   AND rel.RTAG_ID = RtagId
18843
		   AND vd.VIEW_ID = ViewId
18948
		   AND vd.VIEW_ID = ViewId
18844
		   AND vd.PKG_ID = pv.PKG_ID
18949
		   AND vd.PKG_ID = pv.PKG_ID
18845
		 ORDER BY UPPER(pkg.PKG_NAME);
18950
		 ORDER BY UPPER(pkg.PKG_NAME);
18846
	 
18951
 
18847
	END IF;	 
18952
	END IF;
18848
	 
18953
 
18849
 
18954
 
18850
END;
18955
END;
18851
/*-------------------------------------------------------------------------------------------------------*/
18956
/*-------------------------------------------------------------------------------------------------------*/
18852
PROCEDURE CHANGE_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER, NewViewId IN NUMBER ) IS
18957
PROCEDURE CHANGE_PACKAGE_VIEW ( PvId IN NUMBER, RtagId IN NUMBER, NewViewId IN NUMBER ) IS
18853
	
18958
 
18854
BEGIN
18959
BEGIN
18855
	
18960
 
18856
	UPDATE PLANNED pl SET
18961
	UPDATE PLANNED pl SET
18857
	pl.VIEW_ID = NewViewId
18962
	pl.VIEW_ID = NewViewId
18858
	WHERE pl.PV_ID = PvId
18963
	WHERE pl.PV_ID = PvId
18859
	  AND pl.RTAG_ID = RtagId;
18964
	  AND pl.RTAG_ID = RtagId;
18860
	
18965
 
-
 
18966
END;
-
 
18967
/*-------------------------------------------------------------------------------------------------------*/
-
 
18968
-- DEVI-45275 This new function supports the ability to insert into the planned table, and existing
-
 
18969
-- version of a package as part of a release-to-release merge operation carried out within release manager.
-
 
18970
 
-
 
18971
PROCEDURE MERGE_PACKAGE ( newPvId IN NUMBER, ViewId IN NUMBER, RtagId IN NUMBER, UserId IN NUMBER, mergeOperation IN CHAR ) IS
-
 
18972
 
-
 
18973
	ReleaseLocation VARCHAR2(4000);
-
 
18974
 
-
 
18975
BEGIN
-
 
18976
	/*--------------- Business Rules Here -------------------*/
-
 
18977
	/*-------------------------------------------------------*/
-
 
18978
 
-
 
18979
 
-
 
18980
	-- Add to "Pending" area
-
 
18981
	INSERT INTO PLANNED ( RTAG_ID, PV_ID, VIEW_ID, OPERATION )
-
 
18982
	VALUES( RtagId, newPvId, ViewId, mergeOperation );
-
 
18983
 
-
 
18984
 
-
 
18985
	/* LOG ACTION */
-
 
18986
	SELECT proj.PROJ_NAME ||' / '|| rt.RTAG_NAME INTO ReleaseLocation
-
 
18987
	  FROM PROJECTS proj,
-
 
18988
		   RELEASE_TAGS rt
-
 
18989
	 WHERE rt.PROJ_ID = proj.PROJ_ID
-
 
18990
	   AND rt.RTAG_ID = RtagId;
-
 
18991
 
-
 
18992
	Log_Action ( newPvId, 'add_to_planned', UserId, 'Location: '|| ReleaseLocation );
-
 
18993
 
18861
END;
18994
END;
18862
/*-------------------------------------------------------------------------------------------------------*/
18995
/*-------------------------------------------------------------------------------------------------------*/
18863
END PK_PLANNED;
18996
END PK_PLANNED;
18864
/
18997
/
18865
 
18998