DBA Data[Home] [Help]

PACKAGE BODY: APPS.MSD_DP_SEEDED_DOCUMENT_PKG

Source


1 PACKAGE BODY msd_dp_seeded_document_pkg AS
2 /* $Header: msddpsdb.pls 120.0 2005/05/25 20:15:13 appldev noship $ */
3 
4 /* Public Procedures */
5 
6 PROCEDURE LOAD_ROW(P_DEMAND_PLAN_NAME in varchar2
7          ,P_DOCUMENT_NAME	in varchar2
8          ,P_OWNER            in varchar2
9          ,P_DESCRIPTION       in varchar2
10          ,P_TYPE              in varchar2
11          ,P_OPEN_ON_STARTUP   in varchar2
12          ,P_SCRIPT_CLEANUP    in varchar2
13          ,P_SCRIPT_INIT       in varchar2
14          ,P_SCRIPT_PREPAGE    in varchar2
15          ,P_SCRIPT_POSTPAGE   in varchar2
16          ,P_VALID_FLAG        in varchar2
17  	 ,P_LAST_UPDATE_DATE  in varchar2
18 	 ,P_SUB_TYPE          in varchar2
19          ,P_CUSTOM_MODE     in varchar2
20 	 )
21 is
22 
23 l_demand_plan_id number;
24 f_luby    number;  -- entity owner in file
25 f_ludate  date;    -- entity update date in file
26 db_luby   number;  -- entity owner in db
27 db_ludate date;    -- entity update date in db
28 
29 
30 BEGIN
31 
32         -- translate values to IDs
33         select DEMAND_PLAN_ID
34         into l_demand_plan_id
35         from MSD_DEMAND_PLANS
36         where DEMAND_PLAN_NAME = P_DEMAND_PLAN_NAME;
37 
38 
39 
40         -- Translate owner to file_last_updated_by
41         f_luby := fnd_load_util.owner_id(P_OWNER);
42 
43         -- Translate char last_update_date to date
44         f_ludate := nvl(to_date(P_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
45         begin
46           select LAST_UPDATED_BY, LAST_UPDATE_DATE
47           into db_luby, db_ludate
48           from msd_dp_seeded_documents
49           where DEMAND_PLAN_ID = l_demand_plan_id
50           and DOCUMENT_NAME = P_DOCUMENT_NAME;
51 
52 	  -- Test for customization and version
53           if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
54                                         db_ludate, P_CUSTOM_MODE)) then
55 	    -- Update existing row
56             update msd_dp_seeded_documents
57 	    set  description = p_description
58 	    ,type = p_type
59             ,open_on_startup = p_open_on_startup
60             ,script_cleanup = p_script_cleanup
61             ,script_init = p_script_init
62             ,script_prepage = p_script_prepage
63             ,script_postpage = p_script_postpage
64             ,valid_flag = p_valid_flag ,
65 	    sub_type = p_sub_type    ,
66 	    last_update_date = f_ludate            ,
67 	    last_updated_by = f_luby             ,
68 	    last_update_login = 0
69             where demand_plan_id = l_demand_plan_id
70             and document_name = p_document_name;
71 
72           end if;
73         exception
74           when no_data_found then
75             -- Record doesn't exist - insert in all cases
76             insert into msd_dp_seeded_documents
77             (DEMAND_PLAN_ID
78 	    ,DOCUMENT_ID
79 	    ,DOCUMENT_NAME
80             ,DESCRIPTION
81             ,TYPE
82             ,OPEN_ON_STARTUP
83             ,SCRIPT_CLEANUP
84             ,SCRIPT_INIT
85             ,SCRIPT_PREPAGE
86             ,SCRIPT_POSTPAGE
87             ,VALID_FLAG  ,
88 	    SUB_TYPE                  ,
89             CREATION_DATE	       ,
90             CREATED_BY                  ,
91             LAST_UPDATE_DATE            ,
92             LAST_UPDATED_BY             ,
93             LAST_UPDATE_LOGIN
94             )
95             values
96             (l_demand_plan_id
97             ,msd_dp_seeded_doc_s.nextval
98 	    ,P_DOCUMENT_NAME
99 	    ,p_description
100             ,p_type
101             ,p_open_on_startup
102             ,p_script_cleanup
103             ,p_script_init
104             ,p_script_prepage
105             ,p_script_postpage
106             ,p_valid_flag   ,
107 	    p_sub_type        ,
108             f_ludate	       ,
109 	    f_luby                  ,
110 	    f_ludate            ,
111 	    f_luby             ,
112 	    0
113 	    );
114         end;
115 
116 
117 END;
118 
119 END msd_dp_seeded_document_pkg ;