1 package body PO_POXAWDCOTR_XMLP_PKG AS
2 /* $Header: POXAWDCOTR_XMLB.pls 120.2 2011/02/10 06:35:32 nbingi noship $ */
3
4 FUNCTION AfterPForm RETURN Boolean IS
5 doc_date_where_a VARCHAR2(500);
6 doc_date_where_c VARCHAR2(500);
7
8 Begin
9
10 if (po_clm_clo_util.getClmStatus = 'Y') then
11 t_date_to := p_date_to + 1;
12
13 IF (p_cotr_contact is null) then
14 cotr_contact_where := '1=1';
15
16 ELSiF (p_cotr_contact is NOT null) then
17 cotr_contact_where := 'PHA.CLM_COTR_CONTACT =:p_cotr_contact';
18
19 END IF;
20
21 IF (p_date_from IS NULL AND t_date_to IS NULL) then
22 doc_date_where := '1=1';
23
24 ELSiF (p_date_from IS NOT NULL AND t_date_to IS NULL) then
25
26 doc_date_where_a := 'PHA.APPROVED_DATE >= :p_date_from';
27 doc_date_where_c := 'PHA.CREATION_DATE >= :p_date_from';
28 doc_date_where := '((PHA.APPROVED_DATE IS NOT NULL AND ' || doc_date_where_a ||
29 ' ) OR (PHA.APPROVED_DATE IS NULL AND ' || doc_date_where_c || ' ))';
30
31 ELSiF (p_date_from IS NULL AND t_date_to IS NOT NULL) then
32
33 doc_date_where_a := 'PHA.APPROVED_DATE <= :t_date_to';
34 doc_date_where_c := 'PHA.CREATION_DATE <= :t_date_to';
35 doc_date_where := '((PHA.APPROVED_DATE IS NOT NULL AND ' || doc_date_where_a ||
36 ' ) OR (PHA.APPROVED_DATE IS NULL AND ' || doc_date_where_c || ' ))';
37
38 ELSiF (p_date_from IS NOT NULL AND t_date_to IS NOT NULL) then
39
40 doc_date_where_a := 'PHA.APPROVED_DATE BETWEEN :p_date_from AND :t_date_to';
41 doc_date_where_c := 'PHA.CREATION_DATE BETWEEN :p_date_from AND :t_date_to';
42 doc_date_where := '((PHA.APPROVED_DATE IS NOT NULL AND ' || doc_date_where_a ||
43 ' ) OR (PHA.APPROVED_DATE IS NULL AND ' || doc_date_where_c || ' ))';
44
45 END IF;
46 else
47 doc_date_where := '1 = 2';
48 cotr_contact_where := '1 = 2';
49 end if;
50 RETURN (TRUE);
51 END AfterPForm;
52
53 FUNCTION getCotrContact return VARCHAR2 IS
54 cotr_contact_desc VARCHAR2(200) := '';
55 Begin
56 if p_cotr_contact is not null then
57 select PAPF.FULL_NAME
58 into cotr_contact_desc
59 FROM PER_ALL_PEOPLE_F PAPF
60 WHERE TRUNC(SYSDATE) BETWEEN PAPF.EFFECTIVE_START_DATE AND PAPF.EFFECTIVE_END_DATE
61 AND PAPF.PERSON_ID = p_cotr_contact;
62 end if;
63
64 RETURN (cotr_contact_desc);
65
66 exception
67 when others then
68 RETURN (p_cotr_contact);
69 END getCotrContact;
70
71 END PO_POXAWDCOTR_XMLP_PKG;
72