[Home] [Help]
PACKAGE BODY: APPS.CS_CF_FLOW_TYPE_PAGES_PKG
Source
1 package body CS_CF_FLOW_TYPE_PAGES_PKG as
2 /* $Header: CSCFFTYB.pls 120.0 2005/06/01 12:32:33 appldev noship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out NOCOPY VARCHAR2,
5 X_FLOW_TYPE_PAGE_ID in NUMBER,
6 X_FLOW_TYPE_CODE in VARCHAR2,
7 X_PAGE_CODE in VARCHAR2,
8 X_SEQUENCE in NUMBER,
9 X_FUNCTION_NAME in VARCHAR2,
10 X_OBJECT_VERSION_NUMBER in NUMBER,
11 X_CREATION_DATE in DATE,
12 X_CREATED_BY in NUMBER,
13 X_LAST_UPDATE_DATE in DATE,
14 X_LAST_UPDATED_BY in NUMBER,
15 X_LAST_UPDATE_LOGIN in NUMBER
16 ) is
17 cursor C is select ROWID from CS_CF_FLOW_TYPE_PAGES
18 where FLOW_TYPE_PAGE_ID = X_FLOW_TYPE_PAGE_ID
19 ;
20 begin
21 insert into CS_CF_FLOW_TYPE_PAGES (
22 FLOW_TYPE_PAGE_ID,
23 FLOW_TYPE_CODE,
24 PAGE_CODE,
25 SEQUENCE,
26 FUNCTION_NAME,
27 OBJECT_VERSION_NUMBER,
28 CREATION_DATE,
29 CREATED_BY,
30 LAST_UPDATE_DATE,
31 LAST_UPDATED_BY,
32 LAST_UPDATE_LOGIN
33 ) values (
34 X_FLOW_TYPE_PAGE_ID,
35 X_FLOW_TYPE_CODE,
36 X_PAGE_CODE,
37 X_SEQUENCE,
38 X_FUNCTION_NAME,
39 X_OBJECT_VERSION_NUMBER,
40 X_CREATION_DATE,
41 X_CREATED_BY,
42 X_LAST_UPDATE_DATE,
43 X_LAST_UPDATED_BY,
44 X_LAST_UPDATE_LOGIN
45 );
46
47 open c;
48 fetch c into X_ROWID;
49 if (c%notfound) then
50 close c;
51 raise no_data_found;
52 end if;
53 close c;
54
55 end INSERT_ROW;
56
57 procedure LOCK_ROW (
58 X_FLOW_TYPE_PAGE_ID in NUMBER,
59 X_FLOW_TYPE_CODE in VARCHAR2,
60 X_PAGE_CODE in VARCHAR2,
61 X_SEQUENCE in NUMBER,
62 X_FUNCTION_NAME in VARCHAR2,
63 X_OBJECT_VERSION_NUMBER in NUMBER
64 ) is
65 cursor c is select
66 FLOW_TYPE_CODE,
67 PAGE_CODE,
68 SEQUENCE,
69 FUNCTION_NAME,
70 OBJECT_VERSION_NUMBER
71 from CS_CF_FLOW_TYPE_PAGES
72 where FLOW_TYPE_PAGE_ID = X_FLOW_TYPE_PAGE_ID
73 for update of FLOW_TYPE_PAGE_ID nowait;
74 recinfo c%rowtype;
75
76 begin
77 open c;
78 fetch c into recinfo;
79 if (c%notfound) then
80 close c;
81 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
82 app_exception.raise_exception;
83 end if;
84 close c;
85 if ( ((recinfo.FLOW_TYPE_CODE = X_FLOW_TYPE_CODE)
86 OR ((recinfo.FLOW_TYPE_CODE is null) AND (X_FLOW_TYPE_CODE is null)))
87 AND ((recinfo.PAGE_CODE = X_PAGE_CODE)
88 OR ((recinfo.PAGE_CODE is null) AND (X_PAGE_CODE is null)))
89 AND ((recinfo.SEQUENCE = X_SEQUENCE)
90 OR ((recinfo.SEQUENCE is null) AND (X_SEQUENCE is null)))
91 AND ((recinfo.FUNCTION_NAME = X_FUNCTION_NAME)
92 OR ((recinfo.FUNCTION_NAME is null) AND (X_FUNCTION_NAME is null)))
93 AND ((recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
94 OR ((recinfo.OBJECT_VERSION_NUMBER is null) AND (X_OBJECT_VERSION_NUMBER is null)))
95 ) then
96 null;
97 else
98 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
99 app_exception.raise_exception;
100 end if;
101
102 return;
103 end LOCK_ROW;
104
105 procedure UPDATE_ROW (
106 X_FLOW_TYPE_PAGE_ID in NUMBER,
107 X_FLOW_TYPE_CODE in VARCHAR2,
108 X_PAGE_CODE in VARCHAR2,
109 X_SEQUENCE in NUMBER,
110 X_FUNCTION_NAME in VARCHAR2,
111 X_OBJECT_VERSION_NUMBER in NUMBER,
112 X_LAST_UPDATE_DATE in DATE,
113 X_LAST_UPDATED_BY in NUMBER,
114 X_LAST_UPDATE_LOGIN in NUMBER
115 ) is
116 begin
117 update CS_CF_FLOW_TYPE_PAGES set
118 FLOW_TYPE_CODE = X_FLOW_TYPE_CODE,
119 PAGE_CODE = X_PAGE_CODE,
120 SEQUENCE = X_SEQUENCE,
121 FUNCTION_NAME = X_FUNCTION_NAME,
122 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
123 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
124 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
125 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
126 where FLOW_TYPE_PAGE_ID = X_FLOW_TYPE_PAGE_ID;
127
128 if (sql%notfound) then
129 raise no_data_found;
130 end if;
131
132 end UPDATE_ROW;
133
134 procedure DELETE_ROW (
135 X_FLOW_TYPE_PAGE_ID in NUMBER
136 ) is
137 begin
138
139 delete from CS_CF_FLOW_TYPE_PAGES
140 where FLOW_TYPE_PAGE_ID = X_FLOW_TYPE_PAGE_ID;
141
142 if (sql%notfound) then
143 raise no_data_found;
144 end if;
145 end DELETE_ROW;
146
147
148 procedure LOAD_ROW (
149 X_FLOW_TYPE_PAGE_ID in NUMBER,
150 X_FLOW_TYPE_CODE in VARCHAR2,
151 X_PAGE_CODE in VARCHAR2,
152 X_SEQUENCE in NUMBER,
153 X_FUNCTION_NAME in VARCHAR2,
154 X_OWNER in VARCHAR2,
155 X_LAST_UPDATE_DATE in DATE,
156 X_CUSTOM_MODE in VARCHAR2
157 ) IS
158
159 f_luby number ; -- entity owner in file
160 f_ludate date ; -- entity update date in file
161 db_luby number; -- entity owner in db
162 db_ludate date; -- entity update date in db
163
164 l_object_version_number number := 1;
165 l_rowid varchar2(50);
166
167 begin
168
169 f_luby := fnd_load_util.owner_id(X_OWNER);
170 f_ludate := nvl(X_LAST_UPDATE_DATE, sysdate);
171
172 select LAST_UPDATED_BY, LAST_UPDATE_DATE
173 into db_luby, db_ludate
174 from CS_CF_FLOW_TYPE_PAGES
175 where flow_type_page_id = X_FLOW_TYPE_PAGE_ID;
176
177 if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby, db_ludate, X_CUSTOM_MODE)) then
178 -- Update existing row
179 SELECT object_version_number, rowid
180 INTO l_object_version_number, l_rowid
181 FROM CS_CF_FLOW_TYPE_PAGES
182 WHERE flow_type_page_id = X_FLOW_TYPE_PAGE_ID
183 FOR UPDATE ;
184
185 CS_CF_FLOW_TYPE_PAGES_PKG.Update_Row(
186 X_FLOW_TYPE_PAGE_ID => X_FLOW_TYPE_PAGE_ID,
187 X_FLOW_TYPE_CODE => X_FLOW_TYPE_CODE,
188 X_PAGE_CODE => X_PAGE_CODE,
189 X_SEQUENCE => X_SEQUENCE,
190 X_FUNCTION_NAME => X_FUNCTION_NAME,
191 X_OBJECT_VERSION_NUMBER => l_object_version_number + 1,
192 X_LAST_UPDATE_DATE => f_ludate,
193 X_LAST_UPDATED_BY => f_luby,
194 X_LAST_UPDATE_LOGIN => 0);
195 end if;
196 exception
197 when no_data_found then
198 -- Record doesn't exist - insert in all cases
199 CS_CF_FLOW_TYPE_PAGES_PKG.Insert_Row(
200 X_ROWID => l_rowid,
201 X_FLOW_TYPE_PAGE_ID => X_FLOW_TYPE_PAGE_ID,
202 X_FLOW_TYPE_CODE => X_FLOW_TYPE_CODE,
203 X_PAGE_CODE => X_PAGE_CODE,
204 X_SEQUENCE => X_SEQUENCE,
205 X_FUNCTION_NAME => X_FUNCTION_NAME,
206 X_OBJECT_VERSION_NUMBER => l_object_version_number,
207 X_CREATION_DATE => sysdate,
208 X_CREATED_BY => f_luby,
209 X_LAST_UPDATE_DATE => f_ludate,
210 X_LAST_UPDATED_BY => f_luby,
211 X_LAST_UPDATE_LOGIN => 0);
212 end LOAD_ROW;
213
214 end CS_CF_FLOW_TYPE_PAGES_PKG;