[Home] [Help]
PACKAGE BODY: APPS.WIP_PREF_LEVEL_PKG
Source
1 package body WIP_PREF_LEVEL_PKG as
2 /* $Header: WIPPRFLB.pls 120.0 2005/06/20 18:05:05 asuherma noship $ */
3
4 procedure LOAD_SEED_ROW(
5 x_upload_mode in varchar2,
6 x_custom_mode in varchar2,
7 x_level_id in number,
8 x_level_code in number,
9 x_resp_key in varchar2,
10 x_organization_id in number,
11 x_department_id in number,
12 x_module_id in number,
13 x_owner in varchar2,
14 x_last_update_date in varchar2) is
15 begin
16 if (x_upload_mode = 'NLS') then
17 return;
18 else
19 WIP_PREF_LEVEL_PKG.LOAD_ROW(
20 x_custom_mode,
21 x_level_id,
22 x_level_code,
23 x_resp_key,
24 x_organization_id,
25 x_department_id,
26 x_module_id,
27 x_owner,
28 x_last_update_date);
29 end if;
30 end LOAD_SEED_ROW;
31
32 procedure LOAD_ROW(
33 x_custom_mode in varchar2,
34 x_level_id in number,
35 x_level_code in number,
36 x_resp_key in varchar2,
37 x_organization_id in number,
38 x_department_id in number,
39 x_module_id in number,
40 x_owner in varchar2,
41 x_last_update_date in varchar2) is
42 user_id NUMBER := 0;
43 f_ludate date; -- entity update date in file
44 db_luby number; -- entity owner in db
45 db_ludate date; -- entity update date in db
46 begin
47 user_id := fnd_load_util.owner_id(x_owner);
48
49 -- Translate char last_update_date to date
50 f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
51
52 select LAST_UPDATED_BY, LAST_UPDATE_DATE
53 into db_luby, db_ludate
54 from WIP_PREFERENCE_LEVELS
55 where LEVEL_ID = x_level_id;
56
57 if (fnd_load_util.upload_test(user_id, f_ludate, db_luby,
58 db_ludate, x_custom_mode)) then
59 update WIP_PREFERENCE_LEVELS set
60 LEVEL_CODE = x_level_code,
61 RESP_KEY = x_resp_key,
62 ORGANIZATION_ID = x_organization_id,
63 DEPARTMENT_ID = x_department_id,
64 MODULE_ID = x_module_id,
65 LAST_UPDATE_DATE = f_ludate,
66 LAST_UPDATED_BY = user_id,
67 LAST_UPDATE_LOGIN = 0
68 where LEVEL_ID = x_level_id;
69 end if;
70
71 exception
72 when no_data_found then
73 -- Row doesn't exist yet. Now this insert statement is placed here.
74 insert into WIP_PREFERENCE_LEVELS (
75 LEVEL_ID,
76 LEVEL_CODE,
77 RESP_KEY,
78 ORGANIZATION_ID,
79 DEPARTMENT_ID,
80 MODULE_ID,
81 OBJECT_VERSION_NUMBER,
82 LAST_UPDATE_DATE,
83 LAST_UPDATED_BY,
84 CREATION_DATE,
85 CREATED_BY,
86 LAST_UPDATE_LOGIN )
87 values (
88 x_level_id,
89 x_level_code,
90 x_resp_key,
91 x_organization_id,
92 x_department_id,
93 x_module_id,
94 1,
95 f_ludate,
96 user_id,
97 f_ludate,
98 user_id,
99 0 );
100
101 end LOAD_ROW;
102
103
104 end WIP_PREF_LEVEL_PKG;