Subversion Repositories DevTools

Rev

Blame | Last modification | View Log | RSS feed

CREATE PROCEDURE "RELEASE_MANAGER"."SET_PACKAGE_BUILD_ENV_TEMP" ( nPvId IN PACKAGE_BUILD_ENV.PV_ID%TYPE,
                                                                                                                 sBuildEnvIdList IN VARCHAR2,
                                                                                                                 nBuildStandard IN PACKAGE_VERSIONS.BS_ID%TYPE 
                                                                                                                 ) IS
/* ---------------------------------------------------------------------------
    Last Modified: Rupesh Solanki
        Version: 3.0.1
   --------------------------------------------------------------------------- */
   
   nBsCollector RELMGR_NUMBER_TAB_t := RELMGR_NUMBER_TAB_t();   
   BsId NUMBER;
   HackBsId NUMBER;


BEGIN

   nBsCollector := IN_LIST_NUMBER ( sBuildEnvIdList );

   -- Delete Current Build Env settings
   DELETE FROM PACKAGE_BUILD_ENV
   WHERE pv_id = nPvId;
   
   -- Delet Current Package Build Info Settings
   DELETE FROM PACKAGE_BUILD_INFO
   WHERE pv_id = nPvId;

   -- Reset flag to N
   UPDATE PACKAGE_VERSIONS SET
           IS_BUILD_ENV_REQUIRED = 'N'
   WHERE PV_ID = nPvId;


   -- Set new Build Env
   IF NOT sBuildEnvIdList IS NULL THEN
        FOR i IN 1..nBsCollector.COUNT
        LOOP   
        
        BsId := nBsCollector(i);
        
        IF nBuildStandard = 2 THEN
           IF BsId = 1 THEN
                  HackBsId := 11;
           ELSE
                  HackBsId := 12;
           END IF;
           
          -- Insert into PACKAGE_BUILD_ENV
      INSERT INTO PACKAGE_BUILD_ENV ( PV_ID, BE_ID )
          SELECT nPvId AS PV_ID,
                         be.BE_ID
            FROM BUILD_ENVIRONMENTS be
           WHERE be.BE_ID IN ( HackBsId );
                                                 
          -- Insert into PACKAGE_BUILD_INFO
      INSERT INTO PACKAGE_BUILD_INFO ( PV_ID, BM_ID )
          SELECT nPvId AS PV_ID,
                         be.BM_ID
            FROM BUILD_MACHINES be
           WHERE be.BM_ID IN ( BsId );                                           

           -- Set flag to Y
           UPDATE PACKAGE_VERSIONS SET
                   IS_BUILD_ENV_REQUIRED = 'Y'
           WHERE PV_ID = nPvId; 
        
        
        ELSE
        
          -- Insert into PACKAGE_BUILD_ENV
      INSERT INTO PACKAGE_BUILD_ENV ( PV_ID, BE_ID )
          SELECT nPvId AS PV_ID,
                         be.BE_ID
            FROM BUILD_ENVIRONMENTS be
           WHERE be.BE_ID IN ( BsId );
                                                 
          -- Insert into PACKAGE_BUILD_INFO
      INSERT INTO PACKAGE_BUILD_INFO ( PV_ID, BM_ID )
          SELECT nPvId AS PV_ID,
                         be.BM_ID
            FROM BUILD_MACHINES be
           WHERE be.BM_ID IN ( BsId );                                           

           -- Set flag to Y
           UPDATE PACKAGE_VERSIONS SET
                   IS_BUILD_ENV_REQUIRED = 'Y'
           WHERE PV_ID = nPvId;
           
        END IF;  
           
           
        END LOOP;          

   END IF;


END Set_Package_Build_Env_Temp;
/