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.3 2007/02/06 10:04:58 dthakker 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
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
305  ,p_gn_all_incl_unspent_amt_flag
306      IN PA_PROJ_FP_OPTIONS.gen_all_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
310      IN PA_PROJ_FP_OPTIONS.gen_rev_actual_amts_thru_code%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
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  ,x_row_id                        OUT NOCOPY ROWID --File.Sql.39 bug 4440895
340  ,x_return_status                 OUT NOCOPY VARCHAR2) --File.Sql.39 bug 4440895
341  IS
342    CURSOR C2 IS SELECT pa_proj_fp_options_s.nextval FROM sys.dual;
343 BEGIN
344    x_return_status := FND_API.G_RET_STS_SUCCESS;
345 
346    IF (px_proj_fp_options_id IS NULL) OR
347          (px_proj_fp_options_id = FND_API.G_MISS_NUM) then
348        open c2;
349        fetch c2 into px_proj_fp_options_id;
350        close c2;
351    end if;
352    INSERT INTO pa_proj_fp_options(
353     proj_fp_options_id
354    ,record_version_number
355    ,project_id
356    ,fin_plan_option_level_code
357    ,fin_plan_type_id
358    ,fin_plan_start_date
359    ,fin_plan_end_date
360    ,fin_plan_preference_code
361    ,cost_amount_set_id
362    ,revenue_amount_set_id
363    ,all_amount_set_id
364    ,cost_fin_plan_level_code
365    ,cost_time_phased_code
366    ,cost_resource_list_id
367    ,revenue_fin_plan_level_code
368    ,revenue_time_phased_code
369    ,revenue_resource_list_id
370    ,all_fin_plan_level_code
371    ,all_time_phased_code
372    ,all_resource_list_id
373    ,report_labor_hrs_from_code
374    ,fin_plan_version_id
375    ,default_amount_type_code
376    ,default_amount_subtype_code
377    ,approved_cost_plan_type_flag
378    ,approved_rev_plan_type_flag
379    ,projfunc_cost_rate_type
380    ,projfunc_cost_rate_date_type
381    ,projfunc_cost_rate_date
382    ,projfunc_rev_rate_type
383    ,projfunc_rev_rate_date_type
384    ,projfunc_rev_rate_date
385    ,project_cost_rate_type
386    ,project_cost_rate_date_type
387    ,project_cost_rate_date
388    ,project_rev_rate_type
389    ,project_rev_rate_date_type
390    ,project_rev_rate_date
391    ,margin_derived_from_code
392    ,select_cost_res_auto_flag
393    ,cost_res_planning_level
394    ,select_rev_res_auto_flag
395    ,revenue_res_planning_level
396    ,select_all_res_auto_flag
397    ,all_res_planning_level
398    ,last_update_date
399    ,last_updated_by
400    ,creation_date
401    ,created_by
402    ,last_update_login
403    ,factor_by_code
404    ,plan_in_multi_curr_flag
405    ,process_update_wbs_flag
406    ,request_id
407    ,plan_processing_code
408      ,primary_cost_forecast_flag
409      ,primary_rev_forecast_flag
410      ,use_planning_rates_flag
411      ,rbs_version_id
412      ,res_class_raw_cost_sch_id
413      ,res_class_bill_rate_sch_id
414      ,cost_emp_rate_sch_id
415      ,cost_job_rate_sch_id
416      ,cost_non_labor_res_rate_sch_id
417      ,cost_res_class_rate_sch_id
418      ,cost_burden_rate_sch_id
419      ,cost_current_planning_period
420      ,cost_period_mask_id
421      ,rev_emp_rate_sch_id
422      ,rev_job_rate_sch_id
423      ,rev_non_labor_res_rate_sch_id
424      ,rev_res_class_rate_sch_id
425      ,rev_current_planning_period
426      ,rev_period_mask_id
427      /** Bug 3580727
428          ,all_emp_rate_sch_id
429          ,all_job_rate_sch_id
430          ,all_non_labor_res_rate_sch_id
431          ,all_res_class_rate_sch_id
432          ,all_burden_rate_sch_id
433      **/
434      ,all_current_planning_period
435      ,all_period_mask_id
436      ,gen_cost_src_code
437      ,gen_cost_etc_src_code
438      ,gen_cost_incl_change_doc_flag
439      ,gen_cost_incl_open_comm_flag
440      ,gen_cost_ret_manual_line_flag
441      ,gen_cost_incl_unspent_amt_flag
442      ,gen_rev_src_code
443      ,gen_rev_etc_src_code
444      ,gen_rev_incl_change_doc_flag
445      ,gen_rev_incl_bill_event_flag
446      ,gen_rev_ret_manual_line_flag
447      /** Bug 3580727
451      ,gen_src_cost_plan_version_id
448          ,gen_rev_incl_unspent_amt_flag
449      **/
450      ,gen_src_cost_plan_type_id
452      ,gen_src_cost_plan_ver_code
453      ,gen_src_rev_plan_type_id
454      ,gen_src_rev_plan_version_id
455      ,gen_src_rev_plan_ver_code
456      ,gen_src_all_plan_type_id
457      ,gen_src_all_plan_version_id
458      ,gen_src_all_plan_ver_code
459      ,gen_all_src_code
460      ,gen_all_etc_src_code
461      ,gen_all_incl_change_doc_flag
462      ,gen_all_incl_open_comm_flag
463      ,gen_all_ret_manual_line_flag
464      ,gen_all_incl_bill_event_flag
465      ,gen_all_incl_unspent_amt_flag
466      ,gen_cost_actual_amts_thru_code
467      ,gen_rev_actual_amts_thru_code
468      ,gen_all_actual_amts_thru_code
469      ,track_workplan_costs_flag
470      ,gen_src_cost_wp_version_id
471      ,gen_src_cost_wp_ver_code
472      ,gen_src_rev_wp_version_id
473      ,gen_src_rev_wp_ver_code
474      ,gen_src_all_wp_version_id
475      ,gen_src_all_wp_ver_code
476      ,cost_layout_code
477      ,revenue_layout_code
478      ,all_layout_code
479      ,revenue_derivation_method --Bug 5462471
480     ) values (
481     DECODE( px_proj_fp_options_id, FND_API.G_MISS_NUM, NULL,
482                   px_proj_fp_options_id)
483    ,1
484    ,DECODE( p_project_id, FND_API.G_MISS_NUM, NULL, p_project_id)
485    ,DECODE( p_fin_plan_option_level_code, FND_API.G_MISS_CHAR, NULL, p_fin_plan_option_level_code)
486    ,DECODE( p_fin_plan_type_id, FND_API.G_MISS_NUM, NULL, p_fin_plan_type_id)
487    ,DECODE( p_fin_plan_start_date, FND_API.G_MISS_DATE, to_date(NULL), p_fin_plan_start_date)
488    ,DECODE( p_fin_plan_end_date, FND_API.G_MISS_DATE, to_date(NULL), p_fin_plan_end_date)
489    ,DECODE( p_fin_plan_preference_code, FND_API.G_MISS_CHAR, NULL, p_fin_plan_preference_code)
490    ,DECODE( p_cost_amount_set_id, FND_API.G_MISS_NUM, NULL, p_cost_amount_set_id)
491    ,DECODE( p_revenue_amount_set_id, FND_API.G_MISS_NUM, NULL, p_revenue_amount_set_id)
492    ,DECODE( p_all_amount_set_id, FND_API.G_MISS_NUM, NULL, p_all_amount_set_id)
493    ,DECODE( p_cost_fin_plan_level_code, FND_API.G_MISS_CHAR, NULL, p_cost_fin_plan_level_code)
494    ,DECODE( p_cost_time_phased_code, FND_API.G_MISS_CHAR, NULL, p_cost_time_phased_code)
495    ,DECODE( p_cost_resource_list_id, FND_API.G_MISS_NUM, NULL, p_cost_resource_list_id)
496    ,DECODE( p_revenue_fin_plan_level_code, FND_API.G_MISS_CHAR, NULL, p_revenue_fin_plan_level_code)
497    ,DECODE( p_revenue_time_phased_code, FND_API.G_MISS_CHAR, NULL, p_revenue_time_phased_code)
498    ,DECODE( p_revenue_resource_list_id, FND_API.G_MISS_NUM, NULL, p_revenue_resource_list_id)
499    ,DECODE( p_all_fin_plan_level_code, FND_API.G_MISS_CHAR, NULL, p_all_fin_plan_level_code)
500    ,DECODE( p_all_time_phased_code, FND_API.G_MISS_CHAR, NULL, p_all_time_phased_code)
501    ,DECODE( p_all_resource_list_id, FND_API.G_MISS_NUM, NULL, p_all_resource_list_id)
502    ,DECODE( p_report_labor_hrs_from_code, FND_API.G_MISS_CHAR, NULL, p_report_labor_hrs_from_code)
503    ,DECODE( p_fin_plan_version_id, FND_API.G_MISS_NUM, NULL, p_fin_plan_version_id)
504    ,DECODE( p_default_amount_type_code  , FND_API.G_MISS_CHAR, NULL,  p_default_amount_type_code)
505    ,DECODE( p_default_amount_subtype_code  , FND_API.G_MISS_CHAR, NULL,  p_default_amount_subtype_code)
506    ,DECODE( p_approved_cost_plan_type_flag , FND_API.G_MISS_CHAR, NULL,  p_approved_cost_plan_type_flag)
507    ,DECODE( p_approved_rev_plan_type_flag , FND_API.G_MISS_CHAR, NULL,  p_approved_rev_plan_type_flag)
508    ,DECODE( p_projfunc_cost_rate_type     , FND_API.G_MISS_CHAR, NULL,  p_projfunc_cost_rate_type)
509    ,DECODE( p_projfunc_cost_rate_date_type , FND_API.G_MISS_CHAR, NULL, p_projfunc_cost_rate_date_type)
510    ,DECODE( p_projfunc_cost_rate_date     , FND_API.G_MISS_DATE, NULL,  p_projfunc_cost_rate_date)
511    ,DECODE( p_projfunc_rev_rate_type      , FND_API.G_MISS_CHAR, NULL,  p_projfunc_rev_rate_type)
512    ,DECODE( p_projfunc_rev_rate_date_type , FND_API.G_MISS_CHAR, NULL,  p_projfunc_rev_rate_date_type)
513    ,DECODE( p_projfunc_rev_rate_date      , FND_API.G_MISS_DATE, NULL,  p_projfunc_rev_rate_date)
514    ,DECODE( p_project_cost_rate_type      , FND_API.G_MISS_CHAR, NULL, p_project_cost_rate_type)
515    ,DECODE( p_project_cost_rate_date_type , FND_API.G_MISS_CHAR, NULL, p_project_cost_rate_date_type)
516    ,DECODE( p_project_cost_rate_date      , FND_API.G_MISS_DATE, NULL, p_project_cost_rate_date)
517    ,DECODE( p_project_rev_rate_type       , FND_API.G_MISS_CHAR, NULL, p_project_rev_rate_type)
518    ,DECODE( p_project_rev_rate_date_type  , FND_API.G_MISS_CHAR, NULL, p_project_rev_rate_date_type)
519    ,DECODE( p_project_rev_rate_date       , FND_API.G_MISS_DATE, NULL, p_project_rev_rate_date)
520    ,DECODE( p_margin_derived_from_code    , FND_API.G_MISS_CHAR, NULL, p_margin_derived_from_code)
521    ,DECODE( p_select_cost_res_auto_flag   , FND_API.G_MISS_CHAR, NULL, p_select_cost_res_auto_flag)
522    ,DECODE( p_cost_res_planning_level     , FND_API.G_MISS_CHAR, NULL, p_cost_res_planning_level)
523    ,DECODE( p_select_rev_res_auto_flag    , FND_API.G_MISS_CHAR, NULL, p_select_rev_res_auto_flag)
524    ,DECODE( p_revenue_res_planning_level  , FND_API.G_MISS_CHAR, NULL, p_revenue_res_planning_level)
525    ,DECODE( p_select_all_res_auto_flag    , FND_API.G_MISS_CHAR, NULL, p_select_all_res_auto_flag)
526    ,DECODE( p_all_res_planning_level      , FND_API.G_MISS_CHAR, NULL, p_all_res_planning_level)
527    ,sysdate
528    ,fnd_global.user_id
529    ,sysdate
530    ,fnd_global.user_id
531    ,fnd_global.login_id
532    ,DECODE( p_factor_by_code, FND_API.G_MISS_CHAR, NULL, p_factor_by_code)
533    ,DECODE( p_plan_in_multi_curr_flag, FND_API.G_MISS_CHAR, NULL, p_plan_in_multi_curr_flag)
534    ,DECODE(p_refresh_required_flag, FND_API.G_MISS_CHAR, NULL, p_refresh_required_flag)
538      ,DECODE(p_primary_rev_forecast_flag,     FND_API.G_MISS_CHAR, NULL,  p_primary_rev_forecast_flag)
535    ,DECODE(p_request_id, FND_API.G_MISS_NUM, NULL, p_request_id)
536    ,DECODE(p_processing_code, FND_API.G_MISS_CHAR, NULL, p_processing_code)
537      ,DECODE(p_primary_cost_forecast_flag,    FND_API.G_MISS_CHAR, NULL,  p_primary_cost_forecast_flag)
539      ,DECODE(p_use_planning_rates_flag,       FND_API.G_MISS_CHAR, NULL,  p_use_planning_rates_flag)
540      ,DECODE(p_rbs_version_id,                FND_API.G_MISS_NUM,  NULL,  p_rbs_version_id)
541      ,DECODE(p_res_class_raw_cost_sch_id,     FND_API.G_MISS_NUM,  NULL,  p_res_class_raw_cost_sch_id)
542      ,DECODE(p_res_class_bill_rate_sch_id,    FND_API.G_MISS_NUM,  NULL,  p_res_class_bill_rate_sch_id)
543      ,DECODE(p_cost_emp_rate_sch_id,          FND_API.G_MISS_NUM,  NULL,  p_cost_emp_rate_sch_id)
544      ,DECODE(p_cost_job_rate_sch_id,          FND_API.G_MISS_NUM,  NULL,  p_cost_job_rate_sch_id)
545      ,DECODE(p_cst_non_labr_res_rate_sch_id,  FND_API.G_MISS_NUM,  NULL,  p_cst_non_labr_res_rate_sch_id)
546      ,DECODE(p_cost_res_class_rate_sch_id,    FND_API.G_MISS_NUM,  NULL,  p_cost_res_class_rate_sch_id)
547      ,DECODE(p_cost_burden_rate_sch_id,       FND_API.G_MISS_NUM,  NULL,  p_cost_burden_rate_sch_id)
548      ,DECODE(p_cost_current_planning_period,  FND_API.G_MISS_CHAR, NULL,  p_cost_current_planning_period)
549      ,DECODE(p_cost_period_mask_id,           FND_API.G_MISS_NUM,  NULL,  p_cost_period_mask_id)
550      ,DECODE(p_rev_emp_rate_sch_id,           FND_API.G_MISS_NUM,  NULL,  p_rev_emp_rate_sch_id)
551      ,DECODE(p_rev_job_rate_sch_id,           FND_API.G_MISS_NUM,  NULL,  p_rev_job_rate_sch_id)
552      ,DECODE(p_rev_non_labr_res_rate_sch_id,  FND_API.G_MISS_NUM,  NULL,  p_rev_non_labr_res_rate_sch_id)
553      ,DECODE(p_rev_res_class_rate_sch_id,     FND_API.G_MISS_NUM,  NULL,  p_rev_res_class_rate_sch_id)
554      ,DECODE(p_rev_current_planning_period,   FND_API.G_MISS_CHAR, NULL,  p_rev_current_planning_period)
555      ,DECODE(p_rev_period_mask_id,            FND_API.G_MISS_NUM,  NULL,  p_rev_period_mask_id)
556      /** Bug 3580727
557          ,DECODE(p_all_emp_rate_sch_id,           FND_API.G_MISS_NUM,  NULL,  p_all_emp_rate_sch_id)
558          ,DECODE(p_all_job_rate_sch_id,           FND_API.G_MISS_NUM,  NULL,  p_all_job_rate_sch_id)
559          ,DECODE(p_all_non_labr_res_rate_sch_id,  FND_API.G_MISS_NUM,  NULL,  p_all_non_labr_res_rate_sch_id)
560          ,DECODE(p_all_res_class_rate_sch_id,     FND_API.G_MISS_NUM,  NULL,  p_all_res_class_rate_sch_id)
561          ,DECODE(p_all_burden_rate_sch_id,        FND_API.G_MISS_NUM,  NULL,  p_all_burden_rate_sch_id)
562      **/
563      ,DECODE(p_all_current_planning_period,   FND_API.G_MISS_CHAR, NULL,  p_all_current_planning_period)
564      ,DECODE(p_all_period_mask_id,            FND_API.G_MISS_NUM,  NULL,  p_all_period_mask_id)
565      ,DECODE(p_gen_cost_src_code,             FND_API.G_MISS_CHAR, NULL,  p_gen_cost_src_code)
566      ,DECODE(p_gen_cost_etc_src_code,         FND_API.G_MISS_CHAR, NULL,  p_gen_cost_etc_src_code)
567      ,DECODE(p_gn_cost_incl_change_doc_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_cost_incl_change_doc_flag)
568      ,DECODE(p_gen_cost_incl_open_comm_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_cost_incl_open_comm_flag)
569      ,DECODE(p_gn_cost_ret_manual_line_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_cost_ret_manual_line_flag)
570      ,DECODE(p_gn_cst_incl_unspent_amt_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_cst_incl_unspent_amt_flag)
571      ,DECODE(p_gen_rev_src_code,              FND_API.G_MISS_CHAR, NULL,  p_gen_rev_src_code)
572      ,DECODE(p_gen_rev_etc_src_code,          FND_API.G_MISS_CHAR, NULL,  p_gen_rev_etc_src_code)
573      ,DECODE(p_gen_rev_incl_change_doc_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_rev_incl_change_doc_flag)
574      ,DECODE(p_gen_rev_incl_bill_event_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_rev_incl_bill_event_flag)
575      ,DECODE(p_gen_rev_ret_manual_line_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_rev_ret_manual_line_flag)
576      /** Bug 3580727
577          ,DECODE(p_gn_rev_incl_unspent_amt_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_rev_incl_unspent_amt_flag)
578      **/
579      ,DECODE(p_gen_src_cost_plan_type_id,     FND_API.G_MISS_NUM,  NULL,  p_gen_src_cost_plan_type_id)
580      ,DECODE(p_gen_src_cost_plan_version_id,  FND_API.G_MISS_NUM,  NULL,  p_gen_src_cost_plan_version_id)
581      ,DECODE(p_gen_src_cost_plan_ver_code,    FND_API.G_MISS_CHAR, NULL,  p_gen_src_cost_plan_ver_code)
582      ,DECODE(p_gen_src_rev_plan_type_id,      FND_API.G_MISS_NUM,  NULL,  p_gen_src_rev_plan_type_id)
583      ,DECODE(p_gen_src_rev_plan_version_id,   FND_API.G_MISS_NUM,  NULL,  p_gen_src_rev_plan_version_id)
584      ,DECODE(p_gen_src_rev_plan_ver_code,     FND_API.G_MISS_CHAR, NULL,  p_gen_src_rev_plan_ver_code)
585      ,DECODE(p_gen_src_all_plan_type_id,      FND_API.G_MISS_NUM,  NULL,  p_gen_src_all_plan_type_id)
586      ,DECODE(p_gen_src_all_plan_version_id,   FND_API.G_MISS_NUM,  NULL,  p_gen_src_all_plan_version_id)
587      ,DECODE(p_gen_src_all_plan_ver_code,     FND_API.G_MISS_CHAR, NULL,  p_gen_src_all_plan_ver_code)
588      ,DECODE(p_gen_all_src_code,              FND_API.G_MISS_CHAR, NULL,  p_gen_all_src_code)
589      ,DECODE(p_gen_all_etc_src_code,          FND_API.G_MISS_CHAR, NULL,  p_gen_all_etc_src_code)
590      ,DECODE(p_gen_all_incl_change_doc_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_all_incl_change_doc_flag)
591      ,DECODE(p_gen_all_incl_open_comm_flag,   FND_API.G_MISS_CHAR, NULL,  p_gen_all_incl_open_comm_flag)
592      ,DECODE(p_gen_all_ret_manual_line_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_all_ret_manual_line_flag)
593      ,DECODE(p_gen_all_incl_bill_event_flag,  FND_API.G_MISS_CHAR, NULL,  p_gen_all_incl_bill_event_flag)
594      ,DECODE(p_gn_all_incl_unspent_amt_flag,  FND_API.G_MISS_CHAR, NULL,  p_gn_all_incl_unspent_amt_flag)
595      ,DECODE(p_gn_cst_actual_amts_thru_code,  FND_API.G_MISS_CHAR, NULL,  p_gn_cst_actual_amts_thru_code)
599      -- bug 3519062 start of workplan gen source related columns
596      ,DECODE(p_gn_rev_actual_amts_thru_code,  FND_API.G_MISS_CHAR, NULL,  p_gn_rev_actual_amts_thru_code)
597      ,DECODE(p_gn_all_actual_amts_thru_code,  FND_API.G_MISS_CHAR, NULL,  p_gn_all_actual_amts_thru_code)
598      ,DECODE(p_track_workplan_costs_flag,     FND_API.G_MISS_CHAR, NULL,  p_track_workplan_costs_flag)
600      ,DECODE(p_gen_src_cost_wp_version_id,   FND_API.G_MISS_NUM,  NULL,  p_gen_src_cost_wp_version_id)
601      ,DECODE(p_gen_src_cost_wp_ver_code,     FND_API.G_MISS_CHAR, NULL,  p_gen_src_cost_wp_ver_code)
602      ,DECODE(p_gen_src_rev_wp_version_id,    FND_API.G_MISS_NUM,  NULL,  p_gen_src_rev_wp_version_id)
603      ,DECODE(p_gen_src_rev_wp_ver_code,      FND_API.G_MISS_CHAR, NULL,  p_gen_src_rev_wp_ver_code)
604      ,DECODE(p_gen_src_all_wp_version_id,    FND_API.G_MISS_NUM,  NULL,  p_gen_src_all_wp_version_id)
605      ,DECODE(p_gen_src_all_wp_ver_code,      FND_API.G_MISS_CHAR, NULL,  p_gen_src_all_wp_ver_code)
606      ,DECODE(p_cost_layout_code       ,      FND_API.G_MISS_CHAR, NULL,  p_cost_layout_code)
607      ,DECODE(p_revenue_layout_code,          FND_API.G_MISS_CHAR, NULL,  p_revenue_layout_code)
608      ,DECODE(p_all_layout_code,          FND_API.G_MISS_CHAR, NULL,  p_all_layout_code)
609      -- bug 3519062 end of workplan gen source related columns
610     ,DECODE(p_revenue_derivation_method,FND_API.G_MISS_CHAR,NULL,p_revenue_derivation_method) -- Bug 5462471
611 );
612 
613 EXCEPTION
614   WHEN OTHERS THEN
615        FND_MSG_PUB.add_exc_msg( p_pkg_name
616                                 => 'PA_PROJ_FP_OPTIONS_PKG'
617                                ,p_procedure_name
618                                 => 'Insert_Row');
619        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
620        RAISE;
621 END Insert_Row;
622 
623 
624 
625 PROCEDURE Update_Row
626 ( p_proj_fp_options_id
627     IN pa_proj_fp_options.proj_fp_options_id%TYPE := FND_API.G_MISS_NUM
628  ,p_record_version_number
629     IN NUMBER                                     := NULL
630  ,p_project_id
631     IN pa_proj_fp_options.project_id%TYPE := FND_API.G_MISS_NUM
632  ,p_fin_plan_option_level_code
633     IN pa_proj_fp_options.fin_plan_option_level_code%TYPE := FND_API.G_MISS_CHAR
634  ,p_fin_plan_type_id
635     IN pa_proj_fp_options.fin_plan_type_id%TYPE := FND_API.G_MISS_NUM
636  ,p_fin_plan_start_date
637     IN pa_proj_fp_options.fin_plan_start_date%TYPE := FND_API.G_MISS_DATE
638  ,p_fin_plan_end_date
639     IN pa_proj_fp_options.fin_plan_end_date%TYPE := FND_API.G_MISS_DATE
640  ,p_fin_plan_preference_code
641     IN pa_proj_fp_options.fin_plan_preference_code%TYPE := FND_API.G_MISS_CHAR
642  ,p_cost_amount_set_id
643     IN pa_proj_fp_options.cost_amount_set_id%TYPE := FND_API.G_MISS_NUM
644  ,p_revenue_amount_set_id
645     IN pa_proj_fp_options.revenue_amount_set_id%TYPE := FND_API.G_MISS_NUM
646  ,p_all_amount_set_id
647     IN pa_proj_fp_options.all_amount_set_id%TYPE := FND_API.G_MISS_NUM
648  ,p_cost_fin_plan_level_code
649     IN pa_proj_fp_options.cost_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
650  ,p_cost_time_phased_code
651     IN pa_proj_fp_options.cost_time_phased_code%TYPE := FND_API.G_MISS_CHAR
652  ,p_cost_resource_list_id
653     IN pa_proj_fp_options.cost_resource_list_id%TYPE := FND_API.G_MISS_NUM
654  ,p_revenue_fin_plan_level_code
655     IN pa_proj_fp_options.revenue_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
656  ,p_revenue_time_phased_code
657     IN pa_proj_fp_options.revenue_time_phased_code%TYPE := FND_API.G_MISS_CHAR
658  ,p_revenue_resource_list_id
659     IN pa_proj_fp_options.revenue_resource_list_id%TYPE := FND_API.G_MISS_NUM
660  ,p_all_fin_plan_level_code
661     IN pa_proj_fp_options.all_fin_plan_level_code%TYPE := FND_API.G_MISS_CHAR
662  ,p_all_time_phased_code
663     IN pa_proj_fp_options.all_time_phased_code%TYPE := FND_API.G_MISS_CHAR
664  ,p_all_resource_list_id
665     IN pa_proj_fp_options.all_resource_list_id%TYPE := FND_API.G_MISS_NUM
666  ,p_report_labor_hrs_from_code
667     IN pa_proj_fp_options.report_labor_hrs_from_code%TYPE := FND_API.G_MISS_CHAR
668  ,p_fin_plan_version_id
669     IN pa_proj_fp_options.fin_plan_version_id%TYPE := FND_API.G_MISS_NUM
670 /* added for financial planning */
671  ,p_plan_in_multi_curr_flag
672     IN pa_proj_fp_options.plan_in_multi_curr_flag%TYPE      := FND_API.G_MISS_CHAR
673  ,p_factor_by_code
674     IN pa_proj_fp_options.factor_by_code%TYPE               := FND_API.G_MISS_CHAR
675  ,p_default_amount_type_code
676     IN pa_proj_fp_options.default_amount_type_code%TYPE     := FND_API.G_MISS_CHAR
677  ,p_default_amount_subtype_code
678     IN pa_proj_fp_options.default_amount_subtype_code%TYPE  := FND_API.G_MISS_CHAR
679  ,p_approved_cost_plan_type_flag
680     IN pa_proj_fp_options.approved_cost_plan_type_flag%TYPE := FND_API.G_MISS_CHAR
681  ,p_approved_rev_plan_type_flag
682     IN pa_proj_fp_options.approved_rev_plan_type_flag%TYPE  := FND_API.G_MISS_CHAR
683  ,p_projfunc_cost_rate_type
684     IN pa_proj_fp_options.projfunc_cost_rate_type%TYPE      := FND_API.G_MISS_CHAR
685  ,p_projfunc_cost_rate_date_type
686     IN pa_proj_fp_options.projfunc_cost_rate_date_type%TYPE := FND_API.G_MISS_CHAR
687  ,p_projfunc_cost_rate_date
688     IN pa_proj_fp_options.projfunc_cost_rate_date%TYPE      := FND_API.G_MISS_DATE
689  ,p_projfunc_rev_rate_type
690     IN pa_proj_fp_options.projfunc_rev_rate_type%TYPE       := FND_API.G_MISS_CHAR
691  ,p_projfunc_rev_rate_date_type
692     IN pa_proj_fp_options.projfunc_rev_rate_date_type%TYPE  := FND_API.G_MISS_CHAR
693  ,p_projfunc_rev_rate_date
694     IN pa_proj_fp_options.projfunc_rev_rate_date%TYPE       := FND_API.G_MISS_DATE
698     IN pa_proj_fp_options.project_cost_rate_date_type%TYPE  := FND_API.G_MISS_CHAR
695  ,p_project_cost_rate_type
696     IN pa_proj_fp_options.project_cost_rate_type%TYPE       := FND_API.G_MISS_CHAR
697  ,p_project_cost_rate_date_type
699  ,p_project_cost_rate_date
700     IN pa_proj_fp_options.project_cost_rate_date%TYPE       := FND_API.G_MISS_DATE
701  ,p_project_rev_rate_type
702     IN pa_proj_fp_options.project_rev_rate_type%TYPE        := FND_API.G_MISS_CHAR
703  ,p_project_rev_rate_date_type
704     IN pa_proj_fp_options.project_rev_rate_date_type%TYPE   := FND_API.G_MISS_CHAR
705  ,p_project_rev_rate_date
706     IN pa_proj_fp_options.project_rev_rate_date%TYPE        := FND_API.G_MISS_DATE
707  ,p_margin_derived_from_code
708     IN pa_proj_fp_options.margin_derived_from_code%TYPE     := FND_API.G_MISS_CHAR
709 /* ended additions for fin plan */
710 /* Bug 2920954 start of additional parameters for post FP-k one off */
711  ,p_select_cost_res_auto_flag
712      IN pa_proj_fp_options.select_cost_res_auto_flag%TYPE   := FND_API.G_MISS_CHAR
713  ,p_cost_res_planning_level
714      IN pa_proj_fp_options.cost_res_planning_level%TYPE     := FND_API.G_MISS_CHAR
715  ,p_select_rev_res_auto_flag
716      IN pa_proj_fp_options.select_rev_res_auto_flag%TYPE    := FND_API.G_MISS_CHAR
717  ,p_revenue_res_planning_level
718      IN pa_proj_fp_options.revenue_res_planning_level%TYPE  := FND_API.G_MISS_CHAR
719  ,p_select_all_res_auto_flag
720      IN pa_proj_fp_options.select_all_res_auto_flag%TYPE    := FND_API.G_MISS_CHAR
721  ,p_all_res_planning_level
722      IN pa_proj_fp_options.all_res_planning_level%TYPE      := FND_API.G_MISS_CHAR
723 /* Bug 2920954 end of additional parameters for post FP-k one off */
724  ,p_primary_cost_forecast_flag
725     IN PA_PROJ_FP_OPTIONS.primary_cost_forecast_flag%TYPE   := FND_API.G_MISS_CHAR
726  ,p_primary_rev_forecast_flag
727     IN PA_PROJ_FP_OPTIONS.primary_rev_forecast_flag%TYPE    := FND_API.G_MISS_CHAR
728  ,p_use_planning_rates_flag
729     IN PA_PROJ_FP_OPTIONS.use_planning_rates_flag%TYPE      := FND_API.G_MISS_CHAR
730  ,p_rbs_version_id
731     IN PA_PROJ_FP_OPTIONS.rbs_version_id%TYPE               := FND_API.G_MISS_NUM
732  ,p_res_class_raw_cost_sch_id
733     IN PA_PROJ_FP_OPTIONS.res_class_raw_cost_sch_id%TYPE    := FND_API.G_MISS_NUM
734  ,p_res_class_bill_rate_sch_id
735     IN PA_PROJ_FP_OPTIONS.res_class_bill_rate_sch_id%TYPE   := FND_API.G_MISS_NUM
736  ,p_cost_emp_rate_sch_id
737     IN PA_PROJ_FP_OPTIONS.cost_emp_rate_sch_id%TYPE         := FND_API.G_MISS_NUM
738  ,p_cost_job_rate_sch_id
739     IN PA_PROJ_FP_OPTIONS.cost_job_rate_sch_id%TYPE         := FND_API.G_MISS_NUM
740  ,P_CST_NON_LABR_RES_RATE_SCH_ID
741     IN PA_PROJ_FP_OPTIONS.cost_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
742  ,p_cost_res_class_rate_sch_id
743     IN PA_PROJ_FP_OPTIONS.cost_res_class_rate_sch_id%TYPE   := FND_API.G_MISS_NUM
744  ,p_cost_burden_rate_sch_id
745     IN PA_PROJ_FP_OPTIONS.cost_burden_rate_sch_id%TYPE      := FND_API.G_MISS_NUM
746  ,p_cost_current_planning_period
747     IN PA_PROJ_FP_OPTIONS.cost_current_planning_period%TYPE := FND_API.G_MISS_CHAR
748  ,p_cost_period_mask_id
749     IN PA_PROJ_FP_OPTIONS.cost_period_mask_id%TYPE          := FND_API.G_MISS_NUM
750  ,p_rev_emp_rate_sch_id
751     IN PA_PROJ_FP_OPTIONS.rev_emp_rate_sch_id%TYPE          := FND_API.G_MISS_NUM
752  ,p_rev_job_rate_sch_id
753     IN PA_PROJ_FP_OPTIONS.rev_job_rate_sch_id%TYPE          := FND_API.G_MISS_NUM
754  ,P_REV_NON_LABR_RES_RATE_SCH_ID
755     IN PA_PROJ_FP_OPTIONS.rev_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
756  ,p_rev_res_class_rate_sch_id
757     IN PA_PROJ_FP_OPTIONS.rev_res_class_rate_sch_id%TYPE    := FND_API.G_MISS_NUM
758  ,p_rev_current_planning_period
759     IN PA_PROJ_FP_OPTIONS.rev_current_planning_period%TYPE  := FND_API.G_MISS_CHAR
760  ,p_rev_period_mask_id
761     IN PA_PROJ_FP_OPTIONS.rev_period_mask_id%TYPE           := FND_API.G_MISS_NUM
762  /** Bug 3580727 Columns have been dropped
763      ,p_all_emp_rate_sch_id
764         IN PA_PROJ_FP_OPTIONS.all_emp_rate_sch_id%TYPE          := FND_API.G_MISS_NUM
765      ,p_all_job_rate_sch_id
766         IN PA_PROJ_FP_OPTIONS.all_job_rate_sch_id%TYPE          := FND_API.G_MISS_NUM
767      ,P_ALL_NON_LABR_RES_RATE_SCH_ID
768         IN PA_PROJ_FP_OPTIONS.all_non_labor_res_rate_sch_id%TYPE := FND_API.G_MISS_NUM
769      ,p_all_res_class_rate_sch_id
770         IN PA_PROJ_FP_OPTIONS.all_res_class_rate_sch_id%TYPE    := FND_API.G_MISS_NUM
771      ,p_all_burden_rate_sch_id
772         IN PA_PROJ_FP_OPTIONS.all_burden_rate_sch_id%TYPE       := FND_API.G_MISS_NUM
773  **/
774  ,p_all_current_planning_period
775     IN PA_PROJ_FP_OPTIONS.all_current_planning_period%TYPE  := FND_API.G_MISS_CHAR
776  ,p_all_period_mask_id
777     IN PA_PROJ_FP_OPTIONS.all_period_mask_id%TYPE           := FND_API.G_MISS_NUM
778  ,p_gen_cost_src_code
779     IN PA_PROJ_FP_OPTIONS.gen_cost_src_code%TYPE            := FND_API.G_MISS_CHAR
780  ,p_gen_cost_etc_src_code
781     IN PA_PROJ_FP_OPTIONS.gen_cost_etc_src_code%TYPE        := FND_API.G_MISS_CHAR
782  ,P_GN_COST_INCL_CHANGE_DOC_FLAG
783     IN PA_PROJ_FP_OPTIONS.gen_cost_incl_change_doc_flag%TYPE  := FND_API.G_MISS_CHAR
784  ,p_gen_cost_incl_open_comm_flag
785     IN PA_PROJ_FP_OPTIONS.gen_cost_incl_open_comm_flag%TYPE   := FND_API.G_MISS_CHAR
786  ,P_GN_COST_RET_MANUAL_LINE_FLAG
787     IN PA_PROJ_FP_OPTIONS.gen_cost_ret_manual_line_flag%TYPE  := FND_API.G_MISS_CHAR
788  ,P_GN_CST_INCL_UNSPENT_AMT_FLAG
789     IN PA_PROJ_FP_OPTIONS.gen_cost_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
790  ,p_gen_rev_src_code
791     IN PA_PROJ_FP_OPTIONS.gen_rev_src_code%TYPE             := FND_API.G_MISS_CHAR
792  ,p_gen_rev_etc_src_code
793     IN PA_PROJ_FP_OPTIONS.gen_rev_etc_src_code%TYPE         := FND_API.G_MISS_CHAR
794  ,p_gen_rev_incl_change_doc_flag
798  ,p_gen_rev_ret_manual_line_flag
795     IN PA_PROJ_FP_OPTIONS.gen_rev_incl_change_doc_flag%TYPE := FND_API.G_MISS_CHAR
796  ,p_gen_rev_incl_bill_event_flag
797     IN PA_PROJ_FP_OPTIONS.gen_rev_incl_bill_event_flag%TYPE := FND_API.G_MISS_CHAR
799     IN PA_PROJ_FP_OPTIONS.gen_rev_ret_manual_line_flag%TYPE := FND_API.G_MISS_CHAR
800  /** Bug 3580727
801      ,P_GN_REV_INCL_UNSPENT_AMT_FLAG
802         IN PA_PROJ_FP_OPTIONS.gen_rev_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
803  **/
804  ,p_gen_src_cost_plan_type_id
805     IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_type_id%TYPE    := FND_API.G_MISS_NUM
806  ,p_gen_src_cost_plan_version_id
807     IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_version_id%TYPE := FND_API.G_MISS_NUM
808  ,p_gen_src_cost_plan_ver_code
809     IN PA_PROJ_FP_OPTIONS.gen_src_cost_plan_ver_code%TYPE   := FND_API.G_MISS_CHAR
810  ,p_gen_src_rev_plan_type_id
811     IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_type_id%TYPE     := FND_API.G_MISS_NUM
812  ,p_gen_src_rev_plan_version_id
813     IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_version_id%TYPE  := FND_API.G_MISS_NUM
814  ,p_gen_src_rev_plan_ver_code
815     IN PA_PROJ_FP_OPTIONS.gen_src_rev_plan_ver_code%TYPE    := FND_API.G_MISS_CHAR
816  ,p_gen_src_all_plan_type_id
817     IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_type_id%TYPE     := FND_API.G_MISS_NUM
818  ,p_gen_src_all_plan_version_id
819     IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_version_id%TYPE  := FND_API.G_MISS_NUM
820  ,p_gen_src_all_plan_ver_code
821     IN PA_PROJ_FP_OPTIONS.gen_src_all_plan_ver_code%TYPE    := FND_API.G_MISS_CHAR
822  ,p_gen_all_src_code
823     IN PA_PROJ_FP_OPTIONS.gen_all_src_code%TYPE             := FND_API.G_MISS_CHAR
824  ,p_gen_all_etc_src_code
825     IN PA_PROJ_FP_OPTIONS.gen_all_etc_src_code%TYPE         := FND_API.G_MISS_CHAR
826  ,p_gen_all_incl_change_doc_flag
827     IN PA_PROJ_FP_OPTIONS.gen_all_incl_change_doc_flag%TYPE := FND_API.G_MISS_CHAR
828  ,p_gen_all_incl_open_comm_flag
829     IN PA_PROJ_FP_OPTIONS.gen_all_incl_open_comm_flag%TYPE  := FND_API.G_MISS_CHAR
830  ,p_gen_all_ret_manual_line_flag
831     IN PA_PROJ_FP_OPTIONS.gen_all_ret_manual_line_flag%TYPE := FND_API.G_MISS_CHAR
832  ,p_gen_all_incl_bill_event_flag
833     IN PA_PROJ_FP_OPTIONS.gen_all_incl_bill_event_flag%TYPE := FND_API.G_MISS_CHAR
834  ,P_GN_ALL_INCL_UNSPENT_AMT_FLAG
835     IN PA_PROJ_FP_OPTIONS.gen_all_incl_unspent_amt_flag%TYPE := FND_API.G_MISS_CHAR
836  ,P_GN_CST_ACTUAL_AMTS_THRU_CODE
837     IN PA_PROJ_FP_OPTIONS.gen_cost_actual_amts_thru_code%TYPE := FND_API.G_MISS_CHAR
838  ,P_GN_REV_ACTUAL_AMTS_THRU_CODE
839     IN PA_PROJ_FP_OPTIONS.gen_rev_actual_amts_thru_code%TYPE  := FND_API.G_MISS_CHAR
840  ,P_GN_ALL_ACTUAL_AMTS_THRU_CODE
841     IN PA_PROJ_FP_OPTIONS.gen_all_actual_amts_thru_code%TYPE  := FND_API.G_MISS_CHAR
842  ,p_track_workplan_costs_flag
843      IN PA_PROJ_FP_OPTIONS.track_workplan_costs_flag%TYPE     := FND_API.G_MISS_CHAR
844  -- bug 3519062 start of workplan gen source related columns
845  ,p_gen_src_cost_wp_version_id
846      IN PA_PROJ_FP_OPTIONS.gen_src_cost_wp_version_id%TYPE := FND_API.G_MISS_NUM
847  ,p_gen_src_cost_wp_ver_code
848      IN PA_PROJ_FP_OPTIONS.gen_src_cost_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
849  ,p_gen_src_rev_wp_version_id
850      IN PA_PROJ_FP_OPTIONS.gen_src_rev_wp_version_id%TYPE := FND_API.G_MISS_NUM
851  ,p_gen_src_rev_wp_ver_code
852      IN PA_PROJ_FP_OPTIONS.gen_src_rev_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
853  ,p_gen_src_all_wp_version_id
854      IN PA_PROJ_FP_OPTIONS.gen_src_all_wp_version_id%TYPE := FND_API.G_MISS_NUM
855  ,p_gen_src_all_wp_ver_code
856      IN PA_PROJ_FP_OPTIONS.gen_src_all_wp_ver_code%TYPE := FND_API.G_MISS_CHAR
857  -- bug 3519062 end of workplan gen source related columns
858 
859  --Added for webAdi changes for the amount types to be displayed
860  ,p_cost_layout_code
861      IN PA_PROJ_FP_OPTIONS.cost_layout_code%TYPE := FND_API.G_MISS_CHAR
862  ,p_revenue_layout_code
863      IN PA_PROJ_FP_OPTIONS.revenue_layout_code%TYPE := FND_API.G_MISS_CHAR
864  ,p_all_layout_code
865      IN PA_PROJ_FP_OPTIONS.all_layout_code%TYPE := FND_API.G_MISS_CHAR
866  ,p_revenue_derivation_method
867         IN PA_PROJ_FP_OPTIONS.revenue_derivation_method%TYPE := FND_API.G_MISS_CHAR --Bug 5462471
868  ,p_row_id
869     IN ROWID                                                  := NULL
870  ,x_return_status                 OUT NOCOPY VARCHAR2)  --File.Sql.39 bug 4440895
871 IS
872 BEGIN
873  x_return_status := FND_API.G_RET_STS_SUCCESS;
874 
875  UPDATE pa_proj_fp_options
876  SET
877   record_version_number = nvl(record_version_number,0) +1
878  ,project_id = DECODE( p_project_id, FND_API.G_MISS_NUM, project_id,
879                                    p_project_id)
880  ,fin_plan_option_level_code = DECODE( p_fin_plan_option_level_code,
881                                                                    FND_API.G_MISS_CHAR,
882                                            fin_plan_option_level_code,
883                                            p_fin_plan_option_level_code)
884  ,fin_plan_type_id = DECODE( p_fin_plan_type_id, FND_API.G_MISS_NUM,
885                                             fin_plan_type_id, p_fin_plan_type_id)
886  ,fin_plan_start_date   = DECODE( p_fin_plan_start_date, FND_API.G_MISS_DATE,
887                                                     fin_plan_start_date,
888                                   p_fin_plan_start_date)
889  ,fin_plan_end_date   = DECODE( p_fin_plan_end_date, FND_API.G_MISS_DATE,
890                                                   fin_plan_end_date, p_fin_plan_end_date)
891  ,fin_plan_preference_code = DECODE( p_fin_plan_preference_code,
892                                                                  FND_API.G_MISS_CHAR,
896                                                  cost_amount_set_id, p_cost_amount_set_id)
893                                          fin_plan_preference_code,
894                                          p_fin_plan_preference_code)
895  ,cost_amount_set_id = DECODE( p_cost_amount_set_id, FND_API.G_MISS_NUM,
897  ,revenue_amount_set_id = DECODE( p_revenue_amount_set_id, FND_API.G_MISS_NUM,
898                                                     revenue_amount_set_id,
899                                   p_revenue_amount_set_id)
900  ,all_amount_set_id = DECODE( p_all_amount_set_id, FND_API.G_MISS_NUM,
901                                                 all_amount_set_id, p_all_amount_set_id)
902  ,cost_fin_plan_level_code = DECODE( p_cost_fin_plan_level_code,
903                                                           FND_API.G_MISS_CHAR,
904                                      cost_fin_plan_level_code,
905                                      p_cost_fin_plan_level_code)
906  ,cost_time_phased_code = DECODE( p_cost_time_phased_code, FND_API.G_MISS_CHAR,
907                                                     cost_time_phased_code,
908                                   p_cost_time_phased_code)
909  ,cost_resource_list_id = DECODE( p_cost_resource_list_id, FND_API.G_MISS_NUM,
910                                                     cost_resource_list_id,
911                                   p_cost_resource_list_id)
912  ,revenue_fin_plan_level_code = DECODE( p_revenue_fin_plan_level_code,
913                                                                 FND_API.G_MISS_CHAR,
914                                         revenue_fin_plan_level_code,
915                                         p_revenue_fin_plan_level_code)
916  ,revenue_time_phased_code = DECODE( p_revenue_time_phased_code,
917                                                           FND_API.G_MISS_CHAR,
918                                      revenue_time_phased_code,
919                                      p_revenue_time_phased_code)
920  ,revenue_resource_list_id = DECODE( p_revenue_resource_list_id,
921                                                           FND_API.G_MISS_NUM,
922                                      revenue_resource_list_id,
923                                      p_revenue_resource_list_id)
924  ,all_fin_plan_level_code = DECODE( p_all_fin_plan_level_code,
925                                                          FND_API.G_MISS_CHAR,
926                                     all_fin_plan_level_code,
927                                     p_all_fin_plan_level_code)
928  ,all_time_phased_code = DECODE( p_all_time_phased_code, FND_API.G_MISS_CHAR,
929                                                    all_time_phased_code, p_all_time_phased_code)
930  ,all_resource_list_id = DECODE( p_all_resource_list_id, FND_API.G_MISS_NUM,
931                                                    all_resource_list_id, p_all_resource_list_id)
932  ,report_labor_hrs_from_code = DECODE( p_report_labor_hrs_from_code,
933                                                                 FND_API.G_MISS_CHAR,
934                                         report_labor_hrs_from_code,
935                                         p_report_labor_hrs_from_code)
936  ,fin_plan_version_id = DECODE( p_fin_plan_version_id, FND_API.G_MISS_NUM,
937                                                  fin_plan_version_id, p_fin_plan_version_id)
938  ,plan_in_multi_curr_flag          = DECODE(p_plan_in_multi_curr_flag         ,
939                 FND_API.G_MISS_CHAR  ,plan_in_multi_curr_flag, p_plan_in_multi_curr_flag )
940  ,factor_by_code                   = DECODE(p_factor_by_code                  ,
941                 FND_API.G_MISS_CHAR  ,factor_by_code ,p_factor_by_code)
942  ,default_amount_type_code         = DECODE(p_default_amount_type_code        ,
943                 FND_API.G_MISS_CHAR,default_amount_type_code, p_default_amount_type_code)
944  ,default_amount_subtype_code      = DECODE(p_default_amount_subtype_code     ,
945                 FND_API.G_MISS_CHAR,default_amount_subtype_code, p_default_amount_subtype_code      )
946  ,approved_cost_plan_type_flag     = DECODE(p_approved_cost_plan_type_flag    ,
947                 FND_API.G_MISS_CHAR,approved_cost_plan_type_flag, p_approved_cost_plan_type_flag     )
948  ,approved_rev_plan_type_flag      = DECODE(p_approved_rev_plan_type_flag     ,
949                 FND_API.G_MISS_CHAR,approved_rev_plan_type_flag, p_approved_rev_plan_type_flag      )
950  ,projfunc_cost_rate_type          = DECODE(p_projfunc_cost_rate_type         ,
951                 FND_API.G_MISS_CHAR,projfunc_cost_rate_type,p_projfunc_cost_rate_type          )
952  ,projfunc_cost_rate_date_type     = DECODE(p_projfunc_cost_rate_date_type    ,
953                 FND_API.G_MISS_CHAR,projfunc_cost_rate_date_type, p_projfunc_cost_rate_date_type     )
954  ,projfunc_cost_rate_date          = DECODE(p_projfunc_cost_rate_date         ,
955                 FND_API.G_MISS_DATE,projfunc_cost_rate_date, p_projfunc_cost_rate_date          )
956  ,projfunc_rev_rate_type           = DECODE(p_projfunc_rev_rate_type          ,
957                 FND_API.G_MISS_CHAR,projfunc_rev_rate_type, p_projfunc_rev_rate_type           )
958  ,projfunc_rev_rate_date_type      = DECODE(p_projfunc_rev_rate_date_type     ,
959                 FND_API.G_MISS_CHAR,projfunc_rev_rate_date_type, p_projfunc_rev_rate_date_type      )
960  ,projfunc_rev_rate_date           = DECODE(p_projfunc_rev_rate_date          ,
961                 FND_API.G_MISS_DATE,projfunc_rev_rate_date, p_projfunc_rev_rate_date           )
962  ,project_cost_rate_type           = DECODE(p_project_cost_rate_type          ,
963                 FND_API.G_MISS_CHAR,project_cost_rate_type, p_project_cost_rate_type           )
967                 FND_API.G_MISS_DATE,project_cost_rate_date, p_project_cost_rate_date           )
964  ,project_cost_rate_date_type      = DECODE(p_project_cost_rate_date_type     ,
965                 FND_API.G_MISS_CHAR,project_cost_rate_date_type, p_project_cost_rate_date_type      )
966  ,project_cost_rate_date           = DECODE(p_project_cost_rate_date          ,
968  ,project_rev_rate_type            = DECODE(p_project_rev_rate_type           ,
969                 FND_API.G_MISS_CHAR,project_rev_rate_type, p_project_rev_rate_type            )
970  ,project_rev_rate_date_type       = DECODE(p_project_rev_rate_date_type      ,
971                 FND_API.G_MISS_CHAR,project_rev_rate_date_type, p_project_rev_rate_date_type       )
972  ,project_rev_rate_date            = DECODE(p_project_rev_rate_date           ,
973                 FND_API.G_MISS_DATE,project_rev_rate_date, p_project_rev_rate_date            )
974  ,margin_derived_from_code         = DECODE(p_margin_derived_from_code        ,
975                 FND_API.G_MISS_CHAR,margin_derived_from_code, p_margin_derived_from_code         )
976  ,select_cost_res_auto_flag        = DECODE( p_select_cost_res_auto_flag      ,
977                 FND_API.G_MISS_CHAR, select_cost_res_auto_flag, p_select_cost_res_auto_flag)
978  ,cost_res_planning_level          = DECODE( p_cost_res_planning_level        ,
979                 FND_API.G_MISS_CHAR, cost_res_planning_level, p_cost_res_planning_level)
980  ,select_rev_res_auto_flag         = DECODE( p_select_rev_res_auto_flag       ,
981                 FND_API.G_MISS_CHAR, select_rev_res_auto_flag, p_select_rev_res_auto_flag)
982  ,revenue_res_planning_level       = DECODE( p_revenue_res_planning_level     ,
983                 FND_API.G_MISS_CHAR, revenue_res_planning_level, p_revenue_res_planning_level)
984  ,select_all_res_auto_flag         = DECODE( p_select_all_res_auto_flag       ,
985                 FND_API.G_MISS_CHAR, select_all_res_auto_flag, p_select_all_res_auto_flag)
986  ,all_res_planning_level           = DECODE( p_all_res_planning_level         ,
987                 FND_API.G_MISS_CHAR, all_res_planning_level, p_all_res_planning_level)
988  ,last_update_date = sysdate
989  ,last_updated_by = fnd_global.user_id
990  ,last_update_login = fnd_global.login_id
991  ,primary_cost_forecast_flag       = DECODE(p_primary_cost_forecast_flag,
992                 FND_API.G_MISS_CHAR, primary_cost_forecast_flag, p_primary_cost_forecast_flag)
993  ,primary_rev_forecast_flag        = DECODE(p_primary_rev_forecast_flag,
994                 FND_API.G_MISS_CHAR, primary_rev_forecast_flag, p_primary_rev_forecast_flag)
995  ,use_planning_rates_flag          = DECODE(p_use_planning_rates_flag,
996                 FND_API.G_MISS_CHAR, use_planning_rates_flag, p_use_planning_rates_flag)
997  ,rbs_version_id            = DECODE(p_rbs_version_id,
998                 FND_API.G_MISS_NUM,  rbs_version_id,  p_rbs_version_id)
999  ,res_class_raw_cost_sch_id        = DECODE(p_res_class_raw_cost_sch_id,
1000                 FND_API.G_MISS_NUM,  res_class_raw_cost_sch_id, p_res_class_raw_cost_sch_id)
1001  ,res_class_bill_rate_sch_id       = DECODE(p_res_class_bill_rate_sch_id,
1002                 FND_API.G_MISS_NUM,  res_class_bill_rate_sch_id, p_res_class_bill_rate_sch_id)
1003  ,cost_emp_rate_sch_id             = DECODE(p_cost_emp_rate_sch_id,
1004                 FND_API.G_MISS_NUM,  cost_emp_rate_sch_id, p_cost_emp_rate_sch_id)
1005  ,cost_job_rate_sch_id             = DECODE(p_cost_job_rate_sch_id,
1006                 FND_API.G_MISS_NUM,  cost_job_rate_sch_id,  p_cost_job_rate_sch_id)
1007  ,cost_non_labor_res_rate_sch_id   = DECODE(P_CST_NON_LABR_RES_RATE_SCH_ID,
1008                 FND_API.G_MISS_NUM,  cost_non_labor_res_rate_sch_id, P_CST_NON_LABR_RES_RATE_SCH_ID)
1009  ,cost_res_class_rate_sch_id       = DECODE(p_cost_res_class_rate_sch_id,
1010                 FND_API.G_MISS_NUM,  cost_res_class_rate_sch_id, p_cost_res_class_rate_sch_id)
1011  ,cost_burden_rate_sch_id          = DECODE(p_cost_burden_rate_sch_id,
1012                 FND_API.G_MISS_NUM,  cost_burden_rate_sch_id, p_cost_burden_rate_sch_id)
1013  ,cost_current_planning_period     = DECODE(p_cost_current_planning_period,
1014                 FND_API.G_MISS_CHAR, cost_current_planning_period, p_cost_current_planning_period)
1015  ,cost_period_mask_id              = DECODE(p_cost_period_mask_id,
1016                 FND_API.G_MISS_NUM,  cost_period_mask_id, p_cost_period_mask_id)
1017  ,rev_emp_rate_sch_id              = DECODE(p_rev_emp_rate_sch_id,
1018                 FND_API.G_MISS_NUM,  rev_emp_rate_sch_id, p_rev_emp_rate_sch_id)
1019  ,rev_job_rate_sch_id              = DECODE(p_rev_job_rate_sch_id,
1020                 FND_API.G_MISS_NUM,  rev_job_rate_sch_id, p_rev_job_rate_sch_id)
1021  ,rev_non_labor_res_rate_sch_id    = DECODE(P_REV_NON_LABR_RES_RATE_SCH_ID,
1022                 FND_API.G_MISS_NUM,  rev_non_labor_res_rate_sch_id, P_REV_NON_LABR_RES_RATE_SCH_ID)
1023  ,rev_res_class_rate_sch_id        = DECODE(p_rev_res_class_rate_sch_id,
1024                 FND_API.G_MISS_NUM,  rev_res_class_rate_sch_id, p_rev_res_class_rate_sch_id)
1025  ,rev_current_planning_period      = DECODE(p_rev_current_planning_period,
1026                 FND_API.G_MISS_CHAR, rev_current_planning_period, p_rev_current_planning_period)
1027  ,rev_period_mask_id               = DECODE(p_rev_period_mask_id,
1028                 FND_API.G_MISS_NUM,  rev_period_mask_id, p_rev_period_mask_id)
1029  /** Bug 3580727
1030      ,all_emp_rate_sch_id              = DECODE(p_all_emp_rate_sch_id,
1031                     FND_API.G_MISS_NUM,  all_emp_rate_sch_id, p_all_emp_rate_sch_id)
1032      ,all_job_rate_sch_id              = DECODE(p_all_job_rate_sch_id,
1033                     FND_API.G_MISS_NUM,  all_job_rate_sch_id, p_all_job_rate_sch_id)
1034      ,all_non_labor_res_rate_sch_id    = DECODE(P_ALL_NON_LABR_RES_RATE_SCH_ID,
1035                     FND_API.G_MISS_NUM,  all_non_labor_res_rate_sch_id, P_ALL_NON_LABR_RES_RATE_SCH_ID)
1039                     FND_API.G_MISS_NUM,  all_burden_rate_sch_id, p_all_burden_rate_sch_id)
1036      ,all_res_class_rate_sch_id        = DECODE(p_all_res_class_rate_sch_id,
1037                     FND_API.G_MISS_NUM,  all_res_class_rate_sch_id, p_all_res_class_rate_sch_id)
1038      ,all_burden_rate_sch_id           = DECODE(p_all_burden_rate_sch_id,
1040  **/
1041  ,all_current_planning_period      = DECODE(p_all_current_planning_period,
1042                 FND_API.G_MISS_CHAR, all_current_planning_period, p_all_current_planning_period)
1043  ,all_period_mask_id               = DECODE(p_all_period_mask_id,
1044                 FND_API.G_MISS_NUM,  all_period_mask_id,  p_all_period_mask_id)
1045  ,gen_cost_src_code                = DECODE(p_gen_cost_src_code,
1046                 FND_API.G_MISS_CHAR, gen_cost_src_code,  p_gen_cost_src_code)
1047  ,gen_cost_etc_src_code            = DECODE(p_gen_cost_etc_src_code,
1048                 FND_API.G_MISS_CHAR, gen_cost_etc_src_code, p_gen_cost_etc_src_code)
1049  ,gen_cost_incl_change_doc_flag    = DECODE(P_GN_COST_INCL_CHANGE_DOC_FLAG,
1050                 FND_API.G_MISS_CHAR, gen_cost_incl_change_doc_flag, P_GN_COST_INCL_CHANGE_DOC_FLAG)
1051  ,gen_cost_incl_open_comm_flag     = DECODE(p_gen_cost_incl_open_comm_flag,
1052                 FND_API.G_MISS_CHAR, gen_cost_incl_open_comm_flag, p_gen_cost_incl_open_comm_flag)
1053  ,gen_cost_ret_manual_line_flag    = DECODE(P_GN_COST_RET_MANUAL_LINE_FLAG,
1054                 FND_API.G_MISS_CHAR, gen_cost_ret_manual_line_flag, P_GN_COST_RET_MANUAL_LINE_FLAG)
1055  ,gen_cost_incl_unspent_amt_flag   = DECODE(P_GN_CST_INCL_UNSPENT_AMT_FLAG,
1056                 FND_API.G_MISS_CHAR, gen_cost_incl_unspent_amt_flag, P_GN_CST_INCL_UNSPENT_AMT_FLAG)
1057  ,gen_rev_src_code                 = DECODE(p_gen_rev_src_code,
1058                 FND_API.G_MISS_CHAR, gen_rev_src_code, p_gen_rev_src_code)
1059  ,gen_rev_etc_src_code             = DECODE(p_gen_rev_etc_src_code,
1060                 FND_API.G_MISS_CHAR, gen_rev_etc_src_code,  p_gen_rev_etc_src_code)
1061  ,gen_rev_incl_change_doc_flag     = DECODE(p_gen_rev_incl_change_doc_flag,
1062                 FND_API.G_MISS_CHAR, gen_rev_incl_change_doc_flag, p_gen_rev_incl_change_doc_flag)
1063  ,gen_rev_incl_bill_event_flag     = DECODE(p_gen_rev_incl_bill_event_flag,
1064                 FND_API.G_MISS_CHAR, gen_rev_incl_bill_event_flag, p_gen_rev_incl_bill_event_flag)
1065  ,gen_rev_ret_manual_line_flag     = DECODE(p_gen_rev_ret_manual_line_flag,
1066                 FND_API.G_MISS_CHAR, gen_rev_ret_manual_line_flag,  p_gen_rev_ret_manual_line_flag)
1067  /** Bug 3580727
1068      ,gen_rev_incl_unspent_amt_flag    = DECODE(P_GN_REV_INCL_UNSPENT_AMT_FLAG,
1069                     FND_API.G_MISS_CHAR, gen_rev_incl_unspent_amt_flag, P_GN_REV_INCL_UNSPENT_AMT_FLAG)
1070  **/
1071  ,gen_src_cost_plan_type_id        = DECODE(p_gen_src_cost_plan_type_id,
1072                 FND_API.G_MISS_NUM,  gen_src_cost_plan_type_id,  p_gen_src_cost_plan_type_id)
1073  ,gen_src_cost_plan_version_id     = DECODE(p_gen_src_cost_plan_version_id,
1074                 FND_API.G_MISS_NUM, gen_src_cost_plan_version_id, p_gen_src_cost_plan_version_id)
1075  ,gen_src_cost_plan_ver_code       = DECODE(p_gen_src_cost_plan_ver_code,
1076                 FND_API.G_MISS_CHAR, gen_src_cost_plan_ver_code, p_gen_src_cost_plan_ver_code)
1077  ,gen_src_rev_plan_type_id         = DECODE(p_gen_src_rev_plan_type_id,
1078                 FND_API.G_MISS_NUM,  gen_src_rev_plan_type_id, p_gen_src_rev_plan_type_id)
1079  ,gen_src_rev_plan_version_id      = DECODE(p_gen_src_rev_plan_version_id,
1080                 FND_API.G_MISS_NUM,  gen_src_rev_plan_version_id,p_gen_src_rev_plan_version_id)
1081  ,gen_src_rev_plan_ver_code       = DECODE(p_gen_src_rev_plan_ver_code,
1082                 FND_API.G_MISS_CHAR, gen_src_rev_plan_ver_code, p_gen_src_rev_plan_ver_code)
1083  ,gen_src_all_plan_type_id        = DECODE(p_gen_src_all_plan_type_id,
1084                 FND_API.G_MISS_NUM, gen_src_all_plan_type_id, p_gen_src_all_plan_type_id)
1085  ,gen_src_all_plan_version_id     = DECODE(p_gen_src_all_plan_version_id,
1086                 FND_API.G_MISS_NUM, gen_src_all_plan_version_id, p_gen_src_all_plan_version_id)
1087  ,gen_src_all_plan_ver_code       = DECODE(p_gen_src_all_plan_ver_code,
1088                 FND_API.G_MISS_CHAR,gen_src_all_plan_ver_code, p_gen_src_all_plan_ver_code)
1089  ,gen_all_src_code                = DECODE(p_gen_all_src_code,
1090                 FND_API.G_MISS_CHAR,gen_all_src_code, p_gen_all_src_code)
1091  ,gen_all_etc_src_code            = DECODE(p_gen_all_etc_src_code,
1092                 FND_API.G_MISS_CHAR, gen_all_etc_src_code,  p_gen_all_etc_src_code)
1093  ,gen_all_incl_change_doc_flag    = DECODE(p_gen_all_incl_change_doc_flag,
1094                 FND_API.G_MISS_CHAR,gen_all_incl_change_doc_flag, p_gen_all_incl_change_doc_flag)
1095  ,gen_all_incl_open_comm_flag     = DECODE(p_gen_all_incl_open_comm_flag,
1096                 FND_API.G_MISS_CHAR,gen_all_incl_open_comm_flag, p_gen_all_incl_open_comm_flag)
1097  ,gen_all_ret_manual_line_flag    = DECODE(p_gen_all_ret_manual_line_flag,
1098                 FND_API.G_MISS_CHAR,gen_all_ret_manual_line_flag, p_gen_all_ret_manual_line_flag)
1099  ,gen_all_incl_bill_event_flag    = DECODE(p_gen_all_incl_bill_event_flag,
1100                 FND_API.G_MISS_CHAR,gen_all_incl_bill_event_flag, p_gen_all_incl_bill_event_flag)
1101  ,gen_all_incl_unspent_amt_flag   = DECODE(P_GN_ALL_INCL_UNSPENT_AMT_FLAG,
1102                 FND_API.G_MISS_CHAR,gen_all_incl_unspent_amt_flag, P_GN_ALL_INCL_UNSPENT_AMT_FLAG)
1103  ,gen_cost_actual_amts_thru_code  = DECODE(P_GN_CST_ACTUAL_AMTS_THRU_CODE,
1104                 FND_API.G_MISS_CHAR,gen_cost_actual_amts_thru_code, P_GN_CST_ACTUAL_AMTS_THRU_CODE)
1105  ,gen_rev_actual_amts_thru_code   = DECODE(P_GN_REV_ACTUAL_AMTS_THRU_CODE,
1106                 FND_API.G_MISS_CHAR,gen_rev_actual_amts_thru_code, P_GN_REV_ACTUAL_AMTS_THRU_CODE)
1107  ,gen_all_actual_amts_thru_code   = DECODE(P_GN_ALL_ACTUAL_AMTS_THRU_CODE,
1111  -- bug 3519062 start of workplan generation source related columns
1108                 FND_API.G_MISS_CHAR,gen_all_actual_amts_thru_code, P_GN_ALL_ACTUAL_AMTS_THRU_CODE)
1109  ,track_workplan_costs_flag      = DECODE(p_track_workplan_costs_flag,
1110                 FND_API.G_MISS_CHAR,track_workplan_costs_flag, p_track_workplan_costs_flag)
1112  ,gen_src_cost_wp_version_id     = DECODE(p_gen_src_cost_wp_version_id,
1113                 FND_API.G_MISS_NUM, gen_src_cost_wp_version_id, p_gen_src_cost_wp_version_id)
1114  ,gen_src_cost_wp_ver_code       = DECODE(p_gen_src_cost_wp_ver_code,
1115                 FND_API.G_MISS_CHAR,gen_src_cost_wp_ver_code, p_gen_src_cost_wp_ver_code)
1116  ,gen_src_rev_wp_version_id     = DECODE(p_gen_src_rev_wp_version_id,
1117                 FND_API.G_MISS_NUM, gen_src_rev_wp_version_id, p_gen_src_rev_wp_version_id)
1118  ,gen_src_rev_wp_ver_code       = DECODE(p_gen_src_rev_wp_ver_code,
1119                 FND_API.G_MISS_CHAR,gen_src_rev_wp_ver_code, p_gen_src_rev_wp_ver_code)
1120  ,gen_src_all_wp_version_id     = DECODE(p_gen_src_all_wp_version_id,
1121                 FND_API.G_MISS_NUM, gen_src_all_wp_version_id, p_gen_src_all_wp_version_id)
1122  ,gen_src_all_wp_ver_code       = DECODE(p_gen_src_all_wp_ver_code,
1123                 FND_API.G_MISS_CHAR,gen_src_all_wp_ver_code, p_gen_src_all_wp_ver_code)
1124  -- bug 3519062 start of workplan generation source related columns
1125 ,cost_layout_code              = DECODE(p_cost_layout_code,
1126                 FND_API.G_MISS_CHAR, cost_layout_code, p_cost_layout_code)
1127 ,revenue_layout_code              = DECODE(p_revenue_layout_code,
1128                 FND_API.G_MISS_CHAR, revenue_layout_code, p_revenue_layout_code)
1129 ,all_layout_code              = DECODE(p_all_layout_code,
1130                 FND_API.G_MISS_CHAR, all_layout_code, p_all_layout_code)
1131 ,revenue_derivation_method    = DECODE(p_revenue_derivation_method,
1132                    FND_API.G_MISS_CHAR, revenue_derivation_method,p_revenue_derivation_method) -- Bug 5462471
1133   WHERE proj_fp_options_id = p_proj_fp_options_id
1134    AND nvl(p_record_version_number, nvl(record_version_number,0)) =
1135                                     nvl(record_version_number,0);
1136 
1137     IF (SQL%NOTFOUND) THEN
1138          PA_UTILS.Add_Message ( p_app_short_name => 'PA'
1139                                ,p_msg_name       => 'PA_XC_RECORD_CHANGED');
1140          x_return_status := FND_API.G_RET_STS_ERROR;
1141     END IF;
1142 EXCEPTION
1143   WHEN OTHERS THEN
1144        FND_MSG_PUB.add_exc_msg( p_pkg_name
1145                                 => 'PA_PROJ_FP_OPTIONS_PKG'
1146                                ,p_procedure_name
1147                                 => 'Update_Row');
1148        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1149        RAISE;
1150 END Update_Row;
1151 
1152 PROCEDURE Delete_Row
1153 ( p_proj_fp_options_id   IN pa_proj_fp_options.proj_fp_options_id%TYPE
1154                                       := FND_API.G_MISS_NUM
1155  ,p_record_version_number          IN NUMBER
1156                                                            := NULL
1157  ,p_row_id                         IN ROWID
1158                                                            := NULL
1159  ,x_return_status                 OUT NOCOPY VARCHAR2) --File.Sql.39 bug 4440895
1160 IS
1161 BEGIN
1162     x_return_status := FND_API.G_RET_STS_SUCCESS;
1163 
1164     IF (p_proj_fp_options_id IS NOT NULL AND
1165            p_proj_fp_options_id <> FND_API.G_MISS_NUM) THEN
1166 
1167         DELETE FROM pa_proj_fp_options
1168          WHERE proj_fp_options_id = p_proj_fp_options_id
1169            AND nvl(p_record_version_number, nvl(record_version_number,0)) =
1170                                             nvl(record_version_number,0);
1171     ELSIF (p_row_id IS NOT NULL) THEN
1172         DELETE FROM pa_proj_fp_options
1173          WHERE rowid = p_row_id
1174            AND nvl(p_record_version_number, nvl(record_version_number,0)) =
1175                                             nvl(record_version_number,0);
1176     END IF;
1177 
1178     IF (SQL%NOTFOUND) THEN
1179          PA_UTILS.Add_Message ( p_app_short_name => 'PA'
1180                                ,p_msg_name       => 'PA_XC_RECORD_CHANGED');
1181          x_return_status := FND_API.G_RET_STS_ERROR;
1182     END IF;
1183 
1184 EXCEPTION
1185   WHEN OTHERS THEN
1186        FND_MSG_PUB.add_exc_msg( p_pkg_name
1187                                 => 'PA_PROJ_FP_OPTIONS_PKG'
1188                                ,p_procedure_name
1189                                     => 'Delete_Row');
1190        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1191        RAISE;
1192 END Delete_Row;
1193 
1194 PROCEDURE Lock_Row
1195 ( p_proj_fp_options_id   IN pa_proj_fp_options.proj_fp_options_id%TYPE
1196                                       := FND_API.G_MISS_NUM
1197  ,p_record_version_number          IN NUMBER
1198                                                            := NULL
1199  ,p_row_id                         IN ROWID
1200                                                            := NULL
1201  ,x_return_status                 OUT NOCOPY VARCHAR2) --File.Sql.39 bug 4440895
1202 IS
1203   l_row_id ROWID;
1204 BEGIN
1205        x_return_status := FND_API.G_RET_STS_SUCCESS;
1206 
1207        SELECT rowid into l_row_id
1208          FROM pa_proj_fp_options
1209         WHERE proj_fp_options_id =  p_proj_fp_options_id
1210            OR rowid = p_row_id
1211           FOR UPDATE NOWAIT;
1212 
1213 EXCEPTION
1214   WHEN OTHERS THEN
1215        FND_MSG_PUB.add_exc_msg( p_pkg_name
1216                                 => 'PA_PROJ_FP_OPTIONS_PKG'
1217                                ,p_procedure_name
1218                                     => 'Lock_Row');
1219        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1220        RAISE;
1221 END Lock_Row;
1222 
1223 END pa_proj_fp_options_pkg;