DBA Data[Home] [Help]

PACKAGE BODY: APPS.QA_PC_PLAN_REL_PKG

Source


1 PACKAGE BODY QA_PC_PLAN_REL_PKG as
2 /* $Header: qapcplnb.pls 115.5 2003/09/16 00:17:53 rkaza ship $ */
3 
4   PROCEDURE Insert_Row(X_Rowid                   IN OUT NOCOPY VARCHAR2,
5                        X_Plan_Relationship_Id    IN OUT NOCOPY NUMBER,
6                        X_Parent_Plan_Id                 NUMBER,
7                        X_Child_Plan_id                  NUMBER,
8                        X_Plan_Relationship_Type         NUMBER,
9                        X_Data_Entry_Mode                NUMBER,
10                        X_Layout_mode                    NUMBER,
11                        X_Auto_Row_Count                 NUMBER,
12                        X_Default_Parent_Spec            NUMBER,
13                        X_Last_Update_Date               DATE,
14                        X_Last_Updated_By                NUMBER,
15                        X_Creation_Date                  DATE,
16                        X_Created_By                     NUMBER,
17                        X_Last_Update_Login              NUMBER
18  ) IS
19      CURSOR C IS SELECT rowid FROM QA_PC_PLAN_RELATIONSHIP
20 		 WHERE plan_relationship_id = X_Plan_Relationship_Id;
21      CURSOR C2 IS SELECT qa_pc_plan_relationship_s.nextval FROM dual;
22 
23     BEGIN
24       if (X_Plan_Relationship_Id is NULL) then
25         OPEN C2;
26         FETCH C2 INTO X_Plan_Relationship_Id;
27         CLOSE C2;
28       end if;
29 
30        INSERT INTO QA_PC_PLAN_RELATIONSHIP(
31                    plan_relationship_id,
32                    parent_plan_id,
33                    child_plan_id,
34                    plan_relationship_type,
35                    data_entry_mode,
36                    layout_mode,
37                    auto_row_count,
38                    default_parent_spec,
39                    last_update_date,
40                    last_updated_by,
41                    creation_date,
42                    created_by,
43                    last_update_login
44                  ) VALUES (
45                    X_Plan_Relationship_Id,
46                    X_Parent_Plan_Id,
47                    X_Child_Plan_id,
48                    X_Plan_Relationship_Type,
49                    X_Data_Entry_Mode,
50                    X_Layout_Mode,
51                    X_Auto_Row_Count,
52                    X_Default_Parent_Spec,
53                    X_Last_Update_Date,
54                    X_Last_Updated_By,
55                    X_Creation_Date,
56                    X_Created_By,
57                    X_Last_Update_Login
58                 );
59     OPEN C;
60     FETCH C INTO X_Rowid;
61     if (C%NOTFOUND) then
62       CLOSE C;
63       Raise NO_DATA_FOUND;
64     end if;
65     CLOSE C;
66   END Insert_Row;
67 
68 
69  PROCEDURE Lock_Row(   X_Rowid                          VARCHAR2,
70                        X_Plan_Relationship_Id           NUMBER,
71                        X_Parent_Plan_Id                 NUMBER,
72                        X_Child_Plan_id                  NUMBER,
73                        X_Plan_Relationship_Type         NUMBER,
74                        X_Data_Entry_Mode                NUMBER,
75                        X_Layout_mode                    NUMBER,
76                        X_Auto_Row_Count                 NUMBER,
77                        X_Default_Parent_Spec            NUMBER,
78                        X_Last_Update_Date               DATE,
79                        X_Last_Updated_By                NUMBER,
80                        X_Creation_Date                  DATE,
81                        X_Created_By                     NUMBER
82  )  IS
83     CURSOR C IS
84         SELECT *
85         FROM   QA_PC_PLAN_RELATIONSHIP
86         WHERE  rowid = X_Rowid
87         FOR UPDATE of plan_relationship_id NOWAIT;
88     Recinfo C%ROWTYPE;
89 
90 
91   BEGIN
92     OPEN C;
93     FETCH C INTO Recinfo;
94     if (C%NOTFOUND) then
95       CLOSE C;
96       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
97       APP_EXCEPTION.Raise_Exception;
98     end if;
99     CLOSE C;
100     if (
101                (Recinfo.plan_relationship_id =  X_Plan_Relationship_Id)
102            AND (Recinfo.parent_plan_id = X_Parent_Plan_Id)
103            AND (Recinfo.child_plan_id = X_Child_Plan_Id)
104            AND (Recinfo.plan_relationship_type = X_Plan_Relationship_Type)
105            AND (Recinfo.data_entry_mode = X_Data_Entry_Mode)
106            AND (Recinfo.layout_mode = X_Layout_Mode)
107            AND (Recinfo.auto_row_count = X_Auto_Row_Count)
108 	   AND (Recinfo.default_parent_spec = X_Default_Parent_Spec)
109            AND (Recinfo.last_update_date =  X_Last_Update_Date)
110            AND (Recinfo.last_updated_by =  X_Last_Updated_By)
111            AND (Recinfo.creation_date =  X_Creation_Date)
112            AND (Recinfo.created_by =  X_Created_By)
113         ) then
114       return;
115     else
116       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
117       APP_EXCEPTION.Raise_Exception;
118     end if;
119 
120   END Lock_Row;
121 
122 
123  PROCEDURE Update_Row( X_Rowid                          VARCHAR2,
124                        X_Plan_Relationship_Id           NUMBER,
125                        X_Parent_Plan_Id                 NUMBER,
126                        X_Child_Plan_id                  NUMBER,
127                        X_Plan_Relationship_Type         NUMBER,
128                        X_Data_Entry_Mode                NUMBER,
129                        X_Layout_mode                    NUMBER,
130                        X_Auto_Row_Count                 NUMBER,
131                        X_Default_Parent_Spec            NUMBER,
132                        X_Last_Update_Date               DATE,
133                        X_Last_Updated_By                NUMBER,
134                        X_Creation_Date                  DATE,
135                        X_Created_By                     NUMBER,
136                        X_Last_Update_Login              NUMBER
137   ) IS
138   BEGIN
139     UPDATE QA_PC_PLAN_RELATIONSHIP
140     SET
141       plan_relationship_id         = X_Plan_Relationship_Id,
142       parent_plan_id               = X_Parent_Plan_Id,
143       child_plan_id                = X_Child_Plan_id,
144       plan_relationship_type       = X_Plan_Relationship_Type,
145       data_entry_mode              = X_Data_Entry_Mode,
146       layout_mode                  = X_Layout_Mode,
147       auto_row_count               = X_Auto_Row_Count,
148       default_parent_spec          = X_Default_Parent_Spec,
149       last_update_date             = X_Last_Update_Date,
150       last_updated_by              = X_Last_Updated_By,
151       creation_date                = X_Creation_Date,
152       created_by                   = X_Created_By,
153       last_update_login            = X_Last_Update_Login
154 
155     WHERE rowid = X_Rowid;
156 
157     if (SQL%NOTFOUND) then
158       Raise NO_DATA_FOUND;
159     end if;
160   END Update_Row;
161 
162   PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
163   BEGIN
164     DELETE FROM QA_PC_PLAN_RELATIONSHIP
165     WHERE rowid = X_Rowid;
166 
167     if (SQL%NOTFOUND) then
168       Raise NO_DATA_FOUND;
169     end if;
170   END Delete_Row;
171 
172 
173 END QA_PC_PLAN_REL_PKG;