DBA Data[Home] [Help]

PACKAGE BODY: APPS.PA_VALUE_MAP_DEF_PKG

Source


1 PACKAGE BODY PA_VALUE_MAP_DEF_PKG as
2 /* $Header: PAYMDEFB.pls 120.2 2005/08/23 04:29:55 sunkalya noship $ */
3 
4 --
5 -- Procedure     : update_row
6 -- Purpose       : Update a row in PA_VALUE_MAP_DEFS.
7 --
8 --
9 PROCEDURE update_row
10       ( p_value_map_def_id                 IN NUMBER                               ,
11         p_record_version_number            IN NUMBER                               ,
12         x_return_status              OUT  NOCOPY VARCHAR2                          , --File.Sql.39 bug 4440895
13         x_msg_count                  OUT  NOCOPY NUMBER                            , --File.Sql.39 bug 4440895
14         x_msg_data                   OUT  NOCOPY VARCHAR2 ) --File.Sql.39 bug 4440895
15 
16 IS
17   l_record_version_number NUMBER;
18   l_msg_index_out NUMBER;
19    -- added for Bug fix: 4537865
20   l_new_msg_data	 VARCHAR2(2000);
21    -- added for Bug fix: 4537865
22 
23 BEGIN
24 
25   x_return_status := FND_API.G_RET_STS_SUCCESS;
26 
27   -- Increment the record version number by 1
28   l_record_version_number :=  p_record_version_number +1;
29 
30   UPDATE pa_value_map_defs
31     SET
32 		    record_version_number   = DECODE(p_record_version_number, NULL, record_version_number, l_record_version_number)                             ,
33         creation_date           = sysdate                      ,
34         created_by              = fnd_global.user_id           ,
35         last_update_date        = sysdate                      ,
36         last_updated_by         = fnd_global.user_id           ,
37         last_update_login       = fnd_global.login_id
38         WHERE value_map_def_id  = p_value_map_def_id
39         AND   nvl(p_record_version_number, record_version_number) = record_version_number;
40 
41   IF (SQL%NOTFOUND) THEN
42 
43        PA_UTILS.Add_Message ( p_app_short_name => 'PA'
44                            ,p_msg_name => 'PA_XC_RECORD_CHANGED');
45        RAISE FND_API.G_EXC_ERROR;
46   END IF;
47 
48 EXCEPTION
49  WHEN FND_API.G_EXC_ERROR THEN
50        x_return_status := FND_API.G_RET_STS_ERROR;
51        x_msg_count := FND_MSG_PUB.Count_Msg;
52        IF x_msg_count = 1 THEN
53           pa_interface_utils_pub.get_messages
54 	        	(p_encoded       => FND_API.G_TRUE,
55 		         p_msg_index      => 1,
56              p_msg_count      => x_msg_count,
57              p_msg_data       => x_msg_data,
58        	   --p_data           => x_msg_data,			* Commented for Bug Fix: 4537865
59 	     p_data	      => l_new_msg_data,		-- added for Bug fix: 4537865
60 	     p_msg_index_out  => l_msg_index_out );
61 	      -- added for Bug fix: 4537865
62 	      x_msg_data := l_new_msg_data;
63 	      -- added for Bug fix: 4537865
64        END IF;
65 
66  WHEN OTHERS THEN
67   x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
68  FND_MSG_PUB.add_exc_msg( p_pkg_name         => 'PA_VALUE_MAP_DEF_PKG',
69                           p_procedure_name   => 'update_row');
70  raise;
71 
72 END update_row;
73 
74 
75 END PA_VALUE_MAP_DEF_PKG;