DBA Data[Home] [Help]

PACKAGE BODY: APPS.FLM_EKB_PREF_LEVEL_PKG

Source


1 package body FLM_EKB_PREF_LEVEL_PKG as
2 /* $Header: FLMEKPLB.pls 120.1 2011/03/24 08:34:20 sisankar 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_organization_id                     in      number,
10           x_module_id                           in      number,
11           x_owner                               in      varchar2,
12           x_last_update_date                    in      varchar2) is
13 begin
14    if (x_upload_mode = 'NLS') then
15       return;
16    else
17       FLM_EKB_PREF_LEVEL_PKG.LOAD_ROW(
18          x_custom_mode,
19 	 x_level_id,
20 	 x_level_code,
21 	 x_organization_id,
22 	 x_module_id,
23 	 x_owner,
24 	 x_last_update_date);
25    end if;
26 end LOAD_SEED_ROW;
27 
28 procedure LOAD_ROW(
29           x_custom_mode                         in      varchar2,
30           x_level_id                            in      number,
31           x_level_code                          in      number,
32           x_organization_id                     in      number,
33           x_module_id                           in      number,
34           x_owner                               in      varchar2,
35           x_last_update_date                    in      varchar2) is
36    user_id NUMBER := 0;
37    f_ludate  date;    -- entity update date in file
38    db_luby   number;  -- entity owner in db
39    db_ludate date;    -- entity update date in db
40 begin
41    user_id := fnd_load_util.owner_id(x_owner);
42 
43    -- Translate char last_update_date to date
44    f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
45 
46    select LAST_UPDATED_BY, LAST_UPDATE_DATE
47    into   db_luby, db_ludate
48    from   FLM_EKB_PREFERENCE_LEVELS
49    where  LEVEL_ID = x_level_id;
50 
51    if (fnd_load_util.upload_test(user_id, f_ludate, db_luby,
52                                  db_ludate, x_custom_mode)) then
53       update FLM_EKB_PREFERENCE_LEVELS set
54              LEVEL_CODE = x_level_code,
55              ORGANIZATION_ID = x_organization_id,
56              MODULE_ID = x_module_id,
57              LAST_UPDATE_DATE = f_ludate,
58              LAST_UPDATED_BY = user_id,
59              LAST_UPDATE_LOGIN = 0
60       where  LEVEL_ID = x_level_id;
61    end if;
62 
63 exception
64    when no_data_found then
65       -- Row doesn't exist yet.  Now this insert statement is placed here.
66       insert into FLM_EKB_PREFERENCE_LEVELS (
67                   LEVEL_ID,
68                   LEVEL_CODE,
69                   ORGANIZATION_ID,
70                   MODULE_ID,
71                   OBJECT_VERSION_NUMBER,
72                   LAST_UPDATE_DATE,
73                   LAST_UPDATED_BY,
74                   CREATION_DATE,
75                   CREATED_BY,
76                   LAST_UPDATE_LOGIN )
77            values (
78                   x_level_id,
79                   x_level_code,
80                   x_organization_id,
81                   x_module_id,
82                   1,
83                   f_ludate,
84                   user_id,
85                   f_ludate,
86                   user_id,
87                   0 );
88 
89 end LOAD_ROW;
90 
91 
92 end FLM_EKB_PREF_LEVEL_PKG;