1 PACKAGE body PSB_WS_AMOUNTS_SETUP as
2 /* $Header: PSBVWASB.pls 115.3 2002/11/22 07:39:04 pmamdaba ship $ */
3 ------------------------------------------------------------------------------------------
4 ------------------------------------------------------------------------------------------
5
6 Function ws_get_totals( p_worksheet_id in number, p_stage in number,
7 p_position_line_id in number, p_service_package_id in number,
8 p_element_set_id in number, p_budget_year_id in number)
9 RETURN NUMBER IS
10
11 t_amount number;
12
13 Begin
14 Begin
15 Select sum(WAL.Ytd_Amount)
16 Into t_amount
17 From PSB_WS_LINES_POSITIONS WL,
18 PSB_WS_ACCOUNT_LINES WAL
19 Where WL.WORKSHEET_ID = p_worksheet_id
20 and WL.POSITION_LINE_ID = WAL.POSITION_LINE_ID
21 and WL.VIEW_LINE_FLAG = 'Y'
22 and WAL.Position_line_ID = p_position_line_id
23 and WAL.Service_Package_ID = p_service_package_id
24 and WAL.Element_Set_ID = p_element_set_id
25 and WAL.Budget_Year_ID = p_budget_year_id
26 and ((psb_ws_matrix.get_ws_line_year_st = 0
27 and wal.end_stage_seq is null)
28 or
29 (psb_ws_matrix.get_ws_line_year_st between
30 wal.start_stage_seq and nvl(wal.end_stage_seq, 9.99e125)));
31 -- and p_stage between WAL.START_STAGE_SEQ AND WAL.CURRENT_STAGE_SEQ;
32 Exception When No_Data_Found then
33 Null;
34 End;
35 if t_amount = 0 then
36 return(1);
37 end if;
38
39 return(t_amount);
40 End;
41
42 End psb_ws_amounts_setup;