1 Package hr_scl_upd AUTHID CURRENT_USER as
2 /* $Header: hrsclrhi.pkh 115.4 2002/12/03 08:22:25 raranjan ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |-----------------------------< convert_defs >-----------------------------|
6 -- ----------------------------------------------------------------------------
7 -- {Start Of Comments}
8 --
9 -- Description:
10 -- The Convert_Defs procedure has one very important function:
11 -- It must return the record structure for the row with all system defaulted
12 -- values converted into its corresponding argument value for update. When
13 -- we attempt to update a row through the Upd business process , certain
14 -- arguments can be defaulted which enables flexibility in the calling of
15 -- the upd process (e.g. only attributes which need to be updated need to be
16 -- specified). For the upd business process to determine which attributes
17 -- have NOT been specified we need to check if the argument has a reserved
18 -- system default value. Therefore, for all attributes which have a
19 -- corresponding reserved system default mechanism specified we need to
20 -- check if a system default is being used. If a system default is being
21 -- used then we convert the defaulted value into its corresponding attribute
22 -- value held in the g_old_rec data structure.
23 --
24 -- Pre Conditions:
25 -- This private function can only be called from the upd process.
26 --
27 -- In Parameters:
28 -- A Pl/Sql record structre.
29 --
30 -- Post Success:
31 -- The record structure will be returned with all system defaulted argument
32 -- values converted into its current row attribute value.
33 --
34 -- Post Failure:
35 -- No direct error handling is required within this function. Any possible
36 -- errors within this procedure will be a PL/SQL value error due to
37 -- conversion of datatypes or data lengths.
38 --
39 -- Developer Implementation Notes:
40 -- None.
41 --
42 -- Access Status:
43 -- Internal Table Handler Use Only.
44 --
45 -- {End Of Comments}
46 -- ----------------------------------------------------------------------------
47 Procedure convert_defs(p_rec in out nocopy hr_scl_shd.g_rec_type);
48 --
49 -- ----------------------------------------------------------------------------
50 -- |-------------------------------< upd_or_sel >-----------------------------|
51 -- ----------------------------------------------------------------------------
52 -- {Start Of Comments}
53 --
54 -- Description:
55 -- This procedure controls the processing required to either insert a new
56 -- combination or update the existing one. This procedure has the same
57 -- functionality of hr_scl_ins.ins_or_sel except is has to take into
58 -- account the building of a partially specified interface by making calls
59 -- in convert_args and convert_defs.
60 -- 1. If a combination does not exist a new combination is inserted
61 -- returning the new p_soft_coding_keyflex_id.
62 -- 2. If a combination exists the out arguments are set.
63 -- 4. If the segments are null (i.e. a null combination) then the out
64 -- arguments are set to null.
65 --
66 -- Pre Conditions:
67 --
68 -- In Parameters:
69 -- p_business_group_id => is specified to enable the derivation of the
70 -- id_flex_num within the process
71 -- hr_scl_shd.segment_combination_check.
72 --
73 -- Post Success:
74 -- If a combination already exists the out arguments are returned.
75 -- If a combination does not exist then the combination is inserted into
76 -- the soft coded table and the out arguments are returned.
77 -- Processing continues.
78 --
79 -- Post Failure:
80 -- This process has no specific error handling and will only error if an
81 -- application error has ocurred at a lower level.
82 --
83 -- Developer Implementation Notes:
84 -- None.
85 --
86 -- Access Status:
87 -- Internal Development Use Only.
88 --
89 -- {End Of Comments}
90 -- ----------------------------------------------------------------------------
91 procedure upd_or_sel
92 (p_segment1 in varchar2 default hr_api.g_varchar2,
93 p_segment2 in varchar2 default hr_api.g_varchar2,
94 p_segment3 in varchar2 default hr_api.g_varchar2,
95 p_segment4 in varchar2 default hr_api.g_varchar2,
96 p_segment5 in varchar2 default hr_api.g_varchar2,
97 p_segment6 in varchar2 default hr_api.g_varchar2,
98 p_segment7 in varchar2 default hr_api.g_varchar2,
99 p_segment8 in varchar2 default hr_api.g_varchar2,
100 p_segment9 in varchar2 default hr_api.g_varchar2,
101 p_segment10 in varchar2 default hr_api.g_varchar2,
102 p_segment11 in varchar2 default hr_api.g_varchar2,
103 p_segment12 in varchar2 default hr_api.g_varchar2,
104 p_segment13 in varchar2 default hr_api.g_varchar2,
105 p_segment14 in varchar2 default hr_api.g_varchar2,
106 p_segment15 in varchar2 default hr_api.g_varchar2,
107 p_segment16 in varchar2 default hr_api.g_varchar2,
108 p_segment17 in varchar2 default hr_api.g_varchar2,
109 p_segment18 in varchar2 default hr_api.g_varchar2,
110 p_segment19 in varchar2 default hr_api.g_varchar2,
111 p_segment20 in varchar2 default hr_api.g_varchar2,
112 p_segment21 in varchar2 default hr_api.g_varchar2,
113 p_segment22 in varchar2 default hr_api.g_varchar2,
114 p_segment23 in varchar2 default hr_api.g_varchar2,
115 p_segment24 in varchar2 default hr_api.g_varchar2,
116 p_segment25 in varchar2 default hr_api.g_varchar2,
117 p_segment26 in varchar2 default hr_api.g_varchar2,
118 p_segment27 in varchar2 default hr_api.g_varchar2,
119 p_segment28 in varchar2 default hr_api.g_varchar2,
120 p_segment29 in varchar2 default hr_api.g_varchar2,
121 p_segment30 in varchar2 default hr_api.g_varchar2,
122 p_business_group_id in number,
123 p_request_id in number default hr_api.g_number,
124 p_program_application_id in number default hr_api.g_number,
125 p_program_id in number default hr_api.g_number,
126 p_program_update_date in date default hr_api.g_date,
127 p_soft_coding_keyflex_id in out nocopy number,
128 p_concatenated_segments out nocopy varchar2,
129 p_validate in boolean default false);
130 --
131 end hr_scl_upd;