1 package wms_atf_reg_cust_apis AUTHID CURRENT_USER as
2 /* $Header: WMSARCAS.pls 115.2 2004/05/04 00:27:24 joabraha noship $ */
3 -- Package Variables
4 --
5 g_package varchar2(33) := ' wms_atf_reg_cust_apis.';
6 --
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------<Table type definition for Signature information>------------|
10 -- ----------------------------------------------------------------------------
11 --
12 type hook_parameter_rec_type is record(
13 parameter_name varchar2(240)
14 , parameter_type varchar2(240)
15 , parameter_in_out varchar2(10)
16 , parameter_flag varchar2(1)
17 );
18
19 type hook_parameter_table_type is table of hook_parameter_rec_type index by binary_integer;
20 --
21 -- ---------------------------------------------------------------------------
22 -- |--------------------------< trace utility >-------------------------------|
23 -- ---------------------------------------------------------------------------
24 -- {Start Of Comments}
25 --
26 -- Description:
27 -- Wrapper around the tracing utility.
28 --
29 -- Prerequisites:
30 -- None
31 --
32 -- In Parameters:
33 -- Name Reqd Type Description
34 -- --------- ----- -------- --------------------------------------------
35 -- p_message Yes varchar2 Message to be displayed in the log file.
36 -- p_level No number Level default to the lowest if not specified.
37 --
38 -- Post Success:
39 -- None.
40 --
41 -- Post Failure:
42 -- None
43 --
44 -- Access Status:
45 -- Internal Development Use Only.
46 --
47 -- {End Of Comments}
48 --
49 Procedure trace(
50 p_message in varchar2
51 , p_level in number default 4
52 );
53 --
54 --
55 -- ----------------------------------------------------------------------------
56 -- |-----------------------< validate_call_signature >-------------------------|
57 -- ----------------------------------------------------------------------------
58 -- {Start Of Comments}
59 --
60 -- Description:
61 -- Validates if the call package-procedure signature matches the parent hook's
62 -- signature.
63 --
64 -- Prerequisites:
65 --
66 --
67 --
68 -- In Parameters:
69 -- Name Reqd Type Description
70 -- --------------------- ---- -------- ---------------------------
71 -- p_module_hook_id Yes number ID of the module/hook call.
72 -- p_call_package_name Yes varchar2 Name of the package to call.
73 -- p_call_procedure_name Yes varchar2 Name of the procedure within
74 -- p_call_package_name to call.
75 -- x_signature_valid No boolean True when signature matches
76 -- false for all other cases.
77 -- if invalid code should be
78 -- x_return_status Yes number Return Status
79 -- x_msg_count Yes number Message Stack Count.
80 -- x_msg_data Yes number Message Stack Data.
81 --
82 -- Post Success:
83 -- Validates and returns true .Creates source code for one package procedure call.
84 --
85 -- Post Failure:
86 -- Returns false.
87 --
88 -- Access Status:
89 -- Internal Development Use Only.
90 --
91 -- {End Of Comments}
92 --
93 Procedure validate_call_signature(
94 p_module_hook_id in number
95 , p_call_package_name in varchar2
96 , p_call_procedure_name in varchar2
97 , x_signature_valid out nocopy boolean
98 , x_retcode out nocopy number
99 , x_errbuf out nocopy varchar2
100 );
101 --
102 --
103 -- ---------------------------------------------------------------------------------
104 -- |-------------------------<create_wms_system_objects >---------------------------|
105 -- ---------------------------------------------------------------------------------
106 -- API name : Create WMS Objects.
107 -- Type : Private
108 -- Function : Returns Sub/Loc, LPN or Validation Status.
109 -- Input Parameters :
110 -- None. This API reads the Custom API Architecture tables to generate
111 -- the system files.
112 -- Output Parameters:
113 -- This API is responsible for populating/deleting records in the
114 -- wms_api_hook_calls table based on the mode in which its called.
115 -- Version :
116 -- Current version 1.0
117 --
118 -- Notes :
119 -- Date Modification Author
120 -- ------------ ------------ ------------------
121 --
122 --
123 Procedure create_wms_system_objects(
124 x_retcode out nocopy number
125 , x_errbuf out nocopy varchar2
126 );
127 --
128 --
129 -- ----------------------------------------------------------------------------------
130 -- |----------------------------< create_delete_api_call >--------------------------|
131 -- ----------------------------------------------------------------------------------
132 -- {Start Of Comments}
133 --
134 -- Description:
135 -- Populate the global PL/SQL structure(hook_parameter_table_type) with the
136 -- parameters of the signature for the Parent Module/Business Process/ PL/SQL
137 -- Package-Procedure combination
138 --
139 -- Prerequisites:
140 -- p_module_hook_id is set with the proper value.
141 --
142 --
143 -- In Parameters:
144 -- Name Reqd Type Description
145 -- -------------------- ---- -------- -------------------------------------
146 -- p_hook_short_name_id Yes varchar2 Short name for parent Module/Business
147 -- Process/ PL/SQL Package-Procedure
148 -- combination.
149 -- p_call_package Yes varchar2 Call package to be registered -- p_call_procedure Yes varchar2 Call procedure to be registered
150 -- p_effective_to_date Yes varchar2 Effective To Date.
151 -- p_mode Yes varchar2 Valid Modes are Insert, Update and
152 -- Disable.
153 -- Post Success:
154 -- Returns true. Returns a PL/SQL of type hook_parameter_table_type.
155 --
156 -- Post Failure:
157 -- Details of the error are added to the AOL message stack. When this
158 -- function returns false the error has not been raised. It is up to the
159 -- calling logic to raise or process the error.
160 --
161 -- Access Status:
162 -- Internal Development Use Only.
163 --
164 -- {End Of Comments}
165 --
166 -- Inserting should check for the following :
167 -- 1. Check to make sure that the combination does not already exist.
168 -- 2. If the combination does not exist, then make sure that the application_id
169 -- matches the one on the parent record.
170 -- 3. Make sure that the effective date is not less that the system date when
171 -- the registrtaion program is run.
172 -- 4. Make sure that
173 --
174 Procedure create_delete_api_call(
175 p_hook_short_name_id in number
176 , p_call_package in varchar2
177 , p_call_procedure in varchar2
178 , p_call_description in varchar2
179 , p_effective_to_date in date
180 , p_mode in varchar2
181 , x_retcode out nocopy number
182 , x_errbuf out nocopy varchar2
183 );
184 --
185 --
186 end wms_atf_reg_cust_apis;