DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_FORM_DATA_GROUP_ITEMS_PKG

Source


1 package body HR_FORM_DATA_GROUP_ITEMS_PKG as
2 /* $Header: hrfgilct.pkb 115.2 2002/12/10 10:58:29 hjonnala noship $ */
3 procedure OWNER_TO_WHO (
4   X_OWNER in VARCHAR2,
5   X_CREATION_DATE out nocopy DATE,
6   X_CREATED_BY out nocopy NUMBER,
7   X_LAST_UPDATE_DATE out nocopy DATE,
8   X_LAST_UPDATED_BY out nocopy NUMBER,
9   X_LAST_UPDATE_LOGIN out nocopy NUMBER
10 ) is
11 begin
12   if X_OWNER = 'SEED' then
13     X_CREATED_BY := 1;
14     X_LAST_UPDATED_BY := 1;
15   else
16     X_CREATED_BY := 0;
17     X_LAST_UPDATED_BY := 0;
18   end if;
19   X_CREATION_DATE := sysdate;
20   X_LAST_UPDATE_DATE := sysdate;
21   X_LAST_UPDATE_LOGIN := 0;
22 end OWNER_TO_WHO;
23 procedure INSERT_ROW (
24   X_ROWID in out nocopy VARCHAR2,
25   X_FORM_DATA_GROUP_ITEM_ID in NUMBER,
26   X_FORM_DATA_GROUP_ID in NUMBER,
27   X_FORM_ITEM_ID in NUMBER,
28   X_OBJECT_VERSION_NUMBER in NUMBER,
29   X_CREATED_BY in NUMBER,
30   X_CREATION_DATE in DATE,
31   X_LAST_UPDATE_DATE in DATE,
32   X_LAST_UPDATED_BY in NUMBER,
33   X_LAST_UPDATE_LOGIN in NUMBER
34 ) is
35   cursor C is select ROWID from HR_FORM_DATA_GROUP_ITEMS
36     where FORM_DATA_GROUP_ITEM_ID = X_FORM_DATA_GROUP_ITEM_ID
37     ;
38 begin
39   insert into HR_FORM_DATA_GROUP_ITEMS (
40     FORM_DATA_GROUP_ID,
41     FORM_ITEM_ID,
42     LAST_UPDATE_DATE,
43     LAST_UPDATED_BY,
44     LAST_UPDATE_LOGIN,
45     FORM_DATA_GROUP_ITEM_ID,
46     OBJECT_VERSION_NUMBER,
47     CREATED_BY,
48     CREATION_DATE
49   ) values(
50     X_FORM_DATA_GROUP_ID,
51     X_FORM_ITEM_ID,
52     X_LAST_UPDATE_DATE,
53     X_LAST_UPDATED_BY,
54     X_LAST_UPDATE_LOGIN,
55     X_FORM_DATA_GROUP_ITEM_ID,
56     X_OBJECT_VERSION_NUMBER,
57     X_CREATED_BY,
58     X_CREATION_DATE);
59 
60   open c;
61   fetch c into X_ROWID;
62   if (c%notfound) then
63     close c;
64     raise no_data_found;
65   end if;
66   close c;
67 
68 end INSERT_ROW;
69 
70 procedure LOCK_ROW (
71   X_FORM_DATA_GROUP_ITEM_ID in NUMBER,
72   X_FORM_DATA_GROUP_ID in NUMBER,
73   X_FORM_ITEM_ID in NUMBER,
74   X_OBJECT_VERSION_NUMBER in NUMBER
75 ) is
76   cursor c1 is select
77       FORM_DATA_GROUP_ID,
78       FORM_ITEM_ID,
79       OBJECT_VERSION_NUMBER
80     from HR_FORM_DATA_GROUP_ITEMS
81     where FORM_DATA_GROUP_ITEM_ID = X_FORM_DATA_GROUP_ITEM_ID
82     for update of FORM_DATA_GROUP_ITEM_ID nowait;
83 begin
84   for tlinfo in c1 loop
85       if (   (tlinfo.FORM_DATA_GROUP_ID = X_FORM_DATA_GROUP_ID)
86           AND (tlinfo.FORM_ITEM_ID = X_FORM_ITEM_ID)
87           AND (tlinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
88       ) then
89         null;
90       else
91         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
92         app_exception.raise_exception;
93       end if;
94   end loop;
95   return;
96 end LOCK_ROW;
97 
98 procedure UPDATE_ROW (
99   X_FORM_DATA_GROUP_ITEM_ID in NUMBER,
100   X_FORM_DATA_GROUP_ID in NUMBER,
101   X_FORM_ITEM_ID in NUMBER,
102   X_OBJECT_VERSION_NUMBER in NUMBER,
103   X_LAST_UPDATE_DATE in DATE,
104   X_LAST_UPDATED_BY in NUMBER,
105   X_LAST_UPDATE_LOGIN in NUMBER
106 ) is
107 begin
108   update HR_FORM_DATA_GROUP_ITEMS set
109     FORM_DATA_GROUP_ID = X_FORM_DATA_GROUP_ID,
110     FORM_ITEM_ID = X_FORM_ITEM_ID,
111     OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
112     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
113     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
114     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
115   where FORM_DATA_GROUP_ITEM_ID = X_FORM_DATA_GROUP_ITEM_ID;
116 
117   if (sql%notfound) then
118     raise no_data_found;
119   end if;
120 end UPDATE_ROW;
121 
122 procedure DELETE_ROW (
123   X_FORM_DATA_GROUP_ITEM_ID in NUMBER
124 ) is
125 begin
126   delete from HR_FORM_DATA_GROUP_ITEMS
127   where FORM_DATA_GROUP_ITEM_ID = X_FORM_DATA_GROUP_ITEM_ID;
128 
129   if (sql%notfound) then
130     raise no_data_found;
131   end if;
132 
133 end DELETE_ROW;
134 procedure LOAD_ROW (
135   X_APPLICATION_SHORT_NAME in VARCHAR2,
136   X_FORM_NAME in VARCHAR2,
137   X_DATA_GROUP_NAME in VARCHAR2,
138   X_FULL_ITEM_NAME in VARCHAR2,
139   X_RADIO_BUTTON_NAME in VARCHAR2,
140   X_OWNER in VARCHAR2,
141   X_OBJECT_VERSION_NUMBER in VARCHAR2) is
142   X_ROWID ROWID;
143   X_CREATION_DATE DATE;
144   X_CREATED_BY NUMBER;
145   X_LAST_UPDATE_DATE DATE;
146   X_LAST_UPDATED_BY NUMBER;
147   X_LAST_UPDATE_LOGIN NUMBER;
148   X_FORM_ID NUMBER;
149   X_APPLICATION_ID NUMBER;
150   X_FORM_DATA_GROUP_ID NUMBER;
151   X_FORM_ITEM_ID NUMBER;
152   X_FORM_DATA_GROUP_ITEM_ID NUMBER;
153 begin
154 
155   OWNER_TO_WHO (
156     X_OWNER,
157     X_CREATION_DATE,
158     X_CREATED_BY,
159     X_LAST_UPDATE_DATE,
160     X_LAST_UPDATED_BY,
161     X_LAST_UPDATE_LOGIN
162   );
163 
164  select application_id
165  into x_application_id
166  from fnd_application
167  where application_short_name = x_application_short_name;
168 
169  select form_id
170  into x_form_id
171  from fnd_form
172  where form_name = x_form_name
173  and application_id = x_application_id;
174 
175  select hfi.form_item_id
176  into x_form_item_id
177  from hr_form_items_b hfi
178  where hfi.application_id = x_application_id
179  and hfi.form_id = x_form_id
180  and hfi.full_item_name = x_full_item_name
181  and (  (hfi.radio_button_name = x_radio_button_name)
182      or (hfi.radio_button_name is null and x_radio_button_name is null) );
183 
184  select form_data_group_id
185  into x_form_data_group_id
186  from hr_form_data_groups_b fdg
187  where fdg.data_group_name =  x_data_group_name
188  and fdg.application_id = x_application_id
189  and fdg.form_id = x_form_id;
190 
191  begin
192    select fgi.form_data_group_item_id
193    into x_form_data_group_item_id
194    from hr_form_data_group_items fgi
195    where fgi.form_data_group_id = x_form_data_group_id
196    and fgi.form_item_id = x_form_item_id;
197  exception
198    when no_data_found then
199      select hr_form_data_group_items_s.nextval
200      into x_form_data_group_item_id
201      from dual;
202  end;
203 
204  begin
205    UPDATE_ROW (
206      X_FORM_DATA_GROUP_ITEM_ID,
207      X_FORM_DATA_GROUP_ID,
208      X_FORM_ITEM_ID,
209      to_number(X_OBJECT_VERSION_NUMBER),
210      X_LAST_UPDATE_DATE,
211      X_LAST_UPDATED_BY,
212      X_LAST_UPDATE_LOGIN
213    );
214 
215  exception
216    when no_data_found then
217      INSERT_ROW (
218        X_ROWID,
219        X_FORM_DATA_GROUP_ITEM_ID,
220        X_FORM_DATA_GROUP_ID,
221        X_FORM_ITEM_ID,
222        to_number(X_OBJECT_VERSION_NUMBER),
223        X_CREATED_BY,
224        X_CREATION_DATE,
225        X_LAST_UPDATE_DATE,
226        X_LAST_UPDATED_BY,
227        X_LAST_UPDATE_LOGIN);
228  end;
229 end LOAD_ROW;
230 end HR_FORM_DATA_GROUP_ITEMS_PKG;