51: -- End of Comments
52: -------------------------------------------------------------------------------------------
53: PROCEDURE Create_Visit (
54: p_api_version IN NUMBER,
55: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
56: p_commit IN VARCHAR2 := FND_API.G_FALSE,
57: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
58: p_x_visit_rec IN OUT NOCOPY AHL_VWP_VISITS_PVT.Visit_Rec_Type,
59: x_return_status OUT NOCOPY VARCHAR2,
52: -------------------------------------------------------------------------------------------
53: PROCEDURE Create_Visit (
54: p_api_version IN NUMBER,
55: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
56: p_commit IN VARCHAR2 := FND_API.G_FALSE,
57: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
58: p_x_visit_rec IN OUT NOCOPY AHL_VWP_VISITS_PVT.Visit_Rec_Type,
59: x_return_status OUT NOCOPY VARCHAR2,
60: x_msg_count OUT NOCOPY NUMBER,
53: PROCEDURE Create_Visit (
54: p_api_version IN NUMBER,
55: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
56: p_commit IN VARCHAR2 := FND_API.G_FALSE,
57: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
58: p_x_visit_rec IN OUT NOCOPY AHL_VWP_VISITS_PVT.Visit_Rec_Type,
59: x_return_status OUT NOCOPY VARCHAR2,
60: x_msg_count OUT NOCOPY NUMBER,
61: x_msg_data OUT NOCOPY VARCHAR2
77: -- Standard start of API savepoint
78: SAVEPOINT Create_Visit_Pub;
79:
80: -- Initialize Procedure return status to success
81: x_return_status := FND_API.G_RET_STS_SUCCESS;
82:
83: -- Standard call to check for call compatibility
84: IF NOT FND_API.Compatible_API_Call(l_api_version, p_api_version,
85: l_api_name, G_PKG_NAME) THEN
80: -- Initialize Procedure return status to success
81: x_return_status := FND_API.G_RET_STS_SUCCESS;
82:
83: -- Standard call to check for call compatibility
84: IF NOT FND_API.Compatible_API_Call(l_api_version, p_api_version,
85: l_api_name, G_PKG_NAME) THEN
86: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
87: END IF;
88:
82:
83: -- Standard call to check for call compatibility
84: IF NOT FND_API.Compatible_API_Call(l_api_version, p_api_version,
85: l_api_name, G_PKG_NAME) THEN
86: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
87: END IF;
88:
89: -- Initialize message list if p_init_msg_list is set to TRUE
90: IF FND_API.To_Boolean(p_init_msg_list) THEN
86: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
87: END IF;
88:
89: -- Initialize message list if p_init_msg_list is set to TRUE
90: IF FND_API.To_Boolean(p_init_msg_list) THEN
91: FND_MSG_PUB.Initialize;
92: END IF;
93:
94: -- Validate the input and prepare for subsequent calls
100: END IF;
101: l_Visit_tbl(1) := p_x_visit_rec;
102:
103: AHL_VWP_VISITS_PVT.Process_Visit(p_api_version => 1.0,
104: p_init_msg_list => Fnd_Api.g_false,
105: p_commit => Fnd_Api.g_false,
106: p_validation_level => Fnd_Api.g_valid_level_full,
107: p_module_type => 'API',
108: p_x_Visit_tbl => l_Visit_tbl,
101: l_Visit_tbl(1) := p_x_visit_rec;
102:
103: AHL_VWP_VISITS_PVT.Process_Visit(p_api_version => 1.0,
104: p_init_msg_list => Fnd_Api.g_false,
105: p_commit => Fnd_Api.g_false,
106: p_validation_level => Fnd_Api.g_valid_level_full,
107: p_module_type => 'API',
108: p_x_Visit_tbl => l_Visit_tbl,
109: x_return_status => x_return_status,
102:
103: AHL_VWP_VISITS_PVT.Process_Visit(p_api_version => 1.0,
104: p_init_msg_list => Fnd_Api.g_false,
105: p_commit => Fnd_Api.g_false,
106: p_validation_level => Fnd_Api.g_valid_level_full,
107: p_module_type => 'API',
108: p_x_Visit_tbl => l_Visit_tbl,
109: x_return_status => x_return_status,
110: x_msg_count => x_msg_count,
113: IF (FND_LOG.level_statement >= FND_LOG.g_current_runtime_level) THEN
114: FND_LOG.string(FND_LOG.level_statement, l_full_name, 'Returned from AHL_VWP_VISITS_PVT.Create_Visit. x_return_status = ' || x_return_status);
115: END IF;
116:
117: IF(x_return_status = FND_API.G_RET_STS_ERROR) THEN
118: RAISE FND_API.G_EXC_ERROR;
119: ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
120: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
121: END IF;
114: FND_LOG.string(FND_LOG.level_statement, l_full_name, 'Returned from AHL_VWP_VISITS_PVT.Create_Visit. x_return_status = ' || x_return_status);
115: END IF;
116:
117: IF(x_return_status = FND_API.G_RET_STS_ERROR) THEN
118: RAISE FND_API.G_EXC_ERROR;
119: ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
120: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
121: END IF;
122:
115: END IF;
116:
117: IF(x_return_status = FND_API.G_RET_STS_ERROR) THEN
118: RAISE FND_API.G_EXC_ERROR;
119: ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
120: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
121: END IF;
122:
123: p_x_visit_rec.VISIT_ID := l_Visit_tbl(1).VISIT_ID;
116:
117: IF(x_return_status = FND_API.G_RET_STS_ERROR) THEN
118: RAISE FND_API.G_EXC_ERROR;
119: ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
120: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
121: END IF;
122:
123: p_x_visit_rec.VISIT_ID := l_Visit_tbl(1).VISIT_ID;
124:
127: p_x_visit_rec.VISIT_NAME || ' and id ' || p_x_visit_rec.VISIT_ID);
128: END IF;
129:
130: -- Standard check of p_commit
131: IF FND_API.TO_BOOLEAN(p_commit) THEN
132: COMMIT WORK;
133: END IF;
134:
135: -- Standard call to get message count and if count is 1, get message info
135: -- Standard call to get message count and if count is 1, get message info
136: FND_MSG_PUB.Count_And_Get
137: ( p_count => x_msg_count,
138: p_data => x_msg_data,
139: p_encoded => FND_API.G_FALSE
140: );
141:
142: IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
143: FND_LOG.string(FND_LOG.level_procedure, l_full_name || '.end', 'End of the API');
143: FND_LOG.string(FND_LOG.level_procedure, l_full_name || '.end', 'End of the API');
144: END IF;
145:
146: EXCEPTION
147: WHEN FND_API.G_EXC_ERROR THEN
148: Rollback to Create_Visit_Pub;
149: x_return_status := FND_API.G_RET_STS_ERROR;
150: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
151: p_data => x_msg_data,
145:
146: EXCEPTION
147: WHEN FND_API.G_EXC_ERROR THEN
148: Rollback to Create_Visit_Pub;
149: x_return_status := FND_API.G_RET_STS_ERROR;
150: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
151: p_data => x_msg_data,
152: p_encoded => fnd_api.g_false);
153:
148: Rollback to Create_Visit_Pub;
149: x_return_status := FND_API.G_RET_STS_ERROR;
150: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
151: p_data => x_msg_data,
152: p_encoded => fnd_api.g_false);
153:
154: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
155: Rollback to Create_Visit_Pub;
156: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
150: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
151: p_data => x_msg_data,
152: p_encoded => fnd_api.g_false);
153:
154: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
155: Rollback to Create_Visit_Pub;
156: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
157: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
158: p_data => x_msg_data,
152: p_encoded => fnd_api.g_false);
153:
154: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
155: Rollback to Create_Visit_Pub;
156: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
157: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
158: p_data => x_msg_data,
159: p_encoded => fnd_api.g_false);
160:
155: Rollback to Create_Visit_Pub;
156: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
157: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
158: p_data => x_msg_data,
159: p_encoded => fnd_api.g_false);
160:
161: WHEN OTHERS THEN
162: Rollback to Create_Visit_Pub;
163: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
159: p_encoded => fnd_api.g_false);
160:
161: WHEN OTHERS THEN
162: Rollback to Create_Visit_Pub;
163: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
164: FND_MSG_PUB.Add_Exc_Msg( p_pkg_name => G_PKG_NAME,
165: p_procedure_name => l_api_name,
166: p_error_text => SQLERRM);
167: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
165: p_procedure_name => l_api_name,
166: p_error_text => SQLERRM);
167: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
168: p_data => x_msg_data,
169: p_encoded => FND_API.G_FALSE);
170:
171: END Create_Visit;
172: --------------------------------------------------------------------------------------
173: -- This API validates the input params and raises an exception in case any are invalid
370: IF(NOT l_valid_flag) THEN
371: IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
372: FND_LOG.string(FND_LOG.level_procedure, l_full_name || '.end', 'Faced validation errors. Exiting with execution exception.');
373: END IF;
374: RAISE FND_API.G_EXC_ERROR;
375: END IF;
376:
377: IF (FND_LOG.level_procedure >= FND_LOG.g_current_runtime_level) THEN
378: FND_LOG.string(FND_LOG.level_procedure, l_full_name || '.end', 'Exiting API - Params validated.');