[Home] [Help]
PACKAGE BODY: APPS.PA_PAGE_CONTENTS_PKG
Source
1 PACKAGE BODY PA_PAGE_CONTENTS_PKG AS
2 --$Header: PAPGCTTB.pls 115.1 2002/12/03 18:20:01 mwasowic noship $
3
4
5 procedure INSERT_PAGE_CONTENTS_ROW (
6
7 P_PAGE_CONTENT_ID IN NUMBER,
8 P_OBJECT_TYPE IN VARCHAR2,
9 P_PK1_VALUE IN VARCHAR2,
10 P_PK2_VALUE IN VARCHAR2,
11 P_PK3_VALUE IN VARCHAR2,
12 P_PK4_VALUE IN VARCHAR2,
13 P_PK5_VALUE IN VARCHAR2,
14
15 x_return_status OUT NOCOPY VARCHAR2,
16 x_msg_count OUT NOCOPY NUMBER,
17 x_msg_data OUT NOCOPY VARCHAR2
18 ) is
19
20 l_ROWID ROWID;
21
22 cursor C is select ROWID from PA_PAGE_CONTENTS
23 where Page_content_id = P_PAGE_CONTENT_ID;
24
25 BEGIN
26
27 x_return_status := FND_API.G_RET_STS_SUCCESS;
28
29 --get the unique page content id from the Oracle Sequence
30 --SELECT pa.pa_page_contents_s.nextval
31 --INTO l_content_id
32 --FROM DUAL;
33
34
35 insert into PA_PAGE_CONTENTS (
36 PAGE_CONTENT_ID,
37 OBJECT_TYPE,
38 PK1_VALUE,
39 PK2_VALUE,
40 PK3_VALUE,
41 PK4_VALUE,
42 PK5_VALUE,
43 PAGE_CONTENT,
44 RECORD_VERSION_NUMBER,
45 LAST_UPDATED_BY,
46 CREATED_BY,
47 CREATION_DATE,
48 LAST_UPDATE_DATE,
49 LAST_UPDATE_LOGIN
50
51 ) VALUES (
52 P_PAGE_CONTENT_ID,
53 P_OBJECT_TYPE,
54 P_PK1_VALUE,
55 P_PK2_VALUE,
56 P_PK3_VALUE,
57 P_PK4_VALUE,
58 P_PK5_VALUE,
59 empty_clob(),
60 1,
61 fnd_global.user_id,
62 fnd_global.user_id,
63 sysdate,
64 sysdate,
65 fnd_global.user_id
66 );
67
68
69 open c;
70 fetch c into l_ROWID;
71 if (c%notfound) then
72 close c;
73 raise no_data_found;
74 end if;
75 close c;
76 --x_page_content_id := l_content_id;
77
78 EXCEPTION
79 WHEN OTHERS THEN
80 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
81 RAISE;
82
83 end INSERT_PAGE_CONTENTS_ROW;
84
85 -- Clear existing CLOB before writing new contents
86 -- in case new contents length is < old length
87
88 procedure CLEAR_CLOB (
89 P_PAGE_CONTENT_ID IN NUMBER,
90 --P_RECORD_VERSION_NUMBER IN NUMBER := NULL,
91
92 x_return_status OUT NOCOPY VARCHAR2,
93 x_msg_count OUT NOCOPY NUMBER,
94 x_msg_data OUT NOCOPY VARCHAR2
95 ) is
96 begin
97
98 x_return_status := FND_API.G_RET_STS_SUCCESS;
99
100 update PA_PAGE_CONTENTS set
101 PAGE_CONTENT = empty_clob(),
102 RECORD_VERSION_NUMBER = record_version_number +1,
103 LAST_UPDATED_BY = fnd_global.user_id,
104 LAST_UPDATE_DATE = sysdate,
105 LAST_UPDATE_LOGIN = fnd_global.login_id
106 where page_content_id = p_page_content_id;
107 --AND record_version_number = Nvl(p_record_version_number, record_version_number);
108
109 if (sql%notfound) then
110 PA_UTILS.Add_Message ( p_app_short_name => 'PA',p_msg_name => 'PA_XC_RECORD_CHANGED');
111 x_return_status := FND_API.G_RET_STS_ERROR;
112 end if;
113
114 EXCEPTION
115 WHEN OTHERS THEN
116 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
117 RAISE;
118 end CLEAR_CLOB;
119
120
121 procedure UPDATE_PAGE_CONTENTS_ROW (
122 P_PAGE_CONTENT_ID in NUMBER,
123 P_OBJECT_TYPE in VARCHAR2,
124 P_PK1_VALUE in VARCHAR2,
125 P_PK2_VALUE in VARCHAR2,
126 P_PK3_VALUE in VARCHAR2,
127 P_PK4_VALUE in VARCHAR2,
128 P_PK5_VALUE in VARCHAR2,
129 p_record_version_number IN NUMBER,
130
131 x_return_status OUT NOCOPY VARCHAR2,
132 x_msg_count OUT NOCOPY NUMBER,
133 x_msg_data OUT NOCOPY VARCHAR2
134 ) is
135 begin
136 x_return_status := FND_API.G_RET_STS_SUCCESS;
137
138 update PA_PAGE_CONTENTS set
139 OBJECT_TYPE = Nvl(p_object_type, object_type),
140 PK1_VALUE = Nvl(P_PK1_VALUE, PK1_VALUE),
141 PK2_VALUE = Nvl(P_PK2_VALUE, PK2_VALUE),
142 PK3_VALUE = Nvl(P_PK3_VALUE, PK3_VALUE),
143 PK4_VALUE = Nvl(P_PK4_VALUE, PK4_VALUE),
144 PK5_VALUE = Nvl(P_PK5_VALUE, PK5_VALUE),
145
146 RECORD_VERSION_NUMBER = record_version_number +1,
147 LAST_UPDATED_BY = fnd_global.user_id,
148 LAST_UPDATE_DATE = sysdate,
149 LAST_UPDATE_LOGIN = fnd_global.login_id
150 where page_content_id = p_page_content_id
151 AND record_version_number = Nvl(p_record_version_number, record_version_number);
152
153 if (sql%notfound) then
154 PA_UTILS.Add_Message ( p_app_short_name => 'PA',p_msg_name => 'PA_XC_RECORD_CHANGED');
155 x_return_status := FND_API.G_RET_STS_ERROR;
156 end if;
157
158 EXCEPTION
159 WHEN OTHERS THEN
160 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
161 RAISE;
162 end UPDATE_PAGE_CONTENTS_ROW;
163
164
165
166 procedure DELETE_PAGE_CONTENTS_ROW (
167 P_PAGE_CONTENT_ID in NUMBER,
168 x_return_status OUT NOCOPY VARCHAR2,
169 x_msg_count OUT NOCOPY NUMBER,
170 x_msg_data OUT NOCOPY VARCHAR2
171 ) is
172 begin
173 x_return_status := FND_API.G_RET_STS_SUCCESS;
174
175 DELETE FROM PA_PAGE_CONTENTS
176 where page_content_id = P_PAGE_CONTENT_ID;
177
178
179 EXCEPTION
180 WHEN OTHERS THEN
181 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
182 RAISE;
183 end DELETE_PAGE_CONTENTS_ROW;
184
185 END PA_PAGE_CONTENTS_PKG;