DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGW_SUBJECT_INFORMATION_TBH

Source


1 package body IGW_SUBJECT_INFORMATION_TBH as
2  /* $Header: igwtsuib.pls 115.5 2002/11/15 00:50:58 ashkumar ship $ */
3 procedure INSERT_ROW (
4   X_ROWID                           out NOCOPY rowid,
5   X_STUDY_TITLE_ID                  IN  NUMBER,
6   X_SUBJECT_TYPE_CODE               IN  VARCHAR2,
7   X_SUBJECT_RACE_CODE               IN  VARCHAR2,
8   X_SUBJECT_ETHNICITY_CODE	    IN  VARCHAR2,
9   X_NO_OF_SUBJECTS                  IN  NUMBER,
10   X_RETURN_STATUS   OUT NOCOPY VARCHAR2
11   ) is
12     cursor C is select ROWID from IGW_SUBJECT_INFORMATION
13     where STUDY_TITLE_ID = X_STUDY_TITLE_ID and SUBJECT_TYPE_CODE = X_SUBJECT_TYPE_CODE;
14 begin
15   x_return_status := FND_API.G_RET_STS_SUCCESS;
16   insert into IGW_SUBJECT_INFORMATION (
17    STUDY_TITLE_ID,
18    SUBJECT_TYPE_CODE,
19    SUBJECT_RACE_CODE,
20    SUBJECT_ETHNICITY_CODE,
21    NO_OF_SUBJECTS,
22    RECORD_VERSION_NUMBER)
23    values (
24    X_STUDY_TITLE_ID,
25    X_SUBJECT_TYPE_CODE,
26    X_SUBJECT_RACE_CODE,
27    X_SUBJECT_ETHNICITY_CODE,
28    X_NO_OF_SUBJECTS,
29    1);
30 
31   open c;
32   fetch c into X_ROWID;
33   if (c%notfound) then
34     close c;
35     raise no_data_found;
36   end if;
37   close c;
38 
39 EXCEPTION
40   WHEN OTHERS THEN
41     FND_MSG_PUB.add_exc_msg( p_pkg_name    => 'IGW_SUBJECT_INFORMATION_TBH'
42                               ,p_procedure_name => 'INSERT_ROW' );
43     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
44     RAISE Fnd_Api.G_Exc_Unexpected_Error;
45 
46 end INSERT_ROW;
47 
48 -----------------------------------------------------------------------
49 
50 procedure UPDATE_ROW (
51   X_ROWID                           IN ROWID,
52   X_STUDY_TITLE_ID                  IN  NUMBER,
53   X_SUBJECT_TYPE_CODE               IN  VARCHAR2,
54   X_SUBJECT_RACE_CODE               IN  VARCHAR2,
55   X_SUBJECT_ETHNICITY_CODE	    IN  VARCHAR2,
56   X_NO_OF_SUBJECTS                  IN  NUMBER,
57   X_RECORD_VERSION_NUMBER           IN NUMBER,
58   X_RETURN_STATUS                   OUT NOCOPY VARCHAR2
59   ) is
60 
61 begin
62 
63   x_return_status := FND_API.G_RET_STS_SUCCESS;
64 
65   IF x_rowid IS NULL THEN
66     RAISE NO_DATA_FOUND;
67   END IF;
68 
69   update igw_subject_information set
70     study_title_id = x_study_title_id,
71     subject_type_code = x_subject_type_code,
72     subject_race_code = x_subject_race_code,
73     subject_ethnicity_code = x_subject_ethnicity_code,
74     no_of_subjects = x_no_of_subjects,
75     record_version_number = x_record_version_number +1
76   where rowid = x_rowid
77     and   record_version_number = x_record_version_number;
78 
79   if (sql%notfound) then
80     FND_MESSAGE.SET_NAME('IGW','IGW_SS_RECORD_CHANGED');
81     FND_MSG_PUB.Add;
82     x_return_status := FND_API.G_RET_STS_ERROR;
83   end if;
84 
85 EXCEPTION
86   WHEN OTHERS THEN
87     FND_MSG_PUB.add_exc_msg( p_pkg_name    => 'IGW_SUBJECT_INFORMATION_TBH'
88                               ,p_procedure_name => 'UPDATE_ROW' );
89     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
90     RAISE Fnd_Api.G_Exc_Unexpected_Error;
91 
92 end UPDATE_ROW;
93 
94 ---------------------------------------------------------------------------------
95 
96 procedure DELETE_ROW (
97   x_rowid in rowid
98   ,x_record_version_number in number
99   ,X_RETURN_STATUS   OUT NOCOPY VARCHAR2
100 ) is
101 
102   l_record_version_number  NUMBER;
103 
104 begin
105 
106   x_return_status := FND_API.G_RET_STS_SUCCESS;
107 
108   delete from igw_subject_information
109   where rowid = x_rowid
110   and   record_version_number = x_record_version_number;
111 
112   if (sql%notfound) then
113     FND_MESSAGE.SET_NAME('IGW','IGW_SS_RECORD_CHANGED');
114     FND_MSG_PUB.Add;
115   end if;
116 EXCEPTION
117   WHEN OTHERS THEN
118     FND_MSG_PUB.add_exc_msg( p_pkg_name    => 'IGW_SUBJECT_INFORMATION_TBH'
119                               ,p_procedure_name => 'DELETE_ROW' );
120     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
121     RAISE Fnd_Api.G_Exc_Unexpected_Error;
122 end DELETE_ROW;
123 
124 end IGW_SUBJECT_INFORMATION_TBH;