176:
177:
178: CURSOR csr_chk_tcc_sql_exists ( p_tcc_id NUMBER ) IS
179: SELECT time_category_comp_sql_id tcc_sql_id
180: FROM hxc_time_category_comp_sql
181: WHERE time_category_comp_id = p_tcc_id;
182:
183: CURSOR csr_get_time_category ( p_time_category_id NUMBER ) IS
184: SELECT htc.time_sql
214: l_start_index PLS_INTEGER;
215:
216: CURSOR csr_get_new_sql_string ( p_tcc_id NUMBER ) IS
217: SELECT sql_string
218: FROM hxc_time_category_comp_sql
219: WHERE time_category_comp_id = p_tcc_id;
220:
221: -- private function to check if the value set has been
222: -- changed since the TCC row was updated
3360: , tcc.equal_to
3361: , tccs.sql_string
3362: , tcc.last_update_date
3363: FROM
3364: hxc_time_category_comp_sql tccs
3365: , hxc_bld_blk_info_types bbit
3366: , hxc_mapping_components mpc
3367: , hxc_time_category_comps tcc
3368: WHERE tcc.time_category_id = p_time_category_id AND
4186: END IF;
4187:
4188: validate_time_category_sql ( l_sql );
4189:
4190: INSERT INTO hxc_time_category_comp_sql (
4191: time_category_comp_sql_id
4192: , time_category_comp_id
4193: , sql_string )
4194: VALUES (
4191: time_category_comp_sql_id
4192: , time_category_comp_id
4193: , sql_string )
4194: VALUES (
4195: hxc_time_category_comp_sql_s.nextval
4196: , p_rec.time_category_comp_id
4197: , l_sql );
4198:
4199: IF ( g_debug ) THEN
4262: END IF;
4263:
4264: validate_time_category_sql ( l_sql );
4265:
4266: UPDATE hxc_time_category_comp_sql
4267: SET sql_string = l_sql
4268: WHERE time_category_comp_id = p_rec.time_category_comp_id;
4269:
4270: ELSE
4271:
4272: -- rows exists but TCC row no longer of type which uses
4273: -- TCC SQL therefore delete redundant row
4274:
4275: DELETE from hxc_time_category_comp_sql
4276: WHERE time_category_comp_sql_id = l_tcc_sql.tcc_sql_id;
4277:
4278: END IF; -- IF ( p_rec.type IN ( 'MC_VS', 'AN' )
4279:
4319:
4320: FOR tcc_sql IN csr_chk_tcc_sql_exists ( p_rec.time_category_comp_id )
4321: LOOP
4322:
4323: DELETE from hxc_time_category_comp_sql
4324: WHERE time_category_comp_sql_id = tcc_sql.tcc_sql_id;
4325:
4326: END LOOP;
4327: