DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGR_VAL_EAPMPI

Source


1 PACKAGE BODY IGR_VAL_EAPMPI AS
2 /* $Header: IGSRT09B.pls 120.0 2005/06/02 03:54:13 appldev noship $ */
3   -- To validate the indicated mailing date of an enquiry item.
4   FUNCTION admp_val_eapmpi_dt(
5   p_person_id IN NUMBER ,
6   p_enquiry_appl_number IN NUMBER ,
7   p_mailed_dt IN DATE ,
8   p_message_name    OUT NOCOPY VARCHAR2)
9   RETURN BOOLEAN IS
10   BEGIN -- admp_val_eapmpi_dt
11     -- Description: Validate the IGS_IN_APPLML_PKGITM.mailed_dt.
12     -- * The mailed_dt must be >= to the IGS_IN_ENQUIRY_APPL.enquiry_dt.
13   DECLARE
14     v_ea_rec    IGR_I_APPL_ALL.enquiry_dt%TYPE;
15     CURSOR  c_ea IS
16         SELECT  ea.enquiry_dt
17         FROM    IGR_I_APPL_ALL       ea
18         WHERE   ea.person_id        = p_person_id AND
19             ea.enquiry_appl_number  = p_enquiry_appl_number AND
20             TRUNC(ea.enquiry_dt)    <= p_mailed_dt;
21   BEGIN
22     p_message_name := null;
23     -- Validate input parameters
24     IF (p_person_id IS NULL OR p_enquiry_appl_number IS NULL OR
25          p_mailed_dt IS NULL) THEN
26         RETURN TRUE;
27     END IF;
28     OPEN c_ea;
29     FETCH c_ea INTO v_ea_rec;
30     IF (c_ea%NOTFOUND) THEN
31         CLOSE c_ea;
32         p_message_name := 'IGS_AD_MAILDT_GE_ENQIRYDT';
33         RETURN FALSE;
34     END IF;
35     CLOSE c_ea;
36     IF p_mailed_dt > TRUNC(sysdate) THEN
37         p_message_name := 'IGS_AD_MAILDT_GE_ENQIRYDT';
38         RETURN FALSE;
39     END IF;
40     RETURN TRUE;
41   EXCEPTION
42     WHEN OTHERS THEN
43     IF(c_ea%ISOPEN) THEN
44         CLOSE c_ea;
45     END IF;
46   END;
47   EXCEPTION
48     WHEN OTHERS THEN
49         FND_MESSAGE.SET_NAME('IGS','IGS_GE_UNHANDLED_EXP');
50         FND_MESSAGE.SET_TOKEN('NAME','IGR_VAL_EAPMPI.admp_val_eapmpi_dt');
51         IGS_GE_MSG_STACK.ADD;
52   END admp_val_eapmpi_dt;
53 
54 END IGR_VAL_EAPMPI;