1 PACKAGE PSB_CONCURRENCY_CONTROL_PUB AS
2 /* $Header: PSBPCCLS.pls 120.2 2005/07/13 11:22:41 shtripat ship $ */
3
4 /* ----------------------------------------------------------------------- */
5
6 -- API name : Enforce_Concurrency_Control
7 -- Type : Public <Interface>
8 -- Pre-reqs : FND_API, FND_MESSAGE, PSB_CONCURRENCY_CONTROL_PVT
9 -- Parameters :
10 -- IN : p_api_version IN NUMBER Required
11 -- p_validation_level IN NUMBER Optional
12 -- Default = FND_API.G_VALID_LEVEL_NONE
13 -- p_concurrency_class IN VARCHAR2 Optional
14 -- Default = 'MAINTENANCE'
15 -- p_concurrency_entity_name IN VARCHAR2 Required
16 -- p_concurrency_entity_id IN NUMBER Required
17 -- .
18 -- OUT NOCOPY : p_return_status OUT NOCOPY VARCHAR2(1)
19 -- p_msg_count OUT NOCOPY NUMBER
20 -- p_msg_data OUT NOCOPY VARCHAR2(2000)
21 -- .
22 -- Version : Current version 1.0
23 -- Initial version 1.0
24 -- Created 06/15/1997 by Supriyo Ghosh
25 -- Modified 07/07/1997 by Supriyo Ghosh
26 --
27 -- Notes : Enforce Concurrency Control
28 --
29 -- Concurrency Control, for Mutual Exclusion, needs to be enforced from
30 -- the following Modules :
31 --
32 -- Worksheet Creation, Worksheet Modification, Define Parameter Set,
33 -- Define Constraint Set, Define Allocation Rule, Define Budget Group,
34 -- Define Budget Calendar, Define Data Extract, Elements, View Elements,
35 -- Position Assignments and Position Pay Distributions. Concurrency Control
36 -- must be enforced from these Modules during changes (Inserts, Updates and Deletes).
37 -- Check the Return Status from the Procedure Call;
38 -- if p_return_status = FND_API.G_RET_STS_SUCCESS, allow modifications to the Modules;
39 -- otherwise raise an Exception and disallow modifications.
40 --
41 -- Parameter Values :
42 --
43 -- p_concurrency_class has values of 'WORKSHEET_CREATION' for Worksheet
44 -- Creation, 'DATAEXTRACT_CREATION' for Data Extract Creation and 'MAINTENANCE'
45 -- for the other Modules; this is defined by the Lookup Type 'PSB_CONCURRENCY_CLASS'.
46 --
47 -- p_concurrency_entity_name has values of 'WORKSHEET' for the Worksheet
48 -- Modules, 'PARAMETER_SET' for Define Parameter Set, 'CONSTRAINT_SET' for
49 -- Define Constraint Set, 'ALLOCRULE_SET' for Define Allocation Rule,
50 -- 'BUDGET_GROUP' for Define Budget Group, 'BUDGET_CALENDAR' for Define
51 -- Budget Calendar Modules, 'DATA_EXTRACT' for Define Data Extract, Elements,
52 -- View Elements, Position Assignments and Position Pay Distributions;
53 -- this is defined by the Lookup Type 'PSB_CONCURRENCY_ENTITY_NAME'.
54 --
55 -- p_concurrency_entity_id has the corresponding IDs for each of the Modules:
56 -- Worksheet ID for the Worksheet Modules, Parameter Set ID for Define Parameter
57 -- Set, Constraint Set ID for Define Constraint Set, AllocRule Set ID for Define
58 -- Allocation Rule, Budget Group ID for Define Budget Group, Budget Calendar ID
59 -- for Define Budget Calendar, Data Extract ID for Define Data Extract, Elements,
60 -- View Elements, Position Assignments and Position Pay Distributions.
61 --
62 -- Return Status :
63 --
64 -- p_return_status is set to FND_API.G_RET_STS_SUCCESS if Concurrency Control is
65 -- successfully enforced. p_msg_count containts the Message Count and p_msg_data
66 -- contains the Message Data if there's exactly 1 Message on the Stack.
67 --
68 --
69 -- HISTORY
70 --
71 -- 21-SEP-1998 Elvirtuc moved call to concurrent manager here
72 -- Update balances and Create rollup
73 -- Release 11 work
74 --
75 -- 16-NOV-1998 Elvirtuc Moved _CP to PSBWCAB
76 -- 20-NOV-1998 Shjain Added Release_Concurrency_Control Procedure
77
78
79
80 PROCEDURE Enforce_Concurrency_Control
81 ( p_api_version IN NUMBER,
82 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
83 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_NONE,
84 p_return_status OUT NOCOPY VARCHAR2,
85 p_msg_count OUT NOCOPY NUMBER,
86 p_msg_data OUT NOCOPY VARCHAR2,
87 p_concurrency_class IN VARCHAR2 := 'MAINTENANCE',
88 p_concurrency_entity_name IN VARCHAR2,
89 p_concurrency_entity_id IN NUMBER
90 );
91
92 PROCEDURE Release_Concurrency_Control
93 ( p_api_version IN NUMBER,
94 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
95 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_NONE,
96 p_return_status OUT NOCOPY VARCHAR2,
97 p_msg_count OUT NOCOPY NUMBER,
98 p_msg_data OUT NOCOPY VARCHAR2,
99 p_concurrency_class IN VARCHAR2 := 'MAINTENANCE',
100 p_concurrency_entity_name IN VARCHAR2,
101 p_concurrency_entity_id IN NUMBER
102 );
103
104 /* ----------------------------------------------------------------------- */
105
106
107 END PSB_CONCURRENCY_CONTROL_PUB;