DBA Data[Home] [Help]

PACKAGE: APPS.PA_CLIENT_EXTN_ALLOC

Source


1 PACKAGE PA_CLIENT_EXTN_ALLOC AUTHID CURRENT_USER AS
2 /* $Header: PAPALCCS.pls 120.2 2006/07/25 20:42:43 skannoji noship $ */
3 /*#
4  * This extension contains procedures that define the source, target, offset, and basis for an allocation rule, to define
5  * descriptive flexfields for allocation and to check dependencies.
6  * @rep:scope public
7  * @rep:product PA
8  * @rep:lifecycle active
9  * @rep:displayname Create Client Extension Allocation
10  * @rep:compatibility S
11  * @rep:category BUSINESS_ENTITY PA_PROJECT
12  * @rep:doccd 120pjapi.pdf See the Oracle Projects API's, Client Extensions, and Open Interfaces Reference
13 */
14 
15 TYPE ALLOC_SOURCE_REC IS RECORD (
16      PROJECT_ID               NUMBER ,
17      TASK_ID                  NUMBER ,
18      EXCLUDE_FLAG             VARCHAR2(1)
19                               ) ;
20 TYPE ALLOC_SOURCE_TABTYPE IS TABLE OF ALLOC_SOURCE_REC
21 INDEX BY BINARY_INTEGER ;
22 
23 TYPE ALLOC_TARGET_REC IS RECORD (
24      PROJECT_ID               NUMBER ,
25      TASK_ID                  NUMBER ,
26      PERCENT                  NUMBER ,
27      EXCLUDE_FLAG             VARCHAR2(1)
28                               ) ;
29 TYPE ALLOC_TARGET_TABTYPE IS TABLE OF ALLOC_TARGET_REC
30 INDEX BY BINARY_INTEGER ;
31 
32 TYPE ALLOC_OFFSET_REC IS RECORD (
33      PROJECT_ID               NUMBER
34 ,    TASK_ID                  NUMBER
35 ,    OFFSET_AMOUNT            NUMBER
36                               ) ;
37 
38 TYPE ALLOC_OFFSET_TABTYPE IS TABLE OF ALLOC_OFFSET_REC
39 INDEX BY BINARY_INTEGER ;
40 
41 /*#
42  * You can use this extension to define source projects and tasks.
43  *@param p_alloc_rule_id Identifier of the allocation rule
44  *@rep:paraminfo {@rep:required}
45  *@param x_source_proj_task_tbl Table defining source projects and tasks for each allocation rule. The index must be numbered sequentially from 1
46  *@rep:paraminfo {@rep:required}
47  *@param x_status Error status (0 = successful execution, <0 = Oracle error, >0 = application error)
48  *@rep:paraminfo {@rep:required}
49  *@param x_error_message Error message text
50  *@rep:paraminfo {@rep:required}
51  *@rep:scope public
52  *@rep:lifecycle active
53  *@rep:displayname Source Extension
54  *@rep:compatibility S
55 */
56 PROCEDURE source_extn( p_alloc_rule_id  IN NUMBER
57                      , x_source_proj_task_tbl OUT NOCOPY ALLOC_SOURCE_TABTYPE
58                      , x_status OUT NOCOPY NUMBER
59                      , x_error_message OUT NOCOPY VARCHAR2 );
60 
61 /*#
62  * This procedure defines offset projects and tasks. For each allocation rule, you populate the global session variable
63  * X_OFFSET_PROJ_TASK_TBL of data type table ALLOC_OFFSET_TABTYPE. The allocation run process reads the table to get the
64  * offset project, task, and offset amount for the allocation run. The sum of offset amounts assigned to each offset
65  * project and task equals the total offset amount (P_OFFSET_AMOUNT).
66  * @param p_alloc_rule_id Identifier of the allocation rule
67  * @rep:paraminfo {@rep:required}
68  * @param p_offset_amount The pool amount to be offset
69  * @rep:paraminfo {@rep:required}
70  * @param x_offset_proj_task_tbl Table defining offset information for each allocation rule. The index must be numbered sequentially from 1
71  * @rep:paraminfo {@rep:required}
72  * @param x_status Error status (0 = successful execution, <0 = Oracle error, >0 = application error)
73  * @rep:paraminfo {@rep:required}
74  * @param x_error_message Error message text
75  * @rep:paraminfo {@rep:required}
76  * @rep:scope public
77  * @rep:lifecycle active
78  * @rep:displayname Offset Extension
79  * @rep:compatibility S
80 */
81 PROCEDURE offset_extn( p_alloc_rule_id IN NUMBER
82                      , p_offset_amount IN NUMBER
83                      , x_offset_proj_task_tbl OUT NOCOPY ALLOC_OFFSET_TABTYPE
84                      , x_status OUT NOCOPY NUMBER
85                      , x_error_message OUT NOCOPY VARCHAR2 );
86 
87 /*#
88  * This procedure defines offset tasks.
89  * @param p_alloc_rule_id Identifier of the allocation rule
90  * @rep:paraminfo {@rep:required}
91  * @param p_offset_project_id The offset project
92  * @rep:paraminfo {@rep:required}
93  * @param x_offset_task_id The offset task
94  * @rep:paraminfo {@rep:required}
95  * @param x_status Error status (0 = successful execution, <0 = Oracle error, >0 = application error)
96  * @rep:paraminfo {@rep:required}
97  * @param x_error_message Error message text
98  * @rep:paraminfo {@rep:required}
99  * @rep:scope public
100  * @rep:lifecycle active
101  * @rep:displayname Offset Task Extension
102  * @rep:compatibility S
103 */
104 PROCEDURE offset_task_extn( p_alloc_rule_id     IN NUMBER
105                           , p_offset_project_id IN NUMBER
106                           , x_offset_task_id    OUT NOCOPY NUMBER
107                           , x_status OUT NOCOPY NUMBER
108                           , x_error_message OUT NOCOPY VARCHAR2 );
109 
110 /*#
111  * You can use this procedure to define amounts other than target costs for calculating the basis rate for target projects and tasks.
112  * @param p_alloc_rule_id Identifier of the allocation rule
113  * @rep:paraminfo {@rep:required}
114  * @param p_project_id Identifier of the offset project
115  * @rep:paraminfo {@rep:required}
116  * @param p_task_id Identifier of the offset task
117  * @rep:paraminfo {@rep:required}
118  * @param x_basis_amount The percentage of the pool amount allocated to this offset. (The sum of the basis amounts cannot equal zero.)
119  * @rep:paraminfo {@rep:required}
120  * @param x_status Error status (0 = successful execution, <0 = Oracle error, >0 = application error)
121  * @rep:paraminfo {@rep:required}
122  * @param x_error_message Error message text
123  * @rep:paraminfo {@rep:required}
124  * @rep:scope public
125  * @rep:lifecycle active
126  * @rep:displayname Basis Extension
127  * @rep:compatibility S
128 */
129 PROCEDURE basis_extn( p_alloc_rule_id IN  NUMBER
130                     , p_project_id    IN  NUMBER
131                     , p_task_id       IN  NUMBER
132                     , x_basis_amount  OUT NOCOPY NUMBER
133                     , x_status         OUT NOCOPY NUMBER
134                     , x_error_message OUT NOCOPY VARCHAR2 );
135 
136 /*#
137  * You can use this procedure to include or exclude projects or tasks temporarily when allocating amounts to target projects and tasks.
138  * @param p_alloc_rule_id Identifier of the allocation rule
139  * @rep:paraminfo {@rep:required}
140  * @param x_target_proj_task_tbl Table defining target projects and tasks for each allocation rule. The index must be numbered sequentially from 1
141  * @rep:paraminfo {@rep:required}
142  * @param x_status Error status (0 = successful execution, <0 = Oracle error, >0 = application error)
143  * @rep:paraminfo {@rep:required}
144  * @param x_error_message Error message text
145  * @rep:paraminfo {@rep:required}
146  * @rep:scope public
147  * @rep:lifecycle active
148  * @rep:displayname Target Extension
149  * @rep:compatibility S
150 */
151 PROCEDURE target_extn( p_alloc_rule_id  IN NUMBER
152                      , x_target_proj_task_tbl OUT NOCOPY ALLOC_TARGET_TABTYPE
153                       , x_status OUT NOCOPY NUMBER
154                      , x_error_message OUT NOCOPY VARCHAR2  );
155 
156 /*#
157  * You can use this procedure to define descriptive flexfields to be used when defining allocation rules.
158  * @param p_alloc_rule_id Identifier of the allocation rule
159  * @rep:paraminfo {@rep:required}
160  * @param p_run_id Identifier of the allocation run
161  * @rep:paraminfo {@rep:required}
162  * @param p_txn_type Type of transation: target transaction (T) or offset transaction (O)
163  * @rep:paraminfo {@rep:required}
164  * @param p_project_id Identifier of the offset project
165  * @rep:paraminfo {@rep:required}
166  * @param p_task_id Identifier of the offset task
167  * @rep:paraminfo {@rep:required}
168  * @param p_expnd_org The expenditure organization associated with the transaction
169  * @rep:paraminfo {@rep:required}
170  * @param p_expnd_type_class The expenditure type class associated with the transaction
171  * @rep:paraminfo {@rep:required}
172  * @param p_expnd_type The expenditure type
173  * @rep:paraminfo {@rep:required}
174  * @param x_attribute_category Descriptive flexfield category
175  * @rep:paraminfo {@rep:required}
176  * @param x_attribute1 Descriptive flexfield segment
177  * @rep:paraminfo {@rep:required}
178  * @param x_attribute2 Descriptive flexfield segment
179  * @rep:paraminfo {@rep:required}
180  * @param x_attribute3 Descriptive flexfield segment
181  * @rep:paraminfo {@rep:required}
182  * @param x_attribute4 Descriptive flexfield segment
183  * @rep:paraminfo {@rep:required}
184  * @param x_attribute5 Descriptive flexfield segment
185  * @rep:paraminfo {@rep:required}
186  * @param x_attribute6 Descriptive flexfield segment
187  * @rep:paraminfo {@rep:required}
188  * @param x_attribute7 Descriptive flexfield segment
189  * @rep:paraminfo {@rep:required}
190  * @param x_attribute8 Descriptive flexfield segment
191  * @rep:paraminfo {@rep:required}
192  * @param x_attribute9 Descriptive flexfield segment
193  * @rep:paraminfo {@rep:required}
194  * @param x_attribute10 Descriptive flexfield segment
195  * @rep:paraminfo {@rep:required}
196  * @param x_status Error status (0 = successful execution, <0 = Oracle error, >0 = application error)
197  * @rep:paraminfo {@rep:required}
198  * @param x_error_message Error message text
199  * @rep:paraminfo {@rep:required}
200  * @rep:scope public
201  * @rep:lifecycle active
202  * @rep:displayname Transcation Descriptive Flexfield Extension
203  * @rep:compatibility S
204 */
205 PROCEDURE txn_dff_extn( p_alloc_rule_id    IN NUMBER
206                        ,p_run_id           IN NUMBER
207                        ,p_txn_type         IN VARCHAR2
208                        ,p_project_id       IN VARCHAR2
209                        ,P_task_id          IN VARCHAR2
210                        ,p_expnd_org        IN VARCHAR2
211                        ,p_expnd_type_class IN VARCHAR2
212                        ,p_expnd_type       IN VARCHAR2
213                        ,x_attribute_category OUT NOCOPY VARCHAR2
214                        ,x_attribute1         OUT NOCOPY VARCHAR2
215                        ,x_attribute2         OUT NOCOPY VARCHAR2
216                        ,x_attribute3         OUT NOCOPY VARCHAR2
217                        ,x_attribute4         OUT NOCOPY VARCHAR2
218                        ,x_attribute5         OUT NOCOPY VARCHAR2
219                        ,x_attribute6         OUT NOCOPY VARCHAR2
220                        ,x_attribute7         OUT NOCOPY VARCHAR2
221                        ,x_attribute8         OUT NOCOPY VARCHAR2
222                        ,x_attribute9         OUT NOCOPY VARCHAR2
223                        ,x_attribute10        OUT NOCOPY VARCHAR2
224                        , x_status            OUT NOCOPY NUMBER
225                        , x_error_message     OUT NOCOPY VARCHAR2
226                      ) ;
227 
228 /*#
229  * You can use this procedure to verify compliance with the business rules of your choice.
230  * @param p_alloc_rule_id Identifier of the allocation rule
231  * @rep:paraminfo {@rep:required}
232  * @param x_status  Error status (0 = successful execution, <0 = Oracle error, >0 = application error)
233  * @rep:paraminfo {@rep:required}
234  * @param x_error_message Error message text
235  * @rep:paraminfo {@rep:required}
236  * @rep:scope public
237  * @rep:lifecycle active
238  * @rep:displayname Check Dependency
239  * @rep:compatibility S
240 */
241 PROCEDURE check_dependency(p_alloc_rule_id IN NUMBER
242                           , x_status       OUT NOCOPY NUMBER
243                           , x_error_message  OUT NOCOPY VARCHAR2
244                           ) ;
245 END PA_CLIENT_EXTN_ALLOC;