DBA Data[Home] [Help]

PACKAGE BODY: APPS.WMS_SHIPPING_MESSAGES

Source


1 PACKAGE BODY WMS_SHIPPING_MESSAGES AS
2 /* $Header: WMSSHPMB.pls 120.0.12010000.2 2008/11/28 06:04:56 abasheer ship $ */
3 
4 G_Debug BOOLEAN := TRUE;
5 
6 PROCEDURE DEBUG(p_message	IN VARCHAR2) IS
7     l_debug number := NVL(FND_PROFILE.VALUE('INV_DEBUG_TRACE'),0);
8 BEGIN
9    if( G_Debug = TRUE ) then
10       inv_mobile_helper_functions.tracelog
11 	(p_err_msg => p_message,
12 	 p_module => 'WMS_SHIPPING_MESSAGES',
13 	 p_level => 9);
14    end if;
15 END;
16 
17 PROCEDURE PROCESS_SHIPPING_WARNING_MSGS(x_return_status  OUT  NOCOPY VARCHAR2,
18                                         x_msg_count      OUT  NOCOPY NUMBER,
19                                         x_msg_data       OUT  NOCOPY VARCHAR2,
20                                         p_commit         IN  VARCHAR2 := FND_API.g_false,
21                                         p_api_version    IN  VARCHAR2 := 1.0,
22                                         x_shipping_msg_tab  IN OUT  NOCOPY WSH_INTEGRATION.MSG_TABLE ) IS
23 l_api_version        CONSTANT NUMBER := 1.0;
24 l_api_name           CONSTANT VARCHAR2(30) := 'PROCESS_SHIPPING_WARNING_MSGS';
25     l_debug number := NVL(FND_PROFILE.VALUE('INV_DEBUG_TRACE'),0);
26 BEGIN
27    -- Initialize return status to success
28    x_return_status := FND_API.G_RET_STS_SUCCESS;
29 
30    IF NOT FND_API.compatible_api_call(l_api_version,
31                                       p_api_version,
32                                       l_api_name,
33                                       G_PKG_NAME) THEN
34       RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
35    END IF;
36 
37    IF (x_shipping_msg_tab.COUNT <> 0) THEN
38        FOR i IN 1..x_shipping_msg_tab.COUNT
39            LOOP
40                if (x_shipping_msg_tab(i).message_name = 'WSH_DEL_DETAILS_INV_CONTROLS'
41                 or x_shipping_msg_tab(i).message_name = 'WSH_DET_CREDIT_HOLD_ERROR'
42            --     or x_shipping_msg_tab(i).message_name = 'WSH_DEL_SHIP_SET_INCOMPLETE'
43                 or x_shipping_msg_tab(i).message_name = 'WSH_DEL_SMC_INCOMPLETE'
44                 or x_shipping_msg_tab(i).message_name = 'WSH_INVALID_CATCHWEIGHT'
45                 or x_shipping_msg_tab(i).message_name = 'WSH_SHIP_LINE_HOLD_ERROR'
46                 or x_shipping_msg_tab(i).message_name = 'WSH_HEADER_HOLD_ERROR'
47 		or x_shipping_msg_tab(i).message_name = 'WSH_DETAILS_MATERIAL_STATUS' ) then
48 		  x_shipping_msg_tab(i).message_type  := 'E';
49                end if;
50 
51 	       IF x_shipping_msg_tab(i).message_name = 'WSH_DEL_SHIP_SET_INCOMPLETE' THEN
52 		  IF l_debug = 1 THEN
53 		     debug('WMS ship set global variable: ' || wms_shipping_transaction_pub.g_allow_ship_set_break);
54 		  END IF;
55 		  IF wms_shipping_transaction_pub.g_allow_ship_set_break = 'N' THEN
56 		     IF l_debug = 1 THEN
57 			debug('Do not allow ship set to break');
58 		     END IF;
59 		     x_shipping_msg_tab(i).message_type  := 'E';
60 		   ELSE
61 		     IF l_debug = 1 THEN
62 			debug('Leave ship set warning message as warning');
63 		     END IF;
64 		  END IF;
65 	       END IF;
66 	   END LOOP;
67    END IF;
68     -- Standard check of p_commit.
69    IF fnd_api.to_boolean(p_commit) THEN
70       COMMIT WORK;
71    END IF;
72 
73 EXCEPTION
74 
75    WHEN fnd_api.g_exc_error THEN
76       x_return_status := FND_API.G_RET_STS_ERROR;
77       fnd_msg_pub.count_and_get
78         ( p_encoded     => FND_API.G_FALSE,
79           p_count       => x_msg_count,
80           p_data        => x_msg_data
81           );
82       IF (l_debug = 1) THEN
83          DEBUG('Error ! SQL Code : '||sqlcode);
84       END IF;
85 
86    WHEN fnd_api.g_exc_unexpected_error  THEN
87       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
88       fnd_msg_pub.count_and_get
89         ( p_encoded     => FND_API.G_FALSE,
90           p_count       => x_msg_count,
91           p_data        => x_msg_data
92           );
93       IF (l_debug = 1) THEN
94          DEBUG('Unknown Error ! SQL Code : '||sqlcode);
95       END IF;
96    WHEN others  THEN
97       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
98       IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) THEN
99          fnd_msg_pub.add_exc_msg
100            (  'WMS_SHIPPING_MESSAGES',
101               'PROCESS_SHIPPING_WARNING_MSGS'
102               );
103       END IF;
104       fnd_msg_pub.count_and_get
105         ( p_encoded     => FND_API.G_FALSE,
106           p_count       => x_msg_count,
107           p_data        => x_msg_data
108           );
109       IF (l_debug = 1) THEN
110          DEBUG('Other Error ! SQL Code : '||sqlcode);
111       END IF;
112 END PROCESS_SHIPPING_WARNING_MSGS;
113 
114 
115 END WMS_SHIPPING_MESSAGES;