94: END log_messages ;
95:
96: PROCEDURE set_prsid_grp_holds ( errbuf OUT NOCOPY VARCHAR2 ,
97: retcode OUT NOCOPY NUMBER ,
98: p_hold_type IN igs_pe_pers_encumb_v.encumbrance_type%TYPE ,
99: p_pid_group IN igs_pe_persid_group_v.group_id%TYPE ,
100: p_start_dt IN VARCHAR2 ,
101: p_term IN VARCHAR2 ,
102: p_org_id IN NUMBER
253: NVL(RPAD(TO_CHAR(l_seq_num),17),' ')||
254: RPAD(IGS_GE_DATE.IGSCHARDT(l_start_date),11) ;
255: FND_FILE.PUT_LINE(FND_FILE.LOG,l_msg_str_1);
256:
257: igs_pe_pers_encumb_pkg.insert_row
258: (
259: x_mode => 'R' ,
260: x_rowid => l_rowid ,
261: x_person_id => r_rec_query.person_id ,
342:
343:
344: PROCEDURE rel_prsid_grp_holds ( errbuf OUT NOCOPY VARCHAR2 ,
345: retcode OUT NOCOPY NUMBER ,
346: p_hold_type IN igs_pe_pers_encumb_v.encumbrance_type%TYPE ,
347: p_pid_group IN igs_pe_persid_group_v.group_id%TYPE ,
348: p_start_dt IN VARCHAR2 ,
349: p_expiry_dt IN VARCHAR2 ,
350: p_term IN VARCHAR2 ,
371: --pkpatel 8-APR-2003 Bug 2804863 igs_pe_gen_001.g_hold_validation variable was set to 'N' at the beginning and 'Y' at the end.
372: -- Added the call of igs_pe_gen_001.get_hold_auth
373: --gmaheswa 29-OCT-2003 Bug 3198795 Introducing DYNAMIC PERSON ID group functionality
374: --skpandey 12-JAN-2006 Bug#4937960
375: -- Changed c_igs_pe_pers_encumb Cursor definition to optimize query
376: --skpandey 02-FEB-2006 Bug#4937960: Changed call to igs_get_dynamic_sql to get_dynamic_sql as a part of literal fix
377: -------------------------------------------------------------------
378: l_cal_type igs_ca_inst.cal_type%TYPE ;
379: l_seq_num igs_ca_inst.sequence_number%TYPE ;
392: l_person_number hz_parties.party_number%TYPE;
393: l_person_name hz_person_profiles.person_name%TYPE;
394:
395:
396: -- cursor selects row_id from igs_pe_pers_encumb table based on person id and hold type
397: CURSOR c_igs_pe_pers_encumb(cp_person_id igs_pe_pers_encumb_v.person_id%TYPE ,
398: cp_hold_type igs_pe_pers_encumb_v.encumbrance_type%TYPE ,
399: cp_start_dt igs_pe_pers_encumb_v.start_dt%TYPE) IS
400: SELECT *
393: l_person_name hz_person_profiles.person_name%TYPE;
394:
395:
396: -- cursor selects row_id from igs_pe_pers_encumb table based on person id and hold type
397: CURSOR c_igs_pe_pers_encumb(cp_person_id igs_pe_pers_encumb_v.person_id%TYPE ,
398: cp_hold_type igs_pe_pers_encumb_v.encumbrance_type%TYPE ,
399: cp_start_dt igs_pe_pers_encumb_v.start_dt%TYPE) IS
400: SELECT *
401: FROM IGS_PE_PERS_ENCUMB
394:
395:
396: -- cursor selects row_id from igs_pe_pers_encumb table based on person id and hold type
397: CURSOR c_igs_pe_pers_encumb(cp_person_id igs_pe_pers_encumb_v.person_id%TYPE ,
398: cp_hold_type igs_pe_pers_encumb_v.encumbrance_type%TYPE ,
399: cp_start_dt igs_pe_pers_encumb_v.start_dt%TYPE) IS
400: SELECT *
401: FROM IGS_PE_PERS_ENCUMB
402: WHERE person_id = cp_person_id
395:
396: -- cursor selects row_id from igs_pe_pers_encumb table based on person id and hold type
397: CURSOR c_igs_pe_pers_encumb(cp_person_id igs_pe_pers_encumb_v.person_id%TYPE ,
398: cp_hold_type igs_pe_pers_encumb_v.encumbrance_type%TYPE ,
399: cp_start_dt igs_pe_pers_encumb_v.start_dt%TYPE) IS
400: SELECT *
401: FROM IGS_PE_PERS_ENCUMB
402: WHERE person_id = cp_person_id
403: AND encumbrance_type = cp_hold_type
397: CURSOR c_igs_pe_pers_encumb(cp_person_id igs_pe_pers_encumb_v.person_id%TYPE ,
398: cp_hold_type igs_pe_pers_encumb_v.encumbrance_type%TYPE ,
399: cp_start_dt igs_pe_pers_encumb_v.start_dt%TYPE) IS
400: SELECT *
401: FROM IGS_PE_PERS_ENCUMB
402: WHERE person_id = cp_person_id
403: AND encumbrance_type = cp_hold_type
404: AND start_dt = cp_start_dt
405: AND (expiry_dt IS NULL OR SYSDATE < expiry_dt);
403: AND encumbrance_type = cp_hold_type
404: AND start_dt = cp_start_dt
405: AND (expiry_dt IS NULL OR SYSDATE < expiry_dt);
406:
407: l_c_igs_pe_pers_encumb c_igs_pe_pers_encumb%ROWTYPE ; -- cursor variable for the above cursor
408: l_error_exception EXCEPTION ; /* user defined exception */
409: l_ignore_exception EXCEPTION ; /* user defined exception */ -- for logging the error and stopping of further processing.
410: -- concurrent pgm will not error out.
411: L_select VARCHAR2(32767) := 'SELECT p.person_id,p.person_number,p.full_name FROM igs_pe_person_base_v p WHERE p.person_id IN ';
518: RPAD(nvl(r_rec_query.full_name,' '),452);
519:
520: FND_FILE.PUT_LINE(FND_FILE.LOG,l_msg_str_1);
521:
522: OPEN c_igs_pe_pers_encumb( cp_person_id => r_rec_query.person_id ,
523: cp_hold_type => p_hold_type ,
524: cp_start_dt => l_start_date
525: );
526: FETCH c_igs_pe_pers_encumb INTO l_c_igs_pe_pers_encumb ;
522: OPEN c_igs_pe_pers_encumb( cp_person_id => r_rec_query.person_id ,
523: cp_hold_type => p_hold_type ,
524: cp_start_dt => l_start_date
525: );
526: FETCH c_igs_pe_pers_encumb INTO l_c_igs_pe_pers_encumb ;
527: IF c_igs_pe_pers_encumb%NOTFOUND THEN
528: CLOSE c_igs_pe_pers_encumb ;
529: FND_MESSAGE.SET_NAME('IGS','IGS_PE_PERS_ENCUMB_NOTEXIST') ;
530: IGS_GE_MSG_STACK.ADD;
523: cp_hold_type => p_hold_type ,
524: cp_start_dt => l_start_date
525: );
526: FETCH c_igs_pe_pers_encumb INTO l_c_igs_pe_pers_encumb ;
527: IF c_igs_pe_pers_encumb%NOTFOUND THEN
528: CLOSE c_igs_pe_pers_encumb ;
529: FND_MESSAGE.SET_NAME('IGS','IGS_PE_PERS_ENCUMB_NOTEXIST') ;
530: IGS_GE_MSG_STACK.ADD;
531: RAISE l_ignore_exception; -- 3338759: To stop further processing and log the message
524: cp_start_dt => l_start_date
525: );
526: FETCH c_igs_pe_pers_encumb INTO l_c_igs_pe_pers_encumb ;
527: IF c_igs_pe_pers_encumb%NOTFOUND THEN
528: CLOSE c_igs_pe_pers_encumb ;
529: FND_MESSAGE.SET_NAME('IGS','IGS_PE_PERS_ENCUMB_NOTEXIST') ;
530: IGS_GE_MSG_STACK.ADD;
531: RAISE l_ignore_exception; -- 3338759: To stop further processing and log the message
532: END IF;
525: );
526: FETCH c_igs_pe_pers_encumb INTO l_c_igs_pe_pers_encumb ;
527: IF c_igs_pe_pers_encumb%NOTFOUND THEN
528: CLOSE c_igs_pe_pers_encumb ;
529: FND_MESSAGE.SET_NAME('IGS','IGS_PE_PERS_ENCUMB_NOTEXIST') ;
530: IGS_GE_MSG_STACK.ADD;
531: RAISE l_ignore_exception; -- 3338759: To stop further processing and log the message
532: END IF;
533: CLOSE c_igs_pe_pers_encumb ;
529: FND_MESSAGE.SET_NAME('IGS','IGS_PE_PERS_ENCUMB_NOTEXIST') ;
530: IGS_GE_MSG_STACK.ADD;
531: RAISE l_ignore_exception; -- 3338759: To stop further processing and log the message
532: END IF;
533: CLOSE c_igs_pe_pers_encumb ;
534:
535: BEGIN
536:
537: -- Person Encumbrance Security.