DBA Data[Home] [Help]

PACKAGE BODY: APPS.GMF_LEGAL_ENTITY_TZ

Source


4   | Function                                                                  |
1 PACKAGE BODY gmf_legal_entity_tz AS
2 /*$Header: GMFTZLEB.pls 120.6 2006/09/21 14:04:52 anthiyag noship $ */
3  /*===========================================================================+
5   |               GET_TIMEZONE_CODE                                           |
6   |                                                                           |
7   | DESCRIPTION                                                               |
8   |               The function accepts an operating unit id and finds         |
9   |               timezone code for the legal entity.                         |
10   |               If legal entity timezone is not setup then NULL is          |
11   |               returned.                                                   |
12   |                                                                           |
13   | SCOPE - PUBLIC                                                            |
14   |                                                                           |
15   |                                                                           |
16   | ARGUMENTS  :  IN : p_ou_id                                                |
17   |               OUT:                                                        |
18   |                                                                           |
19   | RETURNS    :  VARCHAR2                                                    |
20   |                                                                           |
21   | NOTES                                                                     |
22   |                                                                           |
23   | MODIFICATION HISTORY                                                      |
24   |    sschinch    13-oct-03  Created                                         |
25   |                                                                           |
26   +===========================================================================*/
27   FUNCTION get_timezone_code (p_ou_id IN NUMBER)
28   RETURN VARCHAR2
29   IS
30   BEGIN
31     IF p_ou_id IS NOT NULL THEN
32       RETURN (XLE_LE_TIMEZONE_GRP.Get_Le_Tz_Code_For_Ou(p_ou_id));
33     ELSE
34       RETURN (NULL);
35     END IF;
36   END get_timezone_code;
37 
38 /*===========================================================================+
39   | Function                                                                  |
43   |               The function accepts an legal entity id and finds           |
40   |               GET_TZ_CODE 	                                              |
41   |                                                                           |
42   | DESCRIPTION                                                               |
44   |               timezone code for the legal entity.                         |
45   |                                                                           |
46   | SCOPE - PUBLIC                                                            |
47   |                                                                           |
48   |                                                                           |
49   | ARGUMENTS  :  IN : p_le_id                                                |
50   |               OUT:                                                        |
51   |                                                                           |
52   | RETURNS    :  VARCHAR2                                                    |
53   |                                                                           |
54   | NOTES                                                                     |
55   |                                                                           |
56   | MODIFICATION HISTORY                                                      |
57   |   niyadav    11-Aug-05  Created                                           |
58   |                                                                           |
59   +===========================================================================*/
60   FUNCTION get_tz_code(p_le_id IN NUMBER)
61   RETURN VARCHAR2
62   IS
63     CURSOR  cur_get_inv_org_id
64     (
65     p_le_id     in      NUMBER
66     )
67     IS
68     SELECT      organization_id
69     FROM        org_organization_definitions
70     WHERE       legal_entity = p_le_id
71     AND         nvl(inventory_enabled_flag, 'N') = 'Y'
72     AND         ROWNUM = 1;
73 
74     l_organization_id   mtl_parameters.organization_id%TYPE;
75     l_timezone_code      VARCHAR2(50) := NULL;
76 
77   BEGIN
78     IF p_le_id IS NOT NULL THEN
79       OPEN cur_get_inv_org_id (p_le_id) ;
80       FETCH cur_get_inv_org_id INTO l_organization_id;
81       CLOSE cur_get_inv_org_id ;
82       IF l_organization_id IS NOT NULL THEN
83         l_timezone_code := XLE_LE_TIMEZONE_GRP.Get_Le_Tz_Code_For_Inv_Org(p_inv_org_id => l_organization_id);
84         RETURN (l_timezone_code);
85       ELSE
86         RETURN (NULL);
87       END IF;
88       RETURN l_timezone_code;
89     ELSE
90       RETURN (NULL);
91     END IF;
92   END get_tz_code;
93 
94  /*===========================================================================+
95   | Function                                                                  |
96   |               GET_TIMEZONE_CODE
97   |                                                                           |
98   | DESCRIPTION                                                               |
99   |               The function accepts a company code and finds         |
100   |               timezone code for the legal entity.                         |
101   |               If legal entity timezone is not setup then NULL is          |
102   |               returned.                                                   |
103   |                                                                           |
104   | SCOPE - PUBLIC                                                            |
105   |                                                                           |
106   |                                                                           |
107   | ARGUMENTS  :  IN : p_co_code                                                |
108   |               OUT:                                                        |
109   |                                                                           |
110   | RETURNS    :  VARCHAR2                                                    |
111   |                                                                           |
112   | NOTES                                                                     |
113   |                                                                           |
114   | MODIFICATION HISTORY                                                      |
115   |    sschinch    13-oct-03  Created                                         |
116   |                                                                           |
117   +===========================================================================*/
118   FUNCTION get_timezone_code (p_co_code IN VARCHAR2)
119   RETURN VARCHAR2
120   IS
121     CURSOR    cur_get_ou (c_co_code VARCHAR2)
122     IS
123     SELECT    org_id
124     FROM      gl_plcy_mst
125     WHERE     co_code = c_co_code;
126 
127     l_ou_id   NUMBER;
128   BEGIN
129     IF (p_co_code IS NOT NULL)
130     THEN
131       OPEN cur_get_ou (p_co_code);
132       FETCH cur_get_ou INTO l_ou_id;
133       CLOSE cur_get_ou;
134       RETURN (get_timezone_code (l_ou_id));
135     ELSE
136       RETURN (NULL);
137     END IF;
138   END get_timezone_code;
139 
140  /*===========================================================================+
141   | Function                                                                  |
142   |              CONVERT_SRV_TO_LE                                            |
143   |                                                                           |
144   | DESCRIPTION                                                               |
145   |               The function accepts a transaction datetime in the server   |
146   |               timezone and the company code, then converts the            |
147   |               datetime to the legal entity timezone,                      |
148   |               If legal entity timezone is not setup then no conversion    |
152   |                                                                           |
149   |               occurs.                                                     |
150   |                                                                           |
151   | SCOPE - PUBLIC                                                            |
153   |                                                                           |
154   | ARGUMENTS  :  IN : p_trxn_date                                            |
155   |                    p_co_code                                              |
156   |               OUT :                                                       |
157   |                                                                           |
158   | RETURNS    :  DATE                                                        |
159   |                                                                           |
160   | NOTES                                                                     |
161   |                                                                           |
162   | MODIFICATION HISTORY                                                      |
163   |    sschinch    13-oct-03  Created                                         |
164   |                                                                           |
165   +===========================================================================*/
166   FUNCTION convert_srv_to_le (pco_code IN VARCHAR2, pdate IN DATE)
167   RETURN DATE
168   IS
169     CURSOR    cur_get_ou (c_co_code VARCHAR2)
170     IS
171     SELECT    org_id
172     FROM      gl_plcy_mst plc
173     WHERE     plc.co_code = c_co_code;
174 
175     l_ou_id   NUMBER;
176   BEGIN
177     IF (pco_code IS NOT NULL)
178     THEN
179       OPEN cur_get_ou (pco_code);
180       FETCH cur_get_ou INTO l_ou_id;
181       CLOSE cur_get_ou;
182       RETURN (XLE_LE_TIMEZONE_GRP.Get_Le_Day_Time_For_OU(pdate, l_ou_id));
183     ELSE
184       RETURN (pdate);
185     END IF;
186   END convert_srv_to_le;
187 
188  /*===========================================================================+
189   | Function                                                                  |
190   |              CONVERT_SRV_TO_LE                                            |
191   |                                                                           |
192   | DESCRIPTION                                                               |
193   |               The function accepts a transaction datetime in the server   |
194   |               timezone and the legal entity id, then converts the         |
195   |               datetime to the legal entity timezone,                      |
196   |               If legal entity timezone is not setup then no conversion    |
197   |               occurs.                                                     |
198   |                                                                           |
199   | SCOPE - PUBLIC                                                            |
200   |                                                                           |
201   |                                                                           |
202   | ARGUMENTS  :  IN : p_trxn_date                                            |
203   |                    ple_id                                                 |
204   |               OUT :                                                       |
205   |                                                                           |
206   | RETURNS    :  DATE                                                        |
207   |                                                                           |
208   | NOTES                                                                     |
209   |                                                                           |
210   | MODIFICATION HISTORY                                                      |
211   |    niyadav    07-Jul-05  Created                                         |
212   |                                                                           |
213   +===========================================================================*/
214   FUNCTION convert_srv_to_le (ple_id IN NUMBER, pdate IN DATE)
215   RETURN DATE
216   IS
217   BEGIN
218     RETURN (XLE_LE_TIMEZONE_GRP.Get_Le_Day_For_Server(pdate, ple_id));
219   END convert_srv_to_le;
220 
221 /*===========================================================================+
222  | Function                                                                  |
223  |               CONVERT_LE_TO_SRV_TZ                             |
224  |                                                                           |
225  | DESCRIPTION                                                               |
226  |               The function accepts a co_code and a legal entity        |
227  |               datetime parameters and converts it to the server timezone. |
228  |               If Legal entity timezone is not setup then no conversion    |
229  |               occurs.                                                     |
230  |                                                                           |
231  | SCOPE - PUBLIC                                                            |
232  |                                                                           |
233  |                                                                           |
234  | ARGUMENTS  :  IN : p_le_date                                              |
235  |                  : p_co_code                                                |
236  |               OUT:                                                        |
237  |                                                                           |
238  | RETURNS    :  DATE                                                        |
239  |                                                                           |
240  | NOTES                                                                     |
241  |                                                                           |
242  | MODIFICATION HISTORY                                                      |
243  |    sschinch    13-oct-03  Created                                          |
244  |                                                                           |
245  +===========================================================================*/
246   FUNCTION convert_le_to_srv_tz (p_le_date IN DATE, p_co_code IN VARCHAR2)
247   RETURN DATE
248   IS
249     CURSOR cur_get_ou (c_co_code VARCHAR2)
250     IS
251     SELECT      org_id
252     FROM        gl_plcy_mst
253     WHERE       co_code = c_co_code;
254 
255     l_ou_id   NUMBER;
256   BEGIN
257     IF (p_co_code IS NOT NULL) THEN
258       OPEN cur_get_ou (p_co_code);
259       FETCH cur_get_ou INTO l_ou_id;
260       CLOSE cur_get_ou;
261       RETURN (convert_le_to_srv_tz(p_le_date, l_ou_id));
262     ELSE
263       RETURN (p_le_date);
264     END IF;
265    END convert_le_to_srv_tz;
266 
267  /*===========================================================================+
268   | Function                                                                  |
269   |               CONVERT_LE_TO_SRV_TZ                                        |
270   |                                                                           |
271   | DESCRIPTION                                                               |
272   |               The function accepts a legal_entity id and a legal entity   |
273   |               datetime parameters and converts it to the server timezone. |
274   |               If Legal entity timezone is not setup then no conversion    |
275   |               occurs.                                                     |
276   |                                                                           |
277   | SCOPE - PUBLIC                                                            |
278   |                                                                           |
279   |                                                                           |
280   | ARGUMENTS  :  IN : p_le_date                                              |
281   |                  : ple_id                                                 |
282   |               OUT:                                                        |
283   |                                                                           |
284   | RETURNS    :  DATE                                                        |
285   |                                                                           |
286   | NOTES                                                                     |
287   |                                                                           |
288   | MODIFICATION HISTORY                                                      |
289   |    niyadav    07-Jul-05  Created                                          |
290   |                                                                           |
291   +===========================================================================*/
292   FUNCTION convert_le_to_srv_tz (p_le_date IN DATE, ple_id IN NUMBER)
293   RETURN DATE
294   IS
295   BEGIN
296     RETURN (XLE_LE_TIMEZONE_GRP.Get_Server_Day_Time_For_Le(p_le_date, ple_id));
297   END convert_le_to_srv_tz;
298 END gmf_legal_entity_tz;