DBA Data[Home] [Help]

PACKAGE BODY: APPS.PA_PROJ_FP_OPTIONS_PKG

Source


1 PACKAGE BODY pa_proj_fp_options_pkg as
2 /* $Header: PAFPPOTB.pls 120.5 2012/01/03 14:48:49 a5sharma ship $ */
3 -- Start of Comments
4 -- Package name     : PA_PROJ_FP_OPTIONS_PKG
5 -- Purpose          :
6 -- History          :
7 -- 15-May-2002 Vejayara Added parameters for columns factor_by_code
8 --                      and plan_in_multi_curr_flag
9 -- 14-Aug-2002 Vejayara Added parameters for financial planning in all
10 --                      procedures
11 -- 22-Aug-2002 Manoj    found bugs in insert row and update row. Fixed it.
12 --                      In update row decode for newly added columns is not appropriate.
13 --                      In insert row sequence was not proper. Changed this in last version.
14 -- 23-Apr-2003 Rravipat Bug 2920954 Added parameters to insert_row and
15 --                      update_row  apis for new coulmns:
16 --                        select_cost_res_auto_flag
17 --                        cost_res_planning_level
18 --                        select_rev_res_auto_flag
19 --                        revenue_res_planning_level
20 --                        select_all_res_auto_flag
21 --                        all_res_planning_level
22 --
23 --   26-JUN-2003 jwhite        - Plannable Task Dev Effort:
24 --                               For the Insert_Row procedure, add the
25 --                               following IN-parameters:
26 --                               1) p_refresh_required_flag
27 --	                         2) p_request_id
28 --	                         3) p_processing_code
29 --
30 
31 
32 --   r11.5 FP.M Developement ----------------------------------
33 --
34 --   08-JAN-2004 jwhite     - Bug 3362316
35 --                            Extensively rewrote
36 --                            1) Insert_Row
37 --                            2) Update_Row
38 --
39 --                            Please Note:
40 --                            Some of the table column names
41 --                            are 30-charaters long. So, they
42 --                            must be abbreviated to include the
43 --                            "p_" prefix (PLS-00114).
44 --
45 --     'P_COST_NON_LABOR_RES_RATE_SCH_ID' -> P_CST_NON_LABR_RES_RATE_SCH_ID
46 --     'P_REV_NON_LABOR_RES_RATE_SCH_ID'  -> P_REV_NON_LABR_RES_RATE_SCH_ID
47 --     'P_ALL_NON_LABOR_RES_RATE_SCH_ID'  -> P_ALL_NON_LABR_RES_RATE_SCH_ID
48 --     'P_GEN_COST_INCL_CHANGE_DOC_FLAG'  -> P_GN_COST_INCL_CHANGE_DOC_FLAG
49 --     'P_GEN_COST_RET_MANUAL_LINE_FLAG'  -> P_GN_COST_RET_MANUAL_LINE_FLAG
50 --     'P_GEN_COST_INCL_UNSPENT_AMT_FLAG' -> P_GN_CST_INCL_UNSPENT_AMT_FLAG
51 --     'P_GEN_REV_INCL_UNSPENT_AMT_FLAG'  -> P_GN_REV_INCL_UNSPENT_AMT_FLAG
52 --     'P_GEN_ALL_INCL_UNSPENT_AMT_FLAG'  -> P_GN_ALL_INCL_UNSPENT_AMT_FLAG
53 --     'P_GEN_COST_ACTUAL_AMTS_THRU_CODE' -> P_GN_CST_ACTUAL_AMTS_THRU_CODE
54 --     'P_GEN_REV_ACTUAL_AMTS_THRU_CODE'  -> P_GN_REV_ACTUAL_AMTS_THRU_CODE
55 --     'P_GEN_ALL_ACTUAL_AMTS_THRU_CODE'  -> P_GN_ALL_ACTUAL_AMTS_THRU_CODE
56 --
57 
58 --   26-jan-2004 rravipat   - Bug 3354518 (IDC)
59 --                            Included new column track_workplan_costs_flag
60 --                            in the apis insert_row and update_row
61 --   27-jan-2004 rravipat   - Bug 3354518 (IDC)
62 --                            Removed referenced to column RES_CLASS_BURDEN_SCH_ID
63 --                            in apis insert_row and update_row as this
64 --                            column has been removed.
65 --   20-MAR-2004 rravipat  - Bug 3519062
66 --                           Impact of new columns to pa_proj_fp_options
67 --                           New columns have been included to hold workplan
68 --                           version details if workplan is the source of
69 --                           generation
70 
71 --  23-APR-2004 rravipat   - Bug 3580727
72 --                           The following column should be dropped
73 --                           ALL_EMP_RATE_SCH_ID
74 --                           ALL_JOB_RATE_SCH_ID
75 --                           ALL_NON_LABOR_RES_RATE_SCH_ID
76 --                           ALL_RES_CLASS_RATE_SCH_ID
77 --                           ALL_BURDEN_RATE_SCH_ID
78 --                           GEN_REV_INCL_UNSPENT_AMT_FLAG
79 -- 6-Arp-2005 prachand       Added code for webAdi Changes
80 --                           Added the code for insertion
81 --                           insertion and updation of the
82 --                           additional parameters p_cost_layout_code,
83 --                           p_revenue_layout_code , and p_all_layout_code
84 -- 18-JUL-2006 nkumbi        - Bug 5462471
85    --                           Included parameter revenue_derivation_method in Insert_Row, update_row
86 -- NOTE             :
87 -- End of Comments
88 
89 G_PKG_NAME  CONSTANT VARCHAR2(30) := 'PA_PROJ_FP_OPTIONS_PKG';
90 G_FILE_NAME CONSTANT VARCHAR2(12) := 'PAFPPOTB.pls';
91 
92 PROCEDURE Insert_Row
93 ( px_proj_fp_options_id
94     IN OUT NOCOPY pa_proj_fp_options.proj_fp_options_id%TYPE  --File.Sql.39 bug 4440895
95  ,p_project_id
96     IN pa_proj_fp_options.project_id%TYPE := FND_API.G_MISS_NUM
97  ,p_fin_plan_option_level_code
98     IN pa_proj_fp_options.fin_plan_option_level_code%TYPE := FND_API.G_MISS_CHAR
99  ,p_fin_plan_type_id
100     IN pa_proj_fp_options.fin_plan_type_id%TYPE := FND_API.G_MISS_NUM
101  ,p_fin_plan_start_date
102     IN pa_proj_fp_options.fin_plan_start_date%TYPE := FND_API.G_MISS_DATE
103  ,p_fin_plan_end_date
104     IN pa_proj_fp_options.fin_plan_end_date%TYPE := FND_API.G_MISS_DATE
105  ,p_fin_plan_preference_code
106     IN pa_proj_fp_options.fin_plan_preference_code%TYPE := FND_API.G_MISS_CHAR
107  ,p_cost_amount_set_id
108     IN pa_proj_fp_options.cost_amount_set_id%TYPE := FND_API.G_MISS_NUM
109  ,p_revenue_amount_set_id
110     IN pa_proj_fp_options.revenue_amount_set_id%TYPE := FND_API.G_MISS_NUM
111  ,p_all_amount_set_id
112     IN pa_proj_fp_options.all_amount_set_id%TYPE := FND_API.G_MISS_NUM
113  ,p_cost_fin_plan_level_code
114     IN pa_proj_fp_options.cost_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
115  ,p_cost_time_phased_code
116     IN pa_proj_fp_options.cost_time_phased_code%TYPE := FND_API.G_MISS_CHAR
117  ,p_cost_resource_list_id
118     IN pa_proj_fp_options.cost_resource_list_id%TYPE := FND_API.G_MISS_NUM
119  ,p_revenue_fin_plan_level_code
120     IN pa_proj_fp_options.revenue_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
121  ,p_revenue_time_phased_code
122     IN pa_proj_fp_options.revenue_time_phased_code%TYPE := FND_API.G_MISS_CHAR
123  ,p_revenue_resource_list_id
124     IN pa_proj_fp_options.revenue_resource_list_id%TYPE := FND_API.G_MISS_NUM
125  ,p_all_fin_plan_level_code
126     IN pa_proj_fp_options.all_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
127  ,p_all_time_phased_code
128     IN pa_proj_fp_options.all_time_phased_code%TYPE := FND_API.G_MISS_CHAR
129  ,p_all_resource_list_id
130     IN pa_proj_fp_options.all_resource_list_id%TYPE := FND_API.G_MISS_NUM
131  ,p_report_labor_hrs_from_code
132     IN pa_proj_fp_options.report_labor_hrs_from_code%TYPE := FND_API.G_MISS_CHAR
133  ,p_fin_plan_version_id
134     IN pa_proj_fp_options.fin_plan_version_id%TYPE := FND_API.G_MISS_NUM
135 /* added for financial planning */
136  ,p_plan_in_multi_curr_flag
137     IN pa_proj_fp_options.plan_in_multi_curr_flag%TYPE      := FND_API.G_MISS_CHAR
138  ,p_factor_by_code
139     IN pa_proj_fp_options.factor_by_code%TYPE               := FND_API.G_MISS_CHAR
140  ,p_default_amount_type_code
141     IN pa_proj_fp_options.default_amount_type_code%TYPE     := FND_API.G_MISS_CHAR
142  ,p_default_amount_subtype_code
143     IN pa_proj_fp_options.default_amount_subtype_code%TYPE  := FND_API.G_MISS_CHAR
144  ,p_approved_cost_plan_type_flag
145     IN pa_proj_fp_options.approved_cost_plan_type_flag%TYPE := FND_API.G_MISS_CHAR
146  ,p_approved_rev_plan_type_flag
147     IN pa_proj_fp_options.approved_rev_plan_type_flag%TYPE  := FND_API.G_MISS_CHAR
148  ,p_projfunc_cost_rate_type
149     IN pa_proj_fp_options.projfunc_cost_rate_type%TYPE      := FND_API.G_MISS_CHAR
150  ,p_projfunc_cost_rate_date_type
151     IN pa_proj_fp_options.projfunc_cost_rate_date_type%TYPE := FND_API.G_MISS_CHAR
152  ,p_projfunc_cost_rate_date
153     IN pa_proj_fp_options.projfunc_cost_rate_date%TYPE      := FND_API.G_MISS_DATE
154  ,p_projfunc_rev_rate_type
155     IN pa_proj_fp_options.projfunc_rev_rate_type%TYPE       := FND_API.G_MISS_CHAR
156  ,p_projfunc_rev_rate_date_type
157     IN pa_proj_fp_options.projfunc_rev_rate_date_type%TYPE  := FND_API.G_MISS_CHAR
158  ,p_projfunc_rev_rate_date
159     IN pa_proj_fp_options.projfunc_rev_rate_date%TYPE       := FND_API.G_MISS_DATE
160  ,p_project_cost_rate_type
161     IN pa_proj_fp_options.project_cost_rate_type%TYPE       := FND_API.G_MISS_CHAR
162  ,p_project_cost_rate_date_type
163     IN pa_proj_fp_options.project_cost_rate_date_type%TYPE  := FND_API.G_MISS_CHAR
164  ,p_project_cost_rate_date
165     IN pa_proj_fp_options.project_cost_rate_date%TYPE       := FND_API.G_MISS_DATE
166  ,p_project_rev_rate_type
167     IN pa_proj_fp_options.project_rev_rate_type%TYPE        := FND_API.G_MISS_CHAR
168  ,p_project_rev_rate_date_type
169     IN pa_proj_fp_options.project_rev_rate_date_type%TYPE   := FND_API.G_MISS_CHAR
170  ,p_project_rev_rate_date
171     IN pa_proj_fp_options.project_rev_rate_date%TYPE        := FND_API.G_MISS_DATE
172  ,p_margin_derived_from_code
173     IN pa_proj_fp_options.margin_derived_from_code%TYPE     := FND_API.G_MISS_CHAR
174 /* ended additions for fin plan */
175 /* Bug 2920954 start of additional parameters for post FP-k one off */
176  ,p_select_cost_res_auto_flag
177      IN pa_proj_fp_options.select_cost_res_auto_flag%TYPE   := FND_API.G_MISS_CHAR
178  ,p_cost_res_planning_level
179      IN pa_proj_fp_options.cost_res_planning_level%TYPE     := FND_API.G_MISS_CHAR
180  ,p_select_rev_res_auto_flag
181      IN pa_proj_fp_options.select_rev_res_auto_flag%TYPE    := FND_API.G_MISS_CHAR
182  ,p_revenue_res_planning_level
183      IN pa_proj_fp_options.revenue_res_planning_level%TYPE  := FND_API.G_MISS_CHAR
184  ,p_select_all_res_auto_flag
185      IN pa_proj_fp_options.select_all_res_auto_flag%TYPE    := FND_API.G_MISS_CHAR
186  ,p_all_res_planning_level
187      IN pa_proj_fp_options.all_res_planning_level%TYPE      := FND_API.G_MISS_CHAR
188  ,p_refresh_required_flag
189      IN pa_budget_versions.PROCESS_UPDATE_WBS_FLAG%TYPE     := FND_API.G_MISS_CHAR
190  ,p_request_id
191      IN pa_budget_versions.REQUEST_ID%TYPE                  := FND_API.G_MISS_NUM
192  ,p_processing_code
193      IN pa_budget_versions.PLAN_PROCESSING_CODE%TYPE        := FND_API.G_MISS_CHAR
194 /* Bug 2920954 end of additional parameters for post FP-k one off */
195  ,p_primary_cost_forecast_flag
196      IN PA_PROJ_FP_OPTIONS.primary_cost_forecast_flag%TYPE  := FND_API.G_MISS_CHAR
197  ,p_primary_rev_forecast_flag
198      IN PA_PROJ_FP_OPTIONS.primary_rev_forecast_flag%TYPE   := FND_API.G_MISS_CHAR
199  ,p_use_planning_rates_flag
200      IN PA_PROJ_FP_OPTIONS.use_planning_rates_flag%TYPE     := FND_API.G_MISS_CHAR
201  ,p_rbs_version_id
202      IN PA_PROJ_FP_OPTIONS.rbs_version_id%TYPE              := FND_API.G_MISS_NUM
203  ,p_res_class_raw_cost_sch_id
204      IN PA_PROJ_FP_OPTIONS.res_class_raw_cost_sch_id%TYPE   := FND_API.G_MISS_NUM
205  ,p_res_class_bill_rate_sch_id
206      IN PA_PROJ_FP_OPTIONS.res_class_bill_rate_sch_id%TYPE  := FND_API.G_MISS_NUM
207  ,p_cost_emp_rate_sch_id
208      IN PA_PROJ_FP_OPTIONS.cost_emp_rate_sch_id%TYPE        := FND_API.G_MISS_NUM
209  ,p_cost_job_rate_sch_id
210      IN PA_PROJ_FP_OPTIONS.cost_job_rate_sch_id%TYPE        := FND_API.G_MISS_NUM
211  ,p_cst_non_labr_res_rate_sch_id
212      IN PA_PROJ_FP_OPTIONS.cost_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
213  ,p_cost_res_class_rate_sch_id
214      IN PA_PROJ_FP_OPTIONS.cost_res_class_rate_sch_id%TYPE  := FND_API.G_MISS_NUM
215  ,p_cost_burden_rate_sch_id
216      IN PA_PROJ_FP_OPTIONS.cost_burden_rate_sch_id%TYPE     := FND_API.G_MISS_NUM
217  ,p_cost_current_planning_period
218      IN PA_PROJ_FP_OPTIONS.cost_current_planning_period%TYPE := FND_API.G_MISS_CHAR
219  ,p_cost_period_mask_id
220      IN PA_PROJ_FP_OPTIONS.cost_period_mask_id%TYPE := FND_API.G_MISS_NUM
221  ,p_rev_emp_rate_sch_id
222      IN PA_PROJ_FP_OPTIONS.rev_emp_rate_sch_id%TYPE := FND_API.G_MISS_NUM
223  ,p_rev_job_rate_sch_id
224      IN PA_PROJ_FP_OPTIONS.rev_job_rate_sch_id%TYPE := FND_API.G_MISS_NUM
225  ,p_rev_non_labr_res_rate_sch_id
226      IN PA_PROJ_FP_OPTIONS.rev_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
227  ,p_rev_res_class_rate_sch_id
228      IN PA_PROJ_FP_OPTIONS.rev_res_class_rate_sch_id%TYPE := FND_API.G_MISS_NUM
229  ,p_rev_current_planning_period
230      IN PA_PROJ_FP_OPTIONS.rev_current_planning_period%TYPE := FND_API.G_MISS_CHAR
231  ,p_rev_period_mask_id
232      IN PA_PROJ_FP_OPTIONS.rev_period_mask_id%TYPE  := FND_API.G_MISS_NUM
233  /** Bug 3580727 Columns have been dropped
234      ,p_all_emp_rate_sch_id
235          IN PA_PROJ_FP_OPTIONS.all_emp_rate_sch_id%TYPE := FND_API.G_MISS_NUM
236      ,p_all_job_rate_sch_id
237          IN PA_PROJ_FP_OPTIONS.all_job_rate_sch_id%TYPE := FND_API.G_MISS_NUM
238      ,p_all_non_labr_res_rate_sch_id
239          IN PA_PROJ_FP_OPTIONS.all_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
240      ,p_all_res_class_rate_sch_id
241          IN PA_PROJ_FP_OPTIONS.all_res_class_rate_sch_id%TYPE := FND_API.G_MISS_NUM
242      ,p_all_burden_rate_sch_id
243          IN PA_PROJ_FP_OPTIONS.all_burden_rate_sch_id%TYPE := FND_API.G_MISS_NUM
244  **/
245  ,p_all_current_planning_period
246      IN PA_PROJ_FP_OPTIONS.all_current_planning_period%TYPE := FND_API.G_MISS_CHAR
247  ,p_all_period_mask_id
248      IN PA_PROJ_FP_OPTIONS.all_period_mask_id%TYPE := FND_API.G_MISS_NUM
249  ,p_gen_cost_src_code
250      IN PA_PROJ_FP_OPTIONS.gen_cost_src_code%TYPE := FND_API.G_MISS_CHAR
251  ,p_gen_cost_etc_src_code
252      IN PA_PROJ_FP_OPTIONS.gen_cost_etc_src_code%TYPE := FND_API.G_MISS_CHAR
253  ,p_gn_cost_incl_change_doc_flag
254      IN PA_PROJ_FP_OPTIONS.gen_cost_incl_change_doc_flag%TYPE := FND_API.G_MISS_CHAR
255  ,p_gen_cost_incl_open_comm_flag
256      IN PA_PROJ_FP_OPTIONS.gen_cost_incl_open_comm_flag%TYPE := FND_API.G_MISS_CHAR
257  ,p_gn_cost_ret_manual_line_flag
258      IN PA_PROJ_FP_OPTIONS.gen_cost_ret_manual_line_flag%TYPE := FND_API.G_MISS_CHAR
259  ,p_gn_cst_incl_unspent_amt_flag
260      IN PA_PROJ_FP_OPTIONS.gen_cost_incl_unspent_amt_flag%TYPE  := FND_API.G_MISS_CHAR
261  ,p_gen_rev_src_code
262      IN PA_PROJ_FP_OPTIONS.gen_rev_src_code%TYPE := FND_API.G_MISS_CHAR
263  ,p_gen_rev_etc_src_code
264      IN PA_PROJ_FP_OPTIONS.gen_rev_etc_src_code%TYPE := FND_API.G_MISS_CHAR
265  ,p_gen_rev_incl_change_doc_flag
266      IN PA_PROJ_FP_OPTIONS.gen_rev_incl_change_doc_flag%TYPE := FND_API.G_MISS_CHAR
267  ,p_gen_rev_incl_bill_event_flag
268      IN PA_PROJ_FP_OPTIONS.gen_rev_incl_bill_event_flag%TYPE := FND_API.G_MISS_CHAR
269  ,p_gen_rev_ret_manual_line_flag
270      IN PA_PROJ_FP_OPTIONS.gen_rev_ret_manual_line_flag%TYPE  := FND_API.G_MISS_CHAR
271  /** Bug 3580727
272  ,p_gn_rev_incl_unspent_amt_flag
273      IN PA_PROJ_FP_OPTIONS.gen_rev_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
274   **/
275  ,p_gen_src_cost_plan_type_id
276      IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_type_id%TYPE := FND_API.G_MISS_NUM
277  ,p_gen_src_cost_plan_version_id
278      IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_version_id%TYPE := FND_API.G_MISS_NUM
279  ,p_gen_src_cost_plan_ver_code
280      IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_ver_code%TYPE := FND_API.G_MISS_CHAR
281  ,p_gen_src_rev_plan_type_id
282      IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_type_id%TYPE := FND_API.G_MISS_NUM
283  ,p_gen_src_rev_plan_version_id
284      IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_version_id%TYPE := FND_API.G_MISS_NUM
285  ,p_gen_src_rev_plan_ver_code
286      IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_ver_code%TYPE := FND_API.G_MISS_CHAR
287  ,p_gen_src_all_plan_type_id
288      IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_type_id%TYPE := FND_API.G_MISS_NUM
289  ,p_gen_src_all_plan_version_id
290      IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_version_id%TYPE := FND_API.G_MISS_NUM
291  ,p_gen_src_all_plan_ver_code
292      IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_ver_code%TYPE := FND_API.G_MISS_CHAR
293  ,p_gen_all_src_code
294      IN PA_PROJ_FP_OPTIONS.gen_all_src_code%TYPE := FND_API.G_MISS_CHAR
295  ,p_gen_all_etc_src_code
296      IN PA_PROJ_FP_OPTIONS.gen_all_etc_src_code%TYPE := FND_API.G_MISS_CHAR
297  ,p_gen_all_incl_change_doc_flag
298      IN PA_PROJ_FP_OPTIONS.gen_all_incl_change_doc_flag%TYPE := FND_API.G_MISS_CHAR
299  ,p_gen_all_incl_open_comm_flag
300      IN PA_PROJ_FP_OPTIONS.gen_all_incl_open_comm_flag%TYPE := FND_API.G_MISS_CHAR
301  ,p_gen_all_ret_manual_line_flag
305  ,p_gn_all_incl_unspent_amt_flag
302      IN PA_PROJ_FP_OPTIONS.gen_all_ret_manual_line_flag%TYPE := FND_API.G_MISS_CHAR
303  ,p_gen_all_incl_bill_event_flag
304      IN PA_PROJ_FP_OPTIONS.gen_all_incl_bill_event_flag%TYPE := FND_API.G_MISS_CHAR
306      IN PA_PROJ_FP_OPTIONS.gen_all_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
307  ,p_gn_cst_actual_amts_thru_code
308      IN PA_PROJ_FP_OPTIONS.gen_cost_actual_amts_thru_code%TYPE := FND_API.G_MISS_CHAR
309  ,p_gn_rev_actual_amts_thru_code
310      IN PA_PROJ_FP_OPTIONS.gen_rev_actual_amts_thru_code%TYPE := FND_API.G_MISS_CHAR
311  ,p_gn_all_actual_amts_thru_code
312      IN PA_PROJ_FP_OPTIONS.gen_all_actual_amts_thru_code%TYPE  := FND_API.G_MISS_CHAR
313  ,p_track_workplan_costs_flag
314      IN PA_PROJ_FP_OPTIONS.track_workplan_costs_flag%TYPE  := FND_API.G_MISS_CHAR
315  -- bug 3519062 start of workplan gen source related columns
316  ,p_gen_src_cost_wp_version_id
317      IN PA_PROJ_FP_OPTIONS.gen_src_cost_wp_version_id%TYPE := FND_API.G_MISS_NUM
318  ,p_gen_src_cost_wp_ver_code
319      IN PA_PROJ_FP_OPTIONS.gen_src_cost_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
320  ,p_gen_src_rev_wp_version_id
321      IN PA_PROJ_FP_OPTIONS.gen_src_rev_wp_version_id%TYPE := FND_API.G_MISS_NUM
322  ,p_gen_src_rev_wp_ver_code
323      IN PA_PROJ_FP_OPTIONS.gen_src_rev_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
324  ,p_gen_src_all_wp_version_id
325      IN PA_PROJ_FP_OPTIONS.gen_src_all_wp_version_id%TYPE := FND_API.G_MISS_NUM
326  ,p_gen_src_all_wp_ver_code
327      IN PA_PROJ_FP_OPTIONS.gen_src_all_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
328  -- bug 3519062 end of workplan gen source related columns
329 
330  --Added for webAdi changes for the amount types to be displayed
331  ,p_cost_layout_code
332      IN PA_PROJ_FP_OPTIONS.cost_layout_code%TYPE := FND_API.G_MISS_CHAR
333  ,p_revenue_layout_code
334      IN PA_PROJ_FP_OPTIONS.revenue_layout_code%TYPE := FND_API.G_MISS_CHAR
335  ,p_all_layout_code
336      IN PA_PROJ_FP_OPTIONS.all_layout_code%TYPE := FND_API.G_MISS_CHAR
337   ,p_revenue_derivation_method
338         IN PA_PROJ_FP_OPTIONS.revenue_derivation_method%TYPE := FND_API.G_MISS_CHAR --Bug 5462471
339 	, p_copy_etc_from_plan_flag
340         IN PA_PROJ_FP_OPTIONS.copy_etc_from_plan_flag%TYPE := FND_API.G_MISS_CHAR  --bug 8318932
341 	, p_default_raw_cost
342         IN PA_PROJ_FP_OPTIONS.default_raw_cost%TYPE := FND_API.G_MISS_NUM  --CBS
343 	, p_default_bill_rate
344         IN PA_PROJ_FP_OPTIONS.default_bill_rate%TYPE := FND_API.G_MISS_NUM  --CBS
345 	, p_def_markup_percentage
346         IN PA_PROJ_FP_OPTIONS.def_markup_percentage%TYPE := FND_API.G_MISS_NUM   --CBS
347 	, p_def_raw_cost_currency_code
348         IN PA_PROJ_FP_OPTIONS.def_raw_cost_currency_code%TYPE := FND_API.G_MISS_CHAR  --CBS
349 	, p_def_bill_rate_currency_code
350         IN PA_PROJ_FP_OPTIONS.def_bill_rate_currency_code%TYPE := FND_API.G_MISS_CHAR  --CBS
351  ,x_row_id                        OUT NOCOPY ROWID --File.Sql.39 bug 4440895
352  ,x_return_status                 OUT NOCOPY VARCHAR2) --File.Sql.39 bug 4440895
353  IS
354    CURSOR C2 IS SELECT pa_proj_fp_options_s.nextval FROM sys.dual;
355 BEGIN
356    x_return_status := FND_API.G_RET_STS_SUCCESS;
357 
358    IF (px_proj_fp_options_id IS NULL) OR
359          (px_proj_fp_options_id = FND_API.G_MISS_NUM) then
360        open c2;
361        fetch c2 into px_proj_fp_options_id;
362        close c2;
363    end if;
364    INSERT INTO pa_proj_fp_options(
365     proj_fp_options_id
366    ,record_version_number
367    ,project_id
368    ,fin_plan_option_level_code
369    ,fin_plan_type_id
370    ,fin_plan_start_date
371    ,fin_plan_end_date
372    ,fin_plan_preference_code
373    ,cost_amount_set_id
374    ,revenue_amount_set_id
375    ,all_amount_set_id
376    ,cost_fin_plan_level_code
377    ,cost_time_phased_code
378    ,cost_resource_list_id
379    ,revenue_fin_plan_level_code
380    ,revenue_time_phased_code
381    ,revenue_resource_list_id
382    ,all_fin_plan_level_code
383    ,all_time_phased_code
384    ,all_resource_list_id
385    ,report_labor_hrs_from_code
386    ,fin_plan_version_id
387    ,default_amount_type_code
388    ,default_amount_subtype_code
389    ,approved_cost_plan_type_flag
390    ,approved_rev_plan_type_flag
391    ,projfunc_cost_rate_type
392    ,projfunc_cost_rate_date_type
393    ,projfunc_cost_rate_date
394    ,projfunc_rev_rate_type
395    ,projfunc_rev_rate_date_type
396    ,projfunc_rev_rate_date
397    ,project_cost_rate_type
398    ,project_cost_rate_date_type
399    ,project_cost_rate_date
400    ,project_rev_rate_type
401    ,project_rev_rate_date_type
402    ,project_rev_rate_date
403    ,margin_derived_from_code
404    ,select_cost_res_auto_flag
405    ,cost_res_planning_level
406    ,select_rev_res_auto_flag
407    ,revenue_res_planning_level
408    ,select_all_res_auto_flag
409    ,all_res_planning_level
410    ,last_update_date
411    ,last_updated_by
412    ,creation_date
413    ,created_by
414    ,last_update_login
415    ,factor_by_code
416    ,plan_in_multi_curr_flag
417    ,process_update_wbs_flag
418    ,request_id
419    ,plan_processing_code
420      ,primary_cost_forecast_flag
421      ,primary_rev_forecast_flag
422      ,use_planning_rates_flag
423      ,rbs_version_id
424      ,res_class_raw_cost_sch_id
425      ,res_class_bill_rate_sch_id
426      ,cost_emp_rate_sch_id
427      ,cost_job_rate_sch_id
428      ,cost_non_labor_res_rate_sch_id
429      ,cost_res_class_rate_sch_id
430      ,cost_burden_rate_sch_id
431      ,cost_current_planning_period
432      ,cost_period_mask_id
433      ,rev_emp_rate_sch_id
434      ,rev_job_rate_sch_id
435      ,rev_non_labor_res_rate_sch_id
436      ,rev_res_class_rate_sch_id
437      ,rev_current_planning_period
441          ,all_job_rate_sch_id
438      ,rev_period_mask_id
439      /** Bug 3580727
440          ,all_emp_rate_sch_id
442          ,all_non_labor_res_rate_sch_id
443          ,all_res_class_rate_sch_id
444          ,all_burden_rate_sch_id
445      **/
446      ,all_current_planning_period
447      ,all_period_mask_id
448      ,gen_cost_src_code
449      ,gen_cost_etc_src_code
450      ,gen_cost_incl_change_doc_flag
451      ,gen_cost_incl_open_comm_flag
452      ,gen_cost_ret_manual_line_flag
453      ,gen_cost_incl_unspent_amt_flag
454      ,gen_rev_src_code
455      ,gen_rev_etc_src_code
456      ,gen_rev_incl_change_doc_flag
457      ,gen_rev_incl_bill_event_flag
458      ,gen_rev_ret_manual_line_flag
459      /** Bug 3580727
460          ,gen_rev_incl_unspent_amt_flag
461      **/
462      ,gen_src_cost_plan_type_id
463      ,gen_src_cost_plan_version_id
464      ,gen_src_cost_plan_ver_code
465      ,gen_src_rev_plan_type_id
466      ,gen_src_rev_plan_version_id
467      ,gen_src_rev_plan_ver_code
468      ,gen_src_all_plan_type_id
469      ,gen_src_all_plan_version_id
470      ,gen_src_all_plan_ver_code
471      ,gen_all_src_code
472      ,gen_all_etc_src_code
473      ,gen_all_incl_change_doc_flag
474      ,gen_all_incl_open_comm_flag
475      ,gen_all_ret_manual_line_flag
476      ,gen_all_incl_bill_event_flag
477      ,gen_all_incl_unspent_amt_flag
478      ,gen_cost_actual_amts_thru_code
479      ,gen_rev_actual_amts_thru_code
480      ,gen_all_actual_amts_thru_code
481      ,track_workplan_costs_flag
482      ,gen_src_cost_wp_version_id
483      ,gen_src_cost_wp_ver_code
484      ,gen_src_rev_wp_version_id
485      ,gen_src_rev_wp_ver_code
486      ,gen_src_all_wp_version_id
487      ,gen_src_all_wp_ver_code
488      ,cost_layout_code
489      ,revenue_layout_code
490      ,all_layout_code
491      ,revenue_derivation_method --Bug 5462471
492      ,copy_etc_from_plan_flag --bug 8318932
493      ,default_raw_cost --CBS
494      ,default_bill_rate --CBS
495      ,def_markup_percentage --CBS
496      ,def_raw_cost_currency_code --CBS
497      ,def_bill_rate_currency_code --CBS
498     ) values (
499     DECODE( px_proj_fp_options_id, FND_API.G_MISS_NUM, NULL,
500                   px_proj_fp_options_id)
501    ,1
502    ,DECODE( p_project_id, FND_API.G_MISS_NUM, NULL, p_project_id)
503    ,DECODE( p_fin_plan_option_level_code, FND_API.G_MISS_CHAR, NULL, p_fin_plan_option_level_code)
504    ,DECODE( p_fin_plan_type_id, FND_API.G_MISS_NUM, NULL, p_fin_plan_type_id)
505    ,DECODE( p_fin_plan_start_date, FND_API.G_MISS_DATE, to_date(NULL), p_fin_plan_start_date)
506    ,DECODE( p_fin_plan_end_date, FND_API.G_MISS_DATE, to_date(NULL), p_fin_plan_end_date)
507    ,DECODE( p_fin_plan_preference_code, FND_API.G_MISS_CHAR, NULL, p_fin_plan_preference_code)
508    ,DECODE( p_cost_amount_set_id, FND_API.G_MISS_NUM, NULL, p_cost_amount_set_id)
509    ,DECODE( p_revenue_amount_set_id, FND_API.G_MISS_NUM, NULL, p_revenue_amount_set_id)
510    ,DECODE( p_all_amount_set_id, FND_API.G_MISS_NUM, NULL, p_all_amount_set_id)
511    ,DECODE( p_cost_fin_plan_level_code, FND_API.G_MISS_CHAR, NULL, p_cost_fin_plan_level_code)
512    ,DECODE( p_cost_time_phased_code, FND_API.G_MISS_CHAR, NULL, p_cost_time_phased_code)
513    ,DECODE( p_cost_resource_list_id, FND_API.G_MISS_NUM, NULL, p_cost_resource_list_id)
514    ,DECODE( p_revenue_fin_plan_level_code, FND_API.G_MISS_CHAR, NULL, p_revenue_fin_plan_level_code)
515    ,DECODE( p_revenue_time_phased_code, FND_API.G_MISS_CHAR, NULL, p_revenue_time_phased_code)
516    ,DECODE( p_revenue_resource_list_id, FND_API.G_MISS_NUM, NULL, p_revenue_resource_list_id)
517    ,DECODE( p_all_fin_plan_level_code, FND_API.G_MISS_CHAR, NULL, p_all_fin_plan_level_code)
518    ,DECODE( p_all_time_phased_code, FND_API.G_MISS_CHAR, NULL, p_all_time_phased_code)
519    ,DECODE( p_all_resource_list_id, FND_API.G_MISS_NUM, NULL, p_all_resource_list_id)
520    ,DECODE( p_report_labor_hrs_from_code, FND_API.G_MISS_CHAR, NULL, p_report_labor_hrs_from_code)
521    ,DECODE( p_fin_plan_version_id, FND_API.G_MISS_NUM, NULL, p_fin_plan_version_id)
522    ,DECODE( p_default_amount_type_code  , FND_API.G_MISS_CHAR, NULL,  p_default_amount_type_code)
523    ,DECODE( p_default_amount_subtype_code  , FND_API.G_MISS_CHAR, NULL,  p_default_amount_subtype_code)
524    ,DECODE( p_approved_cost_plan_type_flag , FND_API.G_MISS_CHAR, NULL,  p_approved_cost_plan_type_flag)
525    ,DECODE( p_approved_rev_plan_type_flag , FND_API.G_MISS_CHAR, NULL,  p_approved_rev_plan_type_flag)
526    ,DECODE( p_projfunc_cost_rate_type     , FND_API.G_MISS_CHAR, NULL,  p_projfunc_cost_rate_type)
527    ,DECODE( p_projfunc_cost_rate_date_type , FND_API.G_MISS_CHAR, NULL, p_projfunc_cost_rate_date_type)
528    ,DECODE( p_projfunc_cost_rate_date     , FND_API.G_MISS_DATE, NULL,  p_projfunc_cost_rate_date)
529    ,DECODE( p_projfunc_rev_rate_type      , FND_API.G_MISS_CHAR, NULL,  p_projfunc_rev_rate_type)
530    ,DECODE( p_projfunc_rev_rate_date_type , FND_API.G_MISS_CHAR, NULL,  p_projfunc_rev_rate_date_type)
531    ,DECODE( p_projfunc_rev_rate_date      , FND_API.G_MISS_DATE, NULL,  p_projfunc_rev_rate_date)
532    ,DECODE( p_project_cost_rate_type      , FND_API.G_MISS_CHAR, NULL, p_project_cost_rate_type)
533    ,DECODE( p_project_cost_rate_date_type , FND_API.G_MISS_CHAR, NULL, p_project_cost_rate_date_type)
534    ,DECODE( p_project_cost_rate_date      , FND_API.G_MISS_DATE, NULL, p_project_cost_rate_date)
535    ,DECODE( p_project_rev_rate_type       , FND_API.G_MISS_CHAR, NULL, p_project_rev_rate_type)
536    ,DECODE( p_project_rev_rate_date_type  , FND_API.G_MISS_CHAR, NULL, p_project_rev_rate_date_type)
537    ,DECODE( p_project_rev_rate_date       , FND_API.G_MISS_DATE, NULL, p_project_rev_rate_date)
538    ,DECODE( p_margin_derived_from_code    , FND_API.G_MISS_CHAR, NULL, p_margin_derived_from_code)
539    ,DECODE( p_select_cost_res_auto_flag   , FND_API.G_MISS_CHAR, NULL, p_select_cost_res_auto_flag)
540    ,DECODE( p_cost_res_planning_level     , FND_API.G_MISS_CHAR, NULL, p_cost_res_planning_level)
544    ,DECODE( p_all_res_planning_level      , FND_API.G_MISS_CHAR, NULL, p_all_res_planning_level)
541    ,DECODE( p_select_rev_res_auto_flag    , FND_API.G_MISS_CHAR, NULL, p_select_rev_res_auto_flag)
542    ,DECODE( p_revenue_res_planning_level  , FND_API.G_MISS_CHAR, NULL, p_revenue_res_planning_level)
543    ,DECODE( p_select_all_res_auto_flag    , FND_API.G_MISS_CHAR, NULL, p_select_all_res_auto_flag)
545    ,sysdate
546    ,fnd_global.user_id
547    ,sysdate
548    ,fnd_global.user_id
549    ,fnd_global.login_id
550    ,DECODE( p_factor_by_code, FND_API.G_MISS_CHAR, NULL, p_factor_by_code)
551    ,DECODE( p_plan_in_multi_curr_flag, FND_API.G_MISS_CHAR, NULL, p_plan_in_multi_curr_flag)
552    ,DECODE(p_refresh_required_flag, FND_API.G_MISS_CHAR, NULL, p_refresh_required_flag)
553    ,DECODE(p_request_id, FND_API.G_MISS_NUM, NULL, p_request_id)
554    ,DECODE(p_processing_code, FND_API.G_MISS_CHAR, NULL, p_processing_code)
555      ,DECODE(p_primary_cost_forecast_flag,    FND_API.G_MISS_CHAR, NULL,  p_primary_cost_forecast_flag)
556      ,DECODE(p_primary_rev_forecast_flag,     FND_API.G_MISS_CHAR, NULL,  p_primary_rev_forecast_flag)
557      ,DECODE(p_use_planning_rates_flag,       FND_API.G_MISS_CHAR, NULL,  p_use_planning_rates_flag)
558      ,DECODE(p_rbs_version_id,                FND_API.G_MISS_NUM,  NULL,  p_rbs_version_id)
559      ,DECODE(p_res_class_raw_cost_sch_id,     FND_API.G_MISS_NUM,  NULL,  p_res_class_raw_cost_sch_id)
560      ,DECODE(p_res_class_bill_rate_sch_id,    FND_API.G_MISS_NUM,  NULL,  p_res_class_bill_rate_sch_id)
561      ,DECODE(p_cost_emp_rate_sch_id,          FND_API.G_MISS_NUM,  NULL,  p_cost_emp_rate_sch_id)
562      ,DECODE(p_cost_job_rate_sch_id,          FND_API.G_MISS_NUM,  NULL,  p_cost_job_rate_sch_id)
563      ,DECODE(p_cst_non_labr_res_rate_sch_id,  FND_API.G_MISS_NUM,  NULL,  p_cst_non_labr_res_rate_sch_id)
564      ,DECODE(p_cost_res_class_rate_sch_id,    FND_API.G_MISS_NUM,  NULL,  p_cost_res_class_rate_sch_id)
565      ,DECODE(p_cost_burden_rate_sch_id,       FND_API.G_MISS_NUM,  NULL,  p_cost_burden_rate_sch_id)
566      ,DECODE(p_cost_current_planning_period,  FND_API.G_MISS_CHAR, NULL,  p_cost_current_planning_period)
567      ,DECODE(p_cost_period_mask_id,           FND_API.G_MISS_NUM,  NULL,  p_cost_period_mask_id)
568      ,DECODE(p_rev_emp_rate_sch_id,           FND_API.G_MISS_NUM,  NULL,  p_rev_emp_rate_sch_id)
569      ,DECODE(p_rev_job_rate_sch_id,           FND_API.G_MISS_NUM,  NULL,  p_rev_job_rate_sch_id)
570      ,DECODE(p_rev_non_labr_res_rate_sch_id,  FND_API.G_MISS_NUM,  NULL,  p_rev_non_labr_res_rate_sch_id)
571      ,DECODE(p_rev_res_class_rate_sch_id,     FND_API.G_MISS_NUM,  NULL,  p_rev_res_class_rate_sch_id)
572      ,DECODE(p_rev_current_planning_period,   FND_API.G_MISS_CHAR, NULL,  p_rev_current_planning_period)
573      ,DECODE(p_rev_period_mask_id,            FND_API.G_MISS_NUM,  NULL,  p_rev_period_mask_id)
574      /** Bug 3580727
575          ,DECODE(p_all_emp_rate_sch_id,           FND_API.G_MISS_NUM,  NULL,  p_all_emp_rate_sch_id)
576          ,DECODE(p_all_job_rate_sch_id,           FND_API.G_MISS_NUM,  NULL,  p_all_job_rate_sch_id)
577          ,DECODE(p_all_non_labr_res_rate_sch_id,  FND_API.G_MISS_NUM,  NULL,  p_all_non_labr_res_rate_sch_id)
578          ,DECODE(p_all_res_class_rate_sch_id,     FND_API.G_MISS_NUM,  NULL,  p_all_res_class_rate_sch_id)
579          ,DECODE(p_all_burden_rate_sch_id,        FND_API.G_MISS_NUM,  NULL,  p_all_burden_rate_sch_id)
580      **/
581      ,DECODE(p_all_current_planning_period,   FND_API.G_MISS_CHAR, NULL,  p_all_current_planning_period)
582      ,DECODE(p_all_period_mask_id,            FND_API.G_MISS_NUM,  NULL,  p_all_period_mask_id)
583      ,DECODE(p_gen_cost_src_code,             FND_API.G_MISS_CHAR, NULL,  p_gen_cost_src_code)
584      ,DECODE(p_gen_cost_etc_src_code,         FND_API.G_MISS_CHAR, NULL,  p_gen_cost_etc_src_code)
585      ,DECODE(p_gn_cost_incl_change_doc_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_cost_incl_change_doc_flag)
586      ,DECODE(p_gen_cost_incl_open_comm_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_cost_incl_open_comm_flag)
587      ,DECODE(p_gn_cost_ret_manual_line_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_cost_ret_manual_line_flag)
588      ,DECODE(p_gn_cst_incl_unspent_amt_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_cst_incl_unspent_amt_flag)
589      ,DECODE(p_gen_rev_src_code,              FND_API.G_MISS_CHAR, NULL,  p_gen_rev_src_code)
590      ,DECODE(p_gen_rev_etc_src_code,          FND_API.G_MISS_CHAR, NULL,  p_gen_rev_etc_src_code)
591      ,DECODE(p_gen_rev_incl_change_doc_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_rev_incl_change_doc_flag)
592      ,DECODE(p_gen_rev_incl_bill_event_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_rev_incl_bill_event_flag)
593      ,DECODE(p_gen_rev_ret_manual_line_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_rev_ret_manual_line_flag)
594      /** Bug 3580727
595          ,DECODE(p_gn_rev_incl_unspent_amt_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_rev_incl_unspent_amt_flag)
596      **/
597      ,DECODE(p_gen_src_cost_plan_type_id,     FND_API.G_MISS_NUM,  NULL,  p_gen_src_cost_plan_type_id)
598      ,DECODE(p_gen_src_cost_plan_version_id,  FND_API.G_MISS_NUM,  NULL,  p_gen_src_cost_plan_version_id)
599      ,DECODE(p_gen_src_cost_plan_ver_code,    FND_API.G_MISS_CHAR, NULL,  p_gen_src_cost_plan_ver_code)
600      ,DECODE(p_gen_src_rev_plan_type_id,      FND_API.G_MISS_NUM,  NULL,  p_gen_src_rev_plan_type_id)
601      ,DECODE(p_gen_src_rev_plan_version_id,   FND_API.G_MISS_NUM,  NULL,  p_gen_src_rev_plan_version_id)
602      ,DECODE(p_gen_src_rev_plan_ver_code,     FND_API.G_MISS_CHAR, NULL,  p_gen_src_rev_plan_ver_code)
603      ,DECODE(p_gen_src_all_plan_type_id,      FND_API.G_MISS_NUM,  NULL,  p_gen_src_all_plan_type_id)
604      ,DECODE(p_gen_src_all_plan_version_id,   FND_API.G_MISS_NUM,  NULL,  p_gen_src_all_plan_version_id)
605      ,DECODE(p_gen_src_all_plan_ver_code,     FND_API.G_MISS_CHAR, NULL,  p_gen_src_all_plan_ver_code)
606      ,DECODE(p_gen_all_src_code,              FND_API.G_MISS_CHAR, NULL,  p_gen_all_src_code)
607      ,DECODE(p_gen_all_etc_src_code,          FND_API.G_MISS_CHAR, NULL,  p_gen_all_etc_src_code)
608      ,DECODE(p_gen_all_incl_change_doc_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_all_incl_change_doc_flag)
609      ,DECODE(p_gen_all_incl_open_comm_flag,   FND_API.G_MISS_CHAR, NULL,  p_gen_all_incl_open_comm_flag)
613      ,DECODE(p_gn_cst_actual_amts_thru_code,  FND_API.G_MISS_CHAR, NULL,  p_gn_cst_actual_amts_thru_code)
610      ,DECODE(p_gen_all_ret_manual_line_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_all_ret_manual_line_flag)
611      ,DECODE(p_gen_all_incl_bill_event_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_all_incl_bill_event_flag)
612      ,DECODE(p_gn_all_incl_unspent_amt_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_all_incl_unspent_amt_flag)
614      ,DECODE(p_gn_rev_actual_amts_thru_code,  FND_API.G_MISS_CHAR, NULL,  p_gn_rev_actual_amts_thru_code)
615      ,DECODE(p_gn_all_actual_amts_thru_code,  FND_API.G_MISS_CHAR, NULL,  p_gn_all_actual_amts_thru_code)
616      ,DECODE(p_track_workplan_costs_flag,     FND_API.G_MISS_CHAR, NULL,  p_track_workplan_costs_flag)
617      -- bug 3519062 start of workplan gen source related columns
618      ,DECODE(p_gen_src_cost_wp_version_id,   FND_API.G_MISS_NUM,  NULL,  p_gen_src_cost_wp_version_id)
619      ,DECODE(p_gen_src_cost_wp_ver_code,     FND_API.G_MISS_CHAR, NULL,  p_gen_src_cost_wp_ver_code)
620      ,DECODE(p_gen_src_rev_wp_version_id,    FND_API.G_MISS_NUM,  NULL,  p_gen_src_rev_wp_version_id)
621      ,DECODE(p_gen_src_rev_wp_ver_code,      FND_API.G_MISS_CHAR, NULL,  p_gen_src_rev_wp_ver_code)
622      ,DECODE(p_gen_src_all_wp_version_id,    FND_API.G_MISS_NUM,  NULL,  p_gen_src_all_wp_version_id)
623      ,DECODE(p_gen_src_all_wp_ver_code,      FND_API.G_MISS_CHAR, NULL,  p_gen_src_all_wp_ver_code)
624      ,DECODE(p_cost_layout_code       ,      FND_API.G_MISS_CHAR, NULL,  p_cost_layout_code)
625      ,DECODE(p_revenue_layout_code,          FND_API.G_MISS_CHAR, NULL,  p_revenue_layout_code)
626      ,DECODE(p_all_layout_code,          FND_API.G_MISS_CHAR, NULL,  p_all_layout_code)
627      -- bug 3519062 end of workplan gen source related columns
628     ,DECODE(p_revenue_derivation_method,FND_API.G_MISS_CHAR,NULL,p_revenue_derivation_method) -- Bug 5462471
629     ,DECODE(p_copy_etc_from_plan_flag,FND_API.G_MISS_CHAR,NULL,p_copy_etc_from_plan_flag) --bug 8318932
630     ,DECODE(p_default_raw_cost,FND_API.G_MISS_NUM,NULL,p_default_raw_cost) --CBS
631     ,DECODE(p_default_bill_rate,FND_API.G_MISS_NUM,NULL,p_default_bill_rate) --CBS
632     ,DECODE(p_def_markup_percentage,FND_API.G_MISS_NUM,NULL,p_def_markup_percentage) --CBS
633     ,DECODE(p_def_raw_cost_currency_code,FND_API.G_MISS_CHAR,NULL,p_def_raw_cost_currency_code) --CBS
634     ,DECODE(p_def_bill_rate_currency_code,FND_API.G_MISS_CHAR,NULL,p_def_bill_rate_currency_code) --CBS
635 );
636 
637 EXCEPTION
638   WHEN OTHERS THEN
639        FND_MSG_PUB.add_exc_msg( p_pkg_name
640                                 => 'PA_PROJ_FP_OPTIONS_PKG'
641                                ,p_procedure_name
642                                 => 'Insert_Row');
643        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
644        RAISE;
645 END Insert_Row;
646 
647 
648 
649 PROCEDURE Update_Row
650 ( p_proj_fp_options_id
651     IN pa_proj_fp_options.proj_fp_options_id%TYPE := FND_API.G_MISS_NUM
652  ,p_record_version_number
653     IN NUMBER                                     := NULL
654  ,p_project_id
655     IN pa_proj_fp_options.project_id%TYPE := FND_API.G_MISS_NUM
656  ,p_fin_plan_option_level_code
657     IN pa_proj_fp_options.fin_plan_option_level_code%TYPE := FND_API.G_MISS_CHAR
658  ,p_fin_plan_type_id
659     IN pa_proj_fp_options.fin_plan_type_id%TYPE := FND_API.G_MISS_NUM
660  ,p_fin_plan_start_date
661     IN pa_proj_fp_options.fin_plan_start_date%TYPE := FND_API.G_MISS_DATE
662  ,p_fin_plan_end_date
663     IN pa_proj_fp_options.fin_plan_end_date%TYPE := FND_API.G_MISS_DATE
664  ,p_fin_plan_preference_code
665     IN pa_proj_fp_options.fin_plan_preference_code%TYPE := FND_API.G_MISS_CHAR
666  ,p_cost_amount_set_id
667     IN pa_proj_fp_options.cost_amount_set_id%TYPE := FND_API.G_MISS_NUM
668  ,p_revenue_amount_set_id
669     IN pa_proj_fp_options.revenue_amount_set_id%TYPE := FND_API.G_MISS_NUM
670  ,p_all_amount_set_id
671     IN pa_proj_fp_options.all_amount_set_id%TYPE := FND_API.G_MISS_NUM
672  ,p_cost_fin_plan_level_code
673     IN pa_proj_fp_options.cost_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
674  ,p_cost_time_phased_code
675     IN pa_proj_fp_options.cost_time_phased_code%TYPE := FND_API.G_MISS_CHAR
676  ,p_cost_resource_list_id
677     IN pa_proj_fp_options.cost_resource_list_id%TYPE := FND_API.G_MISS_NUM
678  ,p_revenue_fin_plan_level_code
679     IN pa_proj_fp_options.revenue_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
680  ,p_revenue_time_phased_code
681     IN pa_proj_fp_options.revenue_time_phased_code%TYPE := FND_API.G_MISS_CHAR
682  ,p_revenue_resource_list_id
683     IN pa_proj_fp_options.revenue_resource_list_id%TYPE := FND_API.G_MISS_NUM
684  ,p_all_fin_plan_level_code
685     IN pa_proj_fp_options.all_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
686  ,p_all_time_phased_code
687     IN pa_proj_fp_options.all_time_phased_code%TYPE := FND_API.G_MISS_CHAR
688  ,p_all_resource_list_id
689     IN pa_proj_fp_options.all_resource_list_id%TYPE := FND_API.G_MISS_NUM
690  ,p_report_labor_hrs_from_code
691     IN pa_proj_fp_options.report_labor_hrs_from_code%TYPE := FND_API.G_MISS_CHAR
692  ,p_fin_plan_version_id
693     IN pa_proj_fp_options.fin_plan_version_id%TYPE := FND_API.G_MISS_NUM
694 /* added for financial planning */
695  ,p_plan_in_multi_curr_flag
696     IN pa_proj_fp_options.plan_in_multi_curr_flag%TYPE      := FND_API.G_MISS_CHAR
697  ,p_factor_by_code
698     IN pa_proj_fp_options.factor_by_code%TYPE               := FND_API.G_MISS_CHAR
699  ,p_default_amount_type_code
700     IN pa_proj_fp_options.default_amount_type_code%TYPE     := FND_API.G_MISS_CHAR
701  ,p_default_amount_subtype_code
702     IN pa_proj_fp_options.default_amount_subtype_code%TYPE  := FND_API.G_MISS_CHAR
703  ,p_approved_cost_plan_type_flag
704     IN pa_proj_fp_options.approved_cost_plan_type_flag%TYPE := FND_API.G_MISS_CHAR
705  ,p_approved_rev_plan_type_flag
706     IN pa_proj_fp_options.approved_rev_plan_type_flag%TYPE  := FND_API.G_MISS_CHAR
707  ,p_projfunc_cost_rate_type
708     IN pa_proj_fp_options.projfunc_cost_rate_type%TYPE      := FND_API.G_MISS_CHAR
712     IN pa_proj_fp_options.projfunc_cost_rate_date%TYPE      := FND_API.G_MISS_DATE
709  ,p_projfunc_cost_rate_date_type
710     IN pa_proj_fp_options.projfunc_cost_rate_date_type%TYPE := FND_API.G_MISS_CHAR
711  ,p_projfunc_cost_rate_date
713  ,p_projfunc_rev_rate_type
714     IN pa_proj_fp_options.projfunc_rev_rate_type%TYPE       := FND_API.G_MISS_CHAR
715  ,p_projfunc_rev_rate_date_type
716     IN pa_proj_fp_options.projfunc_rev_rate_date_type%TYPE  := FND_API.G_MISS_CHAR
717  ,p_projfunc_rev_rate_date
718     IN pa_proj_fp_options.projfunc_rev_rate_date%TYPE       := FND_API.G_MISS_DATE
719  ,p_project_cost_rate_type
720     IN pa_proj_fp_options.project_cost_rate_type%TYPE       := FND_API.G_MISS_CHAR
721  ,p_project_cost_rate_date_type
722     IN pa_proj_fp_options.project_cost_rate_date_type%TYPE  := FND_API.G_MISS_CHAR
723  ,p_project_cost_rate_date
724     IN pa_proj_fp_options.project_cost_rate_date%TYPE       := FND_API.G_MISS_DATE
725  ,p_project_rev_rate_type
726     IN pa_proj_fp_options.project_rev_rate_type%TYPE        := FND_API.G_MISS_CHAR
727  ,p_project_rev_rate_date_type
728     IN pa_proj_fp_options.project_rev_rate_date_type%TYPE   := FND_API.G_MISS_CHAR
729  ,p_project_rev_rate_date
730     IN pa_proj_fp_options.project_rev_rate_date%TYPE        := FND_API.G_MISS_DATE
731  ,p_margin_derived_from_code
732     IN pa_proj_fp_options.margin_derived_from_code%TYPE     := FND_API.G_MISS_CHAR
733 /* ended additions for fin plan */
734 /* Bug 2920954 start of additional parameters for post FP-k one off */
735  ,p_select_cost_res_auto_flag
736      IN pa_proj_fp_options.select_cost_res_auto_flag%TYPE   := FND_API.G_MISS_CHAR
737  ,p_cost_res_planning_level
738      IN pa_proj_fp_options.cost_res_planning_level%TYPE     := FND_API.G_MISS_CHAR
739  ,p_select_rev_res_auto_flag
740      IN pa_proj_fp_options.select_rev_res_auto_flag%TYPE    := FND_API.G_MISS_CHAR
741  ,p_revenue_res_planning_level
742      IN pa_proj_fp_options.revenue_res_planning_level%TYPE  := FND_API.G_MISS_CHAR
743  ,p_select_all_res_auto_flag
744      IN pa_proj_fp_options.select_all_res_auto_flag%TYPE    := FND_API.G_MISS_CHAR
745  ,p_all_res_planning_level
746      IN pa_proj_fp_options.all_res_planning_level%TYPE      := FND_API.G_MISS_CHAR
747 /* Bug 2920954 end of additional parameters for post FP-k one off */
748  ,p_primary_cost_forecast_flag
749     IN PA_PROJ_FP_OPTIONS.primary_cost_forecast_flag%TYPE   := FND_API.G_MISS_CHAR
750  ,p_primary_rev_forecast_flag
751     IN PA_PROJ_FP_OPTIONS.primary_rev_forecast_flag%TYPE    := FND_API.G_MISS_CHAR
752  ,p_use_planning_rates_flag
753     IN PA_PROJ_FP_OPTIONS.use_planning_rates_flag%TYPE      := FND_API.G_MISS_CHAR
754  ,p_rbs_version_id
755     IN PA_PROJ_FP_OPTIONS.rbs_version_id%TYPE               := FND_API.G_MISS_NUM
756  ,p_res_class_raw_cost_sch_id
757     IN PA_PROJ_FP_OPTIONS.res_class_raw_cost_sch_id%TYPE    := FND_API.G_MISS_NUM
758  ,p_res_class_bill_rate_sch_id
759     IN PA_PROJ_FP_OPTIONS.res_class_bill_rate_sch_id%TYPE   := FND_API.G_MISS_NUM
760  ,p_cost_emp_rate_sch_id
761     IN PA_PROJ_FP_OPTIONS.cost_emp_rate_sch_id%TYPE         := FND_API.G_MISS_NUM
762  ,p_cost_job_rate_sch_id
763     IN PA_PROJ_FP_OPTIONS.cost_job_rate_sch_id%TYPE         := FND_API.G_MISS_NUM
764  ,P_CST_NON_LABR_RES_RATE_SCH_ID
765     IN PA_PROJ_FP_OPTIONS.cost_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
766  ,p_cost_res_class_rate_sch_id
767     IN PA_PROJ_FP_OPTIONS.cost_res_class_rate_sch_id%TYPE   := FND_API.G_MISS_NUM
768  ,p_cost_burden_rate_sch_id
769     IN PA_PROJ_FP_OPTIONS.cost_burden_rate_sch_id%TYPE      := FND_API.G_MISS_NUM
770  ,p_cost_current_planning_period
771     IN PA_PROJ_FP_OPTIONS.cost_current_planning_period%TYPE := FND_API.G_MISS_CHAR
772  ,p_cost_period_mask_id
773     IN PA_PROJ_FP_OPTIONS.cost_period_mask_id%TYPE          := FND_API.G_MISS_NUM
774  ,p_rev_emp_rate_sch_id
775     IN PA_PROJ_FP_OPTIONS.rev_emp_rate_sch_id%TYPE          := FND_API.G_MISS_NUM
776  ,p_rev_job_rate_sch_id
777     IN PA_PROJ_FP_OPTIONS.rev_job_rate_sch_id%TYPE          := FND_API.G_MISS_NUM
778  ,P_REV_NON_LABR_RES_RATE_SCH_ID
779     IN PA_PROJ_FP_OPTIONS.rev_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
780  ,p_rev_res_class_rate_sch_id
781     IN PA_PROJ_FP_OPTIONS.rev_res_class_rate_sch_id%TYPE    := FND_API.G_MISS_NUM
782  ,p_rev_current_planning_period
783     IN PA_PROJ_FP_OPTIONS.rev_current_planning_period%TYPE  := FND_API.G_MISS_CHAR
784  ,p_rev_period_mask_id
785     IN PA_PROJ_FP_OPTIONS.rev_period_mask_id%TYPE           := FND_API.G_MISS_NUM
786  /** Bug 3580727 Columns have been dropped
787      ,p_all_emp_rate_sch_id
788         IN PA_PROJ_FP_OPTIONS.all_emp_rate_sch_id%TYPE          := FND_API.G_MISS_NUM
789      ,p_all_job_rate_sch_id
790         IN PA_PROJ_FP_OPTIONS.all_job_rate_sch_id%TYPE          := FND_API.G_MISS_NUM
791      ,P_ALL_NON_LABR_RES_RATE_SCH_ID
792         IN PA_PROJ_FP_OPTIONS.all_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
793      ,p_all_res_class_rate_sch_id
794         IN PA_PROJ_FP_OPTIONS.all_res_class_rate_sch_id%TYPE    := FND_API.G_MISS_NUM
795      ,p_all_burden_rate_sch_id
796         IN PA_PROJ_FP_OPTIONS.all_burden_rate_sch_id%TYPE       := FND_API.G_MISS_NUM
797  **/
798  ,p_all_current_planning_period
799     IN PA_PROJ_FP_OPTIONS.all_current_planning_period%TYPE  := FND_API.G_MISS_CHAR
800  ,p_all_period_mask_id
801     IN PA_PROJ_FP_OPTIONS.all_period_mask_id%TYPE           := FND_API.G_MISS_NUM
802  ,p_gen_cost_src_code
803     IN PA_PROJ_FP_OPTIONS.gen_cost_src_code%TYPE            := FND_API.G_MISS_CHAR
804  ,p_gen_cost_etc_src_code
805     IN PA_PROJ_FP_OPTIONS.gen_cost_etc_src_code%TYPE        := FND_API.G_MISS_CHAR
806  ,P_GN_COST_INCL_CHANGE_DOC_FLAG
807     IN PA_PROJ_FP_OPTIONS.gen_cost_incl_change_doc_flag%TYPE  := FND_API.G_MISS_CHAR
808  ,p_gen_cost_incl_open_comm_flag
809     IN PA_PROJ_FP_OPTIONS.gen_cost_incl_open_comm_flag%TYPE   := FND_API.G_MISS_CHAR
810  ,P_GN_COST_RET_MANUAL_LINE_FLAG
811     IN PA_PROJ_FP_OPTIONS.gen_cost_ret_manual_line_flag%TYPE  := FND_API.G_MISS_CHAR
815     IN PA_PROJ_FP_OPTIONS.gen_rev_src_code%TYPE             := FND_API.G_MISS_CHAR
812  ,P_GN_CST_INCL_UNSPENT_AMT_FLAG
813     IN PA_PROJ_FP_OPTIONS.gen_cost_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
814  ,p_gen_rev_src_code
816  ,p_gen_rev_etc_src_code
817     IN PA_PROJ_FP_OPTIONS.gen_rev_etc_src_code%TYPE         := FND_API.G_MISS_CHAR
818  ,p_gen_rev_incl_change_doc_flag
819     IN PA_PROJ_FP_OPTIONS.gen_rev_incl_change_doc_flag%TYPE := FND_API.G_MISS_CHAR
820  ,p_gen_rev_incl_bill_event_flag
821     IN PA_PROJ_FP_OPTIONS.gen_rev_incl_bill_event_flag%TYPE := FND_API.G_MISS_CHAR
822  ,p_gen_rev_ret_manual_line_flag
823     IN PA_PROJ_FP_OPTIONS.gen_rev_ret_manual_line_flag%TYPE := FND_API.G_MISS_CHAR
824  /** Bug 3580727
825      ,P_GN_REV_INCL_UNSPENT_AMT_FLAG
826         IN PA_PROJ_FP_OPTIONS.gen_rev_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
827  **/
828  ,p_gen_src_cost_plan_type_id
829     IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_type_id%TYPE    := FND_API.G_MISS_NUM
830  ,p_gen_src_cost_plan_version_id
831     IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_version_id%TYPE := FND_API.G_MISS_NUM
832  ,p_gen_src_cost_plan_ver_code
833     IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_ver_code%TYPE   := FND_API.G_MISS_CHAR
834  ,p_gen_src_rev_plan_type_id
835     IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_type_id%TYPE     := FND_API.G_MISS_NUM
836  ,p_gen_src_rev_plan_version_id
837     IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_version_id%TYPE  := FND_API.G_MISS_NUM
838  ,p_gen_src_rev_plan_ver_code
839     IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_ver_code%TYPE    := FND_API.G_MISS_CHAR
840  ,p_gen_src_all_plan_type_id
841     IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_type_id%TYPE     := FND_API.G_MISS_NUM
842  ,p_gen_src_all_plan_version_id
843     IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_version_id%TYPE  := FND_API.G_MISS_NUM
844  ,p_gen_src_all_plan_ver_code
845     IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_ver_code%TYPE    := FND_API.G_MISS_CHAR
846  ,p_gen_all_src_code
847     IN PA_PROJ_FP_OPTIONS.gen_all_src_code%TYPE             := FND_API.G_MISS_CHAR
848  ,p_gen_all_etc_src_code
849     IN PA_PROJ_FP_OPTIONS.gen_all_etc_src_code%TYPE         := FND_API.G_MISS_CHAR
850  ,p_gen_all_incl_change_doc_flag
851     IN PA_PROJ_FP_OPTIONS.gen_all_incl_change_doc_flag%TYPE := FND_API.G_MISS_CHAR
852  ,p_gen_all_incl_open_comm_flag
853     IN PA_PROJ_FP_OPTIONS.gen_all_incl_open_comm_flag%TYPE  := FND_API.G_MISS_CHAR
854  ,p_gen_all_ret_manual_line_flag
855     IN PA_PROJ_FP_OPTIONS.gen_all_ret_manual_line_flag%TYPE := FND_API.G_MISS_CHAR
856  ,p_gen_all_incl_bill_event_flag
857     IN PA_PROJ_FP_OPTIONS.gen_all_incl_bill_event_flag%TYPE := FND_API.G_MISS_CHAR
858  ,P_GN_ALL_INCL_UNSPENT_AMT_FLAG
859     IN PA_PROJ_FP_OPTIONS.gen_all_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
860  ,P_GN_CST_ACTUAL_AMTS_THRU_CODE
861     IN PA_PROJ_FP_OPTIONS.gen_cost_actual_amts_thru_code%TYPE := FND_API.G_MISS_CHAR
862  ,P_GN_REV_ACTUAL_AMTS_THRU_CODE
863     IN PA_PROJ_FP_OPTIONS.gen_rev_actual_amts_thru_code%TYPE  := FND_API.G_MISS_CHAR
864  ,P_GN_ALL_ACTUAL_AMTS_THRU_CODE
865     IN PA_PROJ_FP_OPTIONS.gen_all_actual_amts_thru_code%TYPE  := FND_API.G_MISS_CHAR
866  ,p_track_workplan_costs_flag
867      IN PA_PROJ_FP_OPTIONS.track_workplan_costs_flag%TYPE     := FND_API.G_MISS_CHAR
868  -- bug 3519062 start of workplan gen source related columns
869  ,p_gen_src_cost_wp_version_id
870      IN PA_PROJ_FP_OPTIONS.gen_src_cost_wp_version_id%TYPE := FND_API.G_MISS_NUM
871  ,p_gen_src_cost_wp_ver_code
872      IN PA_PROJ_FP_OPTIONS.gen_src_cost_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
873  ,p_gen_src_rev_wp_version_id
874      IN PA_PROJ_FP_OPTIONS.gen_src_rev_wp_version_id%TYPE := FND_API.G_MISS_NUM
875  ,p_gen_src_rev_wp_ver_code
876      IN PA_PROJ_FP_OPTIONS.gen_src_rev_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
877  ,p_gen_src_all_wp_version_id
878      IN PA_PROJ_FP_OPTIONS.gen_src_all_wp_version_id%TYPE := FND_API.G_MISS_NUM
879  ,p_gen_src_all_wp_ver_code
880      IN PA_PROJ_FP_OPTIONS.gen_src_all_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
881  -- bug 3519062 end of workplan gen source related columns
882 
883  --Added for webAdi changes for the amount types to be displayed
884  ,p_cost_layout_code
885      IN PA_PROJ_FP_OPTIONS.cost_layout_code%TYPE := FND_API.G_MISS_CHAR
886  ,p_revenue_layout_code
887      IN PA_PROJ_FP_OPTIONS.revenue_layout_code%TYPE := FND_API.G_MISS_CHAR
888  ,p_all_layout_code
889      IN PA_PROJ_FP_OPTIONS.all_layout_code%TYPE := FND_API.G_MISS_CHAR
890  ,p_revenue_derivation_method
891         IN PA_PROJ_FP_OPTIONS.revenue_derivation_method%TYPE := FND_API.G_MISS_CHAR --Bug 5462471
892  , p_copy_etc_from_plan_flag
893         IN PA_PROJ_FP_OPTIONS.copy_etc_from_plan_flag%TYPE := FND_API.G_MISS_CHAR  --bug 8318932
894  , p_default_raw_cost
895         IN PA_PROJ_FP_OPTIONS.default_raw_cost%TYPE := FND_API.G_MISS_NUM  --CBS
896  , p_default_bill_rate
897         IN PA_PROJ_FP_OPTIONS.default_bill_rate%TYPE := FND_API.G_MISS_NUM  --CBS
898  , p_def_markup_percentage
899         IN PA_PROJ_FP_OPTIONS.def_markup_percentage%TYPE := FND_API.G_MISS_NUM   --CBS
900  , p_def_raw_cost_currency_code
901         IN PA_PROJ_FP_OPTIONS.def_raw_cost_currency_code%TYPE := FND_API.G_MISS_CHAR  --CBS
902  , p_def_bill_rate_currency_code
903         IN PA_PROJ_FP_OPTIONS.def_bill_rate_currency_code%TYPE := FND_API.G_MISS_CHAR  --CBS
904  ,p_row_id
905     IN ROWID                                                  := NULL
906  ,x_return_status                 OUT NOCOPY VARCHAR2)  --File.Sql.39 bug 4440895
907 IS
908 BEGIN
909  x_return_status := FND_API.G_RET_STS_SUCCESS;
910 
911  UPDATE pa_proj_fp_options
912  SET
913   record_version_number = nvl(record_version_number,0) +1
914  ,project_id = DECODE( p_project_id, FND_API.G_MISS_NUM, project_id,
915                                    p_project_id)
916  ,fin_plan_option_level_code = DECODE( p_fin_plan_option_level_code,
917                                                                    FND_API.G_MISS_CHAR,
921                                             fin_plan_type_id, p_fin_plan_type_id)
918                                            fin_plan_option_level_code,
919                                            p_fin_plan_option_level_code)
920  ,fin_plan_type_id = DECODE( p_fin_plan_type_id, FND_API.G_MISS_NUM,
922  ,fin_plan_start_date   = DECODE( p_fin_plan_start_date, FND_API.G_MISS_DATE,
923                                                     fin_plan_start_date,
924                                   p_fin_plan_start_date)
925  ,fin_plan_end_date   = DECODE( p_fin_plan_end_date, FND_API.G_MISS_DATE,
926                                                   fin_plan_end_date, p_fin_plan_end_date)
927  ,fin_plan_preference_code = DECODE( p_fin_plan_preference_code,
928                                                                  FND_API.G_MISS_CHAR,
929                                          fin_plan_preference_code,
930                                          p_fin_plan_preference_code)
931  ,cost_amount_set_id = DECODE( p_cost_amount_set_id, FND_API.G_MISS_NUM,
932                                                  cost_amount_set_id, p_cost_amount_set_id)
933  ,revenue_amount_set_id = DECODE( p_revenue_amount_set_id, FND_API.G_MISS_NUM,
934                                                     revenue_amount_set_id,
935                                   p_revenue_amount_set_id)
936  ,all_amount_set_id = DECODE( p_all_amount_set_id, FND_API.G_MISS_NUM,
937                                                 all_amount_set_id, p_all_amount_set_id)
938  ,cost_fin_plan_level_code = DECODE( p_cost_fin_plan_level_code,
939                                                           FND_API.G_MISS_CHAR,
940                                      cost_fin_plan_level_code,
941                                      p_cost_fin_plan_level_code)
942  ,cost_time_phased_code = DECODE( p_cost_time_phased_code, FND_API.G_MISS_CHAR,
943                                                     cost_time_phased_code,
944                                   p_cost_time_phased_code)
945  ,cost_resource_list_id = DECODE( p_cost_resource_list_id, FND_API.G_MISS_NUM,
946                                                     cost_resource_list_id,
947                                   p_cost_resource_list_id)
948  ,revenue_fin_plan_level_code = DECODE( p_revenue_fin_plan_level_code,
949                                                                 FND_API.G_MISS_CHAR,
950                                         revenue_fin_plan_level_code,
951                                         p_revenue_fin_plan_level_code)
952  ,revenue_time_phased_code = DECODE( p_revenue_time_phased_code,
953                                                           FND_API.G_MISS_CHAR,
954                                      revenue_time_phased_code,
955                                      p_revenue_time_phased_code)
956  ,revenue_resource_list_id = DECODE( p_revenue_resource_list_id,
957                                                           FND_API.G_MISS_NUM,
958                                      revenue_resource_list_id,
959                                      p_revenue_resource_list_id)
960  ,all_fin_plan_level_code = DECODE( p_all_fin_plan_level_code,
961                                                          FND_API.G_MISS_CHAR,
962                                     all_fin_plan_level_code,
963                                     p_all_fin_plan_level_code)
964  ,all_time_phased_code = DECODE( p_all_time_phased_code, FND_API.G_MISS_CHAR,
965                                                    all_time_phased_code, p_all_time_phased_code)
966  ,all_resource_list_id = DECODE( p_all_resource_list_id, FND_API.G_MISS_NUM,
967                                                    all_resource_list_id, p_all_resource_list_id)
968  ,report_labor_hrs_from_code = DECODE( p_report_labor_hrs_from_code,
969                                                                 FND_API.G_MISS_CHAR,
970                                         report_labor_hrs_from_code,
971                                         p_report_labor_hrs_from_code)
972  ,fin_plan_version_id = DECODE( p_fin_plan_version_id, FND_API.G_MISS_NUM,
973                                                  fin_plan_version_id, p_fin_plan_version_id)
974  ,plan_in_multi_curr_flag          = DECODE(p_plan_in_multi_curr_flag         ,
975                 FND_API.G_MISS_CHAR  ,plan_in_multi_curr_flag, p_plan_in_multi_curr_flag )
976  ,factor_by_code                   = DECODE(p_factor_by_code                  ,
977                 FND_API.G_MISS_CHAR  ,factor_by_code ,p_factor_by_code)
978  ,default_amount_type_code         = DECODE(p_default_amount_type_code        ,
979                 FND_API.G_MISS_CHAR,default_amount_type_code, p_default_amount_type_code)
980  ,default_amount_subtype_code      = DECODE(p_default_amount_subtype_code     ,
981                 FND_API.G_MISS_CHAR,default_amount_subtype_code, p_default_amount_subtype_code      )
982  ,approved_cost_plan_type_flag     = DECODE(p_approved_cost_plan_type_flag    ,
983                 FND_API.G_MISS_CHAR,approved_cost_plan_type_flag, p_approved_cost_plan_type_flag     )
984  ,approved_rev_plan_type_flag      = DECODE(p_approved_rev_plan_type_flag     ,
985                 FND_API.G_MISS_CHAR,approved_rev_plan_type_flag, p_approved_rev_plan_type_flag      )
986  ,projfunc_cost_rate_type          = DECODE(p_projfunc_cost_rate_type         ,
987                 FND_API.G_MISS_CHAR,projfunc_cost_rate_type,p_projfunc_cost_rate_type          )
988  ,projfunc_cost_rate_date_type     = DECODE(p_projfunc_cost_rate_date_type    ,
989                 FND_API.G_MISS_CHAR,projfunc_cost_rate_date_type, p_projfunc_cost_rate_date_type     )
990  ,projfunc_cost_rate_date          = DECODE(p_projfunc_cost_rate_date         ,
991                 FND_API.G_MISS_DATE,projfunc_cost_rate_date, p_projfunc_cost_rate_date          )
992  ,projfunc_rev_rate_type           = DECODE(p_projfunc_rev_rate_type          ,
993                 FND_API.G_MISS_CHAR,projfunc_rev_rate_type, p_projfunc_rev_rate_type           )
994  ,projfunc_rev_rate_date_type      = DECODE(p_projfunc_rev_rate_date_type     ,
995                 FND_API.G_MISS_CHAR,projfunc_rev_rate_date_type, p_projfunc_rev_rate_date_type      )
999                 FND_API.G_MISS_CHAR,project_cost_rate_type, p_project_cost_rate_type           )
996  ,projfunc_rev_rate_date           = DECODE(p_projfunc_rev_rate_date          ,
997                 FND_API.G_MISS_DATE,projfunc_rev_rate_date, p_projfunc_rev_rate_date           )
998  ,project_cost_rate_type           = DECODE(p_project_cost_rate_type          ,
1000  ,project_cost_rate_date_type      = DECODE(p_project_cost_rate_date_type     ,
1001                 FND_API.G_MISS_CHAR,project_cost_rate_date_type, p_project_cost_rate_date_type      )
1002  ,project_cost_rate_date           = DECODE(p_project_cost_rate_date          ,
1003                 FND_API.G_MISS_DATE,project_cost_rate_date, p_project_cost_rate_date           )
1004  ,project_rev_rate_type            = DECODE(p_project_rev_rate_type           ,
1005                 FND_API.G_MISS_CHAR,project_rev_rate_type, p_project_rev_rate_type            )
1006  ,project_rev_rate_date_type       = DECODE(p_project_rev_rate_date_type      ,
1007                 FND_API.G_MISS_CHAR,project_rev_rate_date_type, p_project_rev_rate_date_type       )
1008  ,project_rev_rate_date            = DECODE(p_project_rev_rate_date           ,
1009                 FND_API.G_MISS_DATE,project_rev_rate_date, p_project_rev_rate_date            )
1010  ,margin_derived_from_code         = DECODE(p_margin_derived_from_code        ,
1011                 FND_API.G_MISS_CHAR,margin_derived_from_code, p_margin_derived_from_code         )
1012  ,select_cost_res_auto_flag        = DECODE( p_select_cost_res_auto_flag      ,
1013                 FND_API.G_MISS_CHAR, select_cost_res_auto_flag, p_select_cost_res_auto_flag)
1014  ,cost_res_planning_level          = DECODE( p_cost_res_planning_level        ,
1015                 FND_API.G_MISS_CHAR, cost_res_planning_level, p_cost_res_planning_level)
1016  ,select_rev_res_auto_flag         = DECODE( p_select_rev_res_auto_flag       ,
1017                 FND_API.G_MISS_CHAR, select_rev_res_auto_flag, p_select_rev_res_auto_flag)
1018  ,revenue_res_planning_level       = DECODE( p_revenue_res_planning_level     ,
1019                 FND_API.G_MISS_CHAR, revenue_res_planning_level, p_revenue_res_planning_level)
1020  ,select_all_res_auto_flag         = DECODE( p_select_all_res_auto_flag       ,
1021                 FND_API.G_MISS_CHAR, select_all_res_auto_flag, p_select_all_res_auto_flag)
1022  ,all_res_planning_level           = DECODE( p_all_res_planning_level         ,
1023                 FND_API.G_MISS_CHAR, all_res_planning_level, p_all_res_planning_level)
1024  ,last_update_date = sysdate
1025  ,last_updated_by = fnd_global.user_id
1026  ,last_update_login = fnd_global.login_id
1027  ,primary_cost_forecast_flag       = DECODE(p_primary_cost_forecast_flag,
1028                 FND_API.G_MISS_CHAR, primary_cost_forecast_flag, p_primary_cost_forecast_flag)
1029  ,primary_rev_forecast_flag        = DECODE(p_primary_rev_forecast_flag,
1030                 FND_API.G_MISS_CHAR, primary_rev_forecast_flag, p_primary_rev_forecast_flag)
1031  ,use_planning_rates_flag          = DECODE(p_use_planning_rates_flag,
1032                 FND_API.G_MISS_CHAR, use_planning_rates_flag, p_use_planning_rates_flag)
1033  ,rbs_version_id            = DECODE(p_rbs_version_id,
1034                 FND_API.G_MISS_NUM,  rbs_version_id,  p_rbs_version_id)
1035  ,res_class_raw_cost_sch_id        = DECODE(p_res_class_raw_cost_sch_id,
1036                 FND_API.G_MISS_NUM,  res_class_raw_cost_sch_id, p_res_class_raw_cost_sch_id)
1037  ,res_class_bill_rate_sch_id       = DECODE(p_res_class_bill_rate_sch_id,
1038                 FND_API.G_MISS_NUM,  res_class_bill_rate_sch_id, p_res_class_bill_rate_sch_id)
1039  ,cost_emp_rate_sch_id             = DECODE(p_cost_emp_rate_sch_id,
1040                 FND_API.G_MISS_NUM,  cost_emp_rate_sch_id, p_cost_emp_rate_sch_id)
1041  ,cost_job_rate_sch_id             = DECODE(p_cost_job_rate_sch_id,
1042                 FND_API.G_MISS_NUM,  cost_job_rate_sch_id,  p_cost_job_rate_sch_id)
1043  ,cost_non_labor_res_rate_sch_id   = DECODE(P_CST_NON_LABR_RES_RATE_SCH_ID,
1044                 FND_API.G_MISS_NUM,  cost_non_labor_res_rate_sch_id, P_CST_NON_LABR_RES_RATE_SCH_ID)
1045  ,cost_res_class_rate_sch_id       = DECODE(p_cost_res_class_rate_sch_id,
1046                 FND_API.G_MISS_NUM,  cost_res_class_rate_sch_id, p_cost_res_class_rate_sch_id)
1047  ,cost_burden_rate_sch_id          = DECODE(p_cost_burden_rate_sch_id,
1048                 FND_API.G_MISS_NUM,  cost_burden_rate_sch_id, p_cost_burden_rate_sch_id)
1049  ,cost_current_planning_period     = DECODE(p_cost_current_planning_period,
1050                 FND_API.G_MISS_CHAR, cost_current_planning_period, p_cost_current_planning_period)
1051  ,cost_period_mask_id              = DECODE(p_cost_period_mask_id,
1052                 FND_API.G_MISS_NUM,  cost_period_mask_id, p_cost_period_mask_id)
1053  ,rev_emp_rate_sch_id              = DECODE(p_rev_emp_rate_sch_id,
1054                 FND_API.G_MISS_NUM,  rev_emp_rate_sch_id, p_rev_emp_rate_sch_id)
1055  ,rev_job_rate_sch_id              = DECODE(p_rev_job_rate_sch_id,
1056                 FND_API.G_MISS_NUM,  rev_job_rate_sch_id, p_rev_job_rate_sch_id)
1057  ,rev_non_labor_res_rate_sch_id    = DECODE(P_REV_NON_LABR_RES_RATE_SCH_ID,
1058                 FND_API.G_MISS_NUM,  rev_non_labor_res_rate_sch_id, P_REV_NON_LABR_RES_RATE_SCH_ID)
1059  ,rev_res_class_rate_sch_id        = DECODE(p_rev_res_class_rate_sch_id,
1060                 FND_API.G_MISS_NUM,  rev_res_class_rate_sch_id, p_rev_res_class_rate_sch_id)
1061  ,rev_current_planning_period      = DECODE(p_rev_current_planning_period,
1062                 FND_API.G_MISS_CHAR, rev_current_planning_period, p_rev_current_planning_period)
1063  ,rev_period_mask_id               = DECODE(p_rev_period_mask_id,
1064                 FND_API.G_MISS_NUM,  rev_period_mask_id, p_rev_period_mask_id)
1065  /** Bug 3580727
1066      ,all_emp_rate_sch_id              = DECODE(p_all_emp_rate_sch_id,
1067                     FND_API.G_MISS_NUM,  all_emp_rate_sch_id, p_all_emp_rate_sch_id)
1068      ,all_job_rate_sch_id              = DECODE(p_all_job_rate_sch_id,
1069                     FND_API.G_MISS_NUM,  all_job_rate_sch_id, p_all_job_rate_sch_id)
1070      ,all_non_labor_res_rate_sch_id    = DECODE(P_ALL_NON_LABR_RES_RATE_SCH_ID,
1071                     FND_API.G_MISS_NUM,  all_non_labor_res_rate_sch_id, P_ALL_NON_LABR_RES_RATE_SCH_ID)
1075                     FND_API.G_MISS_NUM,  all_burden_rate_sch_id, p_all_burden_rate_sch_id)
1072      ,all_res_class_rate_sch_id        = DECODE(p_all_res_class_rate_sch_id,
1073                     FND_API.G_MISS_NUM,  all_res_class_rate_sch_id, p_all_res_class_rate_sch_id)
1074      ,all_burden_rate_sch_id           = DECODE(p_all_burden_rate_sch_id,
1076  **/
1077  ,all_current_planning_period      = DECODE(p_all_current_planning_period,
1078                 FND_API.G_MISS_CHAR, all_current_planning_period, p_all_current_planning_period)
1079  ,all_period_mask_id               = DECODE(p_all_period_mask_id,
1080                 FND_API.G_MISS_NUM,  all_period_mask_id,  p_all_period_mask_id)
1081  ,gen_cost_src_code                = DECODE(p_gen_cost_src_code,
1082                 FND_API.G_MISS_CHAR, gen_cost_src_code,  p_gen_cost_src_code)
1083  ,gen_cost_etc_src_code            = DECODE(p_gen_cost_etc_src_code,
1084                 FND_API.G_MISS_CHAR, gen_cost_etc_src_code, p_gen_cost_etc_src_code)
1085  ,gen_cost_incl_change_doc_flag    = DECODE(P_GN_COST_INCL_CHANGE_DOC_FLAG,
1086                 FND_API.G_MISS_CHAR, gen_cost_incl_change_doc_flag, P_GN_COST_INCL_CHANGE_DOC_FLAG)
1087  ,gen_cost_incl_open_comm_flag     = DECODE(p_gen_cost_incl_open_comm_flag,
1088                 FND_API.G_MISS_CHAR, gen_cost_incl_open_comm_flag, p_gen_cost_incl_open_comm_flag)
1089  ,gen_cost_ret_manual_line_flag    = DECODE(P_GN_COST_RET_MANUAL_LINE_FLAG,
1090                 FND_API.G_MISS_CHAR, gen_cost_ret_manual_line_flag, P_GN_COST_RET_MANUAL_LINE_FLAG)
1091  ,gen_cost_incl_unspent_amt_flag   = DECODE(P_GN_CST_INCL_UNSPENT_AMT_FLAG,
1092                 FND_API.G_MISS_CHAR, gen_cost_incl_unspent_amt_flag, P_GN_CST_INCL_UNSPENT_AMT_FLAG)
1093  ,gen_rev_src_code                 = DECODE(p_gen_rev_src_code,
1094                 FND_API.G_MISS_CHAR, gen_rev_src_code, p_gen_rev_src_code)
1095  ,gen_rev_etc_src_code             = DECODE(p_gen_rev_etc_src_code,
1096                 FND_API.G_MISS_CHAR, gen_rev_etc_src_code,  p_gen_rev_etc_src_code)
1097  ,gen_rev_incl_change_doc_flag     = DECODE(p_gen_rev_incl_change_doc_flag,
1098                 FND_API.G_MISS_CHAR, gen_rev_incl_change_doc_flag, p_gen_rev_incl_change_doc_flag)
1099  ,gen_rev_incl_bill_event_flag     = DECODE(p_gen_rev_incl_bill_event_flag,
1100                 FND_API.G_MISS_CHAR, gen_rev_incl_bill_event_flag, p_gen_rev_incl_bill_event_flag)
1101  ,gen_rev_ret_manual_line_flag     = DECODE(p_gen_rev_ret_manual_line_flag,
1102                 FND_API.G_MISS_CHAR, gen_rev_ret_manual_line_flag,  p_gen_rev_ret_manual_line_flag)
1103  /** Bug 3580727
1104      ,gen_rev_incl_unspent_amt_flag    = DECODE(P_GN_REV_INCL_UNSPENT_AMT_FLAG,
1105                     FND_API.G_MISS_CHAR, gen_rev_incl_unspent_amt_flag, P_GN_REV_INCL_UNSPENT_AMT_FLAG)
1106  **/
1107  ,gen_src_cost_plan_type_id        = DECODE(p_gen_src_cost_plan_type_id,
1108                 FND_API.G_MISS_NUM,  gen_src_cost_plan_type_id,  p_gen_src_cost_plan_type_id)
1109  ,gen_src_cost_plan_version_id     = DECODE(p_gen_src_cost_plan_version_id,
1110                 FND_API.G_MISS_NUM, gen_src_cost_plan_version_id, p_gen_src_cost_plan_version_id)
1111  ,gen_src_cost_plan_ver_code       = DECODE(p_gen_src_cost_plan_ver_code,
1112                 FND_API.G_MISS_CHAR, gen_src_cost_plan_ver_code, p_gen_src_cost_plan_ver_code)
1113  ,gen_src_rev_plan_type_id         = DECODE(p_gen_src_rev_plan_type_id,
1114                 FND_API.G_MISS_NUM,  gen_src_rev_plan_type_id, p_gen_src_rev_plan_type_id)
1115  ,gen_src_rev_plan_version_id      = DECODE(p_gen_src_rev_plan_version_id,
1116                 FND_API.G_MISS_NUM,  gen_src_rev_plan_version_id,p_gen_src_rev_plan_version_id)
1117  ,gen_src_rev_plan_ver_code       = DECODE(p_gen_src_rev_plan_ver_code,
1118                 FND_API.G_MISS_CHAR, gen_src_rev_plan_ver_code, p_gen_src_rev_plan_ver_code)
1119  ,gen_src_all_plan_type_id        = DECODE(p_gen_src_all_plan_type_id,
1120                 FND_API.G_MISS_NUM, gen_src_all_plan_type_id, p_gen_src_all_plan_type_id)
1121  ,gen_src_all_plan_version_id     = DECODE(p_gen_src_all_plan_version_id,
1122                 FND_API.G_MISS_NUM, gen_src_all_plan_version_id, p_gen_src_all_plan_version_id)
1123  ,gen_src_all_plan_ver_code       = DECODE(p_gen_src_all_plan_ver_code,
1124                 FND_API.G_MISS_CHAR,gen_src_all_plan_ver_code, p_gen_src_all_plan_ver_code)
1125  ,gen_all_src_code                = DECODE(p_gen_all_src_code,
1126                 FND_API.G_MISS_CHAR,gen_all_src_code, p_gen_all_src_code)
1127  ,gen_all_etc_src_code            = DECODE(p_gen_all_etc_src_code,
1128                 FND_API.G_MISS_CHAR, gen_all_etc_src_code,  p_gen_all_etc_src_code)
1129  ,gen_all_incl_change_doc_flag    = DECODE(p_gen_all_incl_change_doc_flag,
1130                 FND_API.G_MISS_CHAR,gen_all_incl_change_doc_flag, p_gen_all_incl_change_doc_flag)
1131  ,gen_all_incl_open_comm_flag     = DECODE(p_gen_all_incl_open_comm_flag,
1132                 FND_API.G_MISS_CHAR,gen_all_incl_open_comm_flag, p_gen_all_incl_open_comm_flag)
1133  ,gen_all_ret_manual_line_flag    = DECODE(p_gen_all_ret_manual_line_flag,
1134                 FND_API.G_MISS_CHAR,gen_all_ret_manual_line_flag, p_gen_all_ret_manual_line_flag)
1135  ,gen_all_incl_bill_event_flag    = DECODE(p_gen_all_incl_bill_event_flag,
1136                 FND_API.G_MISS_CHAR,gen_all_incl_bill_event_flag, p_gen_all_incl_bill_event_flag)
1137  ,gen_all_incl_unspent_amt_flag   = DECODE(P_GN_ALL_INCL_UNSPENT_AMT_FLAG,
1138                 FND_API.G_MISS_CHAR,gen_all_incl_unspent_amt_flag, P_GN_ALL_INCL_UNSPENT_AMT_FLAG)
1139  ,gen_cost_actual_amts_thru_code  = DECODE(P_GN_CST_ACTUAL_AMTS_THRU_CODE,
1140                 FND_API.G_MISS_CHAR,gen_cost_actual_amts_thru_code, P_GN_CST_ACTUAL_AMTS_THRU_CODE)
1141  ,gen_rev_actual_amts_thru_code   = DECODE(P_GN_REV_ACTUAL_AMTS_THRU_CODE,
1142                 FND_API.G_MISS_CHAR,gen_rev_actual_amts_thru_code, P_GN_REV_ACTUAL_AMTS_THRU_CODE)
1143  ,gen_all_actual_amts_thru_code   = DECODE(P_GN_ALL_ACTUAL_AMTS_THRU_CODE,
1144                 FND_API.G_MISS_CHAR,gen_all_actual_amts_thru_code, P_GN_ALL_ACTUAL_AMTS_THRU_CODE)
1145  ,track_workplan_costs_flag      = DECODE(p_track_workplan_costs_flag,
1146                 FND_API.G_MISS_CHAR,track_workplan_costs_flag, p_track_workplan_costs_flag)
1147  -- bug 3519062 start of workplan generation source related columns
1151                 FND_API.G_MISS_CHAR,gen_src_cost_wp_ver_code, p_gen_src_cost_wp_ver_code)
1148  ,gen_src_cost_wp_version_id     = DECODE(p_gen_src_cost_wp_version_id,
1149                 FND_API.G_MISS_NUM, gen_src_cost_wp_version_id, p_gen_src_cost_wp_version_id)
1150  ,gen_src_cost_wp_ver_code       = DECODE(p_gen_src_cost_wp_ver_code,
1152  ,gen_src_rev_wp_version_id     = DECODE(p_gen_src_rev_wp_version_id,
1153                 FND_API.G_MISS_NUM, gen_src_rev_wp_version_id, p_gen_src_rev_wp_version_id)
1154  ,gen_src_rev_wp_ver_code       = DECODE(p_gen_src_rev_wp_ver_code,
1155                 FND_API.G_MISS_CHAR,gen_src_rev_wp_ver_code, p_gen_src_rev_wp_ver_code)
1156  ,gen_src_all_wp_version_id     = DECODE(p_gen_src_all_wp_version_id,
1157                 FND_API.G_MISS_NUM, gen_src_all_wp_version_id, p_gen_src_all_wp_version_id)
1158  ,gen_src_all_wp_ver_code       = DECODE(p_gen_src_all_wp_ver_code,
1159                 FND_API.G_MISS_CHAR,gen_src_all_wp_ver_code, p_gen_src_all_wp_ver_code)
1160  -- bug 3519062 start of workplan generation source related columns
1161 ,cost_layout_code              = DECODE(p_cost_layout_code,
1162                 FND_API.G_MISS_CHAR, cost_layout_code, p_cost_layout_code)
1163 ,revenue_layout_code              = DECODE(p_revenue_layout_code,
1164                 FND_API.G_MISS_CHAR, revenue_layout_code, p_revenue_layout_code)
1165 ,all_layout_code              = DECODE(p_all_layout_code,
1166                 FND_API.G_MISS_CHAR, all_layout_code, p_all_layout_code)
1167 ,revenue_derivation_method    = DECODE(p_revenue_derivation_method,
1168                    FND_API.G_MISS_CHAR, revenue_derivation_method,p_revenue_derivation_method) -- Bug 5462471
1169 ,copy_etc_from_plan_flag    = DECODE(p_copy_etc_from_plan_flag,
1170                    FND_API.G_MISS_CHAR, copy_etc_from_plan_flag,p_copy_etc_from_plan_flag) -- bug 8318932
1171 ,default_raw_cost = DECODE(p_default_raw_cost,
1172                    FND_API.G_MISS_NUM, default_raw_cost,p_default_raw_cost) --CBS
1173 ,default_bill_rate = DECODE(p_default_bill_rate,
1174                    FND_API.G_MISS_NUM, default_bill_rate,p_default_bill_rate) --CBS
1175 ,def_markup_percentage = DECODE(p_def_markup_percentage,
1176                    FND_API.G_MISS_NUM, def_markup_percentage,p_def_markup_percentage) --CBS
1177 ,def_raw_cost_currency_code = DECODE(p_def_raw_cost_currency_code,
1178                    FND_API.G_MISS_CHAR, def_raw_cost_currency_code,p_def_raw_cost_currency_code) --CBS
1179 ,def_bill_rate_currency_code = DECODE(p_def_bill_rate_currency_code,
1180                    FND_API.G_MISS_CHAR, def_bill_rate_currency_code,p_def_bill_rate_currency_code) --CBS
1181   WHERE proj_fp_options_id = p_proj_fp_options_id
1182    AND nvl(p_record_version_number, nvl(record_version_number,0)) =
1183                                     nvl(record_version_number,0);
1184 
1185     IF (SQL%NOTFOUND) THEN
1186          PA_UTILS.Add_Message ( p_app_short_name => 'PA'
1187                                ,p_msg_name       => 'PA_XC_RECORD_CHANGED');
1188          x_return_status := FND_API.G_RET_STS_ERROR;
1189     END IF;
1190 EXCEPTION
1191   WHEN OTHERS THEN
1192        FND_MSG_PUB.add_exc_msg( p_pkg_name
1193                                 => 'PA_PROJ_FP_OPTIONS_PKG'
1194                                ,p_procedure_name
1195                                 => 'Update_Row');
1196        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1197        RAISE;
1198 END Update_Row;
1199 
1200 PROCEDURE Delete_Row
1201 ( p_proj_fp_options_id   IN pa_proj_fp_options.proj_fp_options_id%TYPE
1202                                       := FND_API.G_MISS_NUM
1203  ,p_record_version_number          IN NUMBER
1204                                                            := NULL
1205  ,p_row_id                         IN ROWID
1206                                                            := NULL
1207  ,x_return_status                 OUT NOCOPY VARCHAR2) --File.Sql.39 bug 4440895
1208 IS
1209 BEGIN
1210     x_return_status := FND_API.G_RET_STS_SUCCESS;
1211 
1212     IF (p_proj_fp_options_id IS NOT NULL AND
1213            p_proj_fp_options_id <> FND_API.G_MISS_NUM) THEN
1214 
1215         DELETE FROM pa_proj_fp_options
1216          WHERE proj_fp_options_id = p_proj_fp_options_id
1217            AND nvl(p_record_version_number, nvl(record_version_number,0)) =
1218                                             nvl(record_version_number,0);
1219     ELSIF (p_row_id IS NOT NULL) THEN
1220         DELETE FROM pa_proj_fp_options
1221          WHERE rowid = p_row_id
1222            AND nvl(p_record_version_number, nvl(record_version_number,0)) =
1223                                             nvl(record_version_number,0);
1224     END IF;
1225 
1226     IF (SQL%NOTFOUND) THEN
1227          PA_UTILS.Add_Message ( p_app_short_name => 'PA'
1228                                ,p_msg_name       => 'PA_XC_RECORD_CHANGED');
1229          x_return_status := FND_API.G_RET_STS_ERROR;
1230     END IF;
1231 
1232 EXCEPTION
1233   WHEN OTHERS THEN
1234        FND_MSG_PUB.add_exc_msg( p_pkg_name
1235                                 => 'PA_PROJ_FP_OPTIONS_PKG'
1236                                ,p_procedure_name
1237                                     => 'Delete_Row');
1238        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1239        RAISE;
1240 END Delete_Row;
1241 
1242 PROCEDURE Lock_Row
1243 ( p_proj_fp_options_id   IN pa_proj_fp_options.proj_fp_options_id%TYPE
1244                                       := FND_API.G_MISS_NUM
1245  ,p_record_version_number          IN NUMBER
1246                                                            := NULL
1247  ,p_row_id                         IN ROWID
1248                                                            := NULL
1249  ,x_return_status                 OUT NOCOPY VARCHAR2) --File.Sql.39 bug 4440895
1250 IS
1251   l_row_id ROWID;
1252 BEGIN
1253        x_return_status := FND_API.G_RET_STS_SUCCESS;
1254 
1255        SELECT rowid into l_row_id
1256          FROM pa_proj_fp_options
1257         WHERE proj_fp_options_id =  p_proj_fp_options_id
1261 EXCEPTION
1258            OR rowid = p_row_id
1259           FOR UPDATE NOWAIT;
1260 
1262   WHEN OTHERS THEN
1263        FND_MSG_PUB.add_exc_msg( p_pkg_name
1264                                 => 'PA_PROJ_FP_OPTIONS_PKG'
1265                                ,p_procedure_name
1266                                     => 'Lock_Row');
1267        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1268        RAISE;
1269 END Lock_Row;
1270 
1271 END pa_proj_fp_options_pkg;