83: l_api_name CONSTANT VARCHAR2(30):= 'Get_Context';
84:
85: BEGIN
86:
87: INV_MGD_POS_UTIL.Log
88: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
89: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
90: );
91:
84:
85: BEGIN
86:
87: INV_MGD_POS_UTIL.Log
88: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
89: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
90: );
91:
92: x_context_rec.organization_id := p_organization_id;
101: , org_organization_definitions ood
102: WHERE gsob.set_of_books_id = ood.set_of_books_id
103: AND organization_id = p_organization_id;
104:
105: INV_MGD_POS_UTIL.Log
106: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
107: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
108: );
109:
102: WHERE gsob.set_of_books_id = ood.set_of_books_id
103: AND organization_id = p_organization_id;
104:
105: INV_MGD_POS_UTIL.Log
106: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
107: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
108: );
109:
110: END Get_Context;
124: l_api_name CONSTANT VARCHAR2(30):= 'Open_Cursor';
125:
126: BEGIN
127:
128: INV_MGD_POS_UTIL.Log
129: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
130: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
131: );
132:
125:
126: BEGIN
127:
128: INV_MGD_POS_UTIL.Log
129: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
130: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
131: );
132:
133: IF p_context_rec.bucket_size = 'PERIOD' THEN
137: , p_date_from => p_date_from
138: );
139: END IF;
140:
141: INV_MGD_POS_UTIL.Log
142: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
143: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
144: );
145:
138: );
139: END IF;
140:
141: INV_MGD_POS_UTIL.Log
142: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
143: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
144: );
145:
146: END Open_Cursor;
155: l_api_name CONSTANT VARCHAR2(30):= 'Close_Cursor';
156:
157: BEGIN
158:
159: INV_MGD_POS_UTIL.Log
160: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
161: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
162: );
163:
156:
157: BEGIN
158:
159: INV_MGD_POS_UTIL.Log
160: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
161: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
162: );
163:
164: IF g_period_crsr%ISOPEN THEN
164: IF g_period_crsr%ISOPEN THEN
165: CLOSE g_period_crsr;
166: END IF;
167:
168: INV_MGD_POS_UTIL.Log
169: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
170: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
171: );
172:
165: CLOSE g_period_crsr;
166: END IF;
167:
168: INV_MGD_POS_UTIL.Log
169: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
170: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
171: );
172:
173: END Close_Cursor;
187: l_increment NUMBER;
188:
189: BEGIN
190:
191: INV_MGD_POS_UTIL.Log
192: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
193: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
194: );
195:
188:
189: BEGIN
190:
191: INV_MGD_POS_UTIL.Log
192: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
193: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
194: );
195:
196: IF p_bucket_size = 'HOUR' THEN
205: ELSIF p_bucket_size = 'PERIOD' THEN
206: l_increment := NULL;
207: END IF;
208:
209: INV_MGD_POS_UTIL.Log
210: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
211: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
212: );
213:
206: l_increment := NULL;
207: END IF;
208:
209: INV_MGD_POS_UTIL.Log
210: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
211: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
212: );
213:
214: RETURN l_Increment;
234: l_api_name CONSTANT VARCHAR2(30):= 'Get_Start_Info';
235:
236: BEGIN
237:
238: INV_MGD_POS_UTIL.Log
239: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
240: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
241: );
242:
235:
236: BEGIN
237:
238: INV_MGD_POS_UTIL.Log
239: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
240: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
241: );
242:
243: IF p_context_rec.bucket_size = 'HOUR' THEN
254: , x_period_rec.end_date
255: , x_start_date;
256: END IF;
257:
258: INV_MGD_POS_UTIL.Log
259: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
260: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
261: );
262:
255: , x_start_date;
256: END IF;
257:
258: INV_MGD_POS_UTIL.Log
259: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
260: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
261: );
262:
263: END Get_Start_Info;
273: PROCEDURE Get_Bucket
274: ( p_context_rec IN g_context_rec_type
275: , p_start_date IN DATE
276: , p_period_rec IN g_period_rec_type
277: , x_bucket_rec OUT NOCOPY INV_MGD_POS_UTIL.bucket_rec_type
278: )
279: IS
280:
281: l_api_name CONSTANT VARCHAR2(30):= 'Get_Bucket';
281: l_api_name CONSTANT VARCHAR2(30):= 'Get_Bucket';
282:
283: BEGIN
284:
285: INV_MGD_POS_UTIL.Log
286: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
287: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
288: );
289:
282:
283: BEGIN
284:
285: INV_MGD_POS_UTIL.Log
286: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
287: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
288: );
289:
290: IF p_context_rec.bucket_size = 'HOUR' THEN
310: x_bucket_rec.end_date := p_period_rec.end_date + 1; /*2872802*/
311: END IF;
312: x_bucket_rec.bucket_size := p_context_rec.bucket_size;
313:
314: INV_MGD_POS_UTIL.Log
315: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
316: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
317: );
318:
311: END IF;
312: x_bucket_rec.bucket_size := p_context_rec.bucket_size;
313:
314: INV_MGD_POS_UTIL.Log
315: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
316: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
317: );
318:
319: END Get_Bucket;
335: l_api_name CONSTANT VARCHAR2(30):= 'Increment_Start_Info';
336:
337: BEGIN
338:
339: INV_MGD_POS_UTIL.Log
340: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
341: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
342: );
343:
336:
337: BEGIN
338:
339: INV_MGD_POS_UTIL.Log
340: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
341: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
342: );
343:
344: IF p_context_rec.bucket_size = 'PERIOD' THEN
347: x_period_rec.name
348: , x_period_rec.start_date
349: , x_period_rec.end_date
350: , x_start_date;
351: INV_MGD_POS_UTIL.Log
352: ( p_priority => INV_MGD_POS_UTIL.G_LOG_STATEMENT
353: , p_msg => 'start date:'||TO_CHAR(x_period_rec.start_date, 'YYYY/MM/DD HH24:MI:SS')
354: );
355: ELSE
348: , x_period_rec.start_date
349: , x_period_rec.end_date
350: , x_start_date;
351: INV_MGD_POS_UTIL.Log
352: ( p_priority => INV_MGD_POS_UTIL.G_LOG_STATEMENT
353: , p_msg => 'start date:'||TO_CHAR(x_period_rec.start_date, 'YYYY/MM/DD HH24:MI:SS')
354: );
355: ELSE
356: x_start_date := x_start_date + Get_Increment(p_context_rec.bucket_size);
355: ELSE
356: x_start_date := x_start_date + Get_Increment(p_context_rec.bucket_size);
357: END IF;
358:
359: INV_MGD_POS_UTIL.Log
360: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
361: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
362: );
363:
356: x_start_date := x_start_date + Get_Increment(p_context_rec.bucket_size);
357: END IF;
358:
359: INV_MGD_POS_UTIL.Log
360: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
361: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
362: );
363:
364: END Increment_Start_Info;
383: ( p_organization_id IN NUMBER
384: , p_date_from IN DATE
385: , p_date_to IN DATE
386: , p_bucket_size IN VARCHAR2
387: , x_bucket_tbl IN OUT NOCOPY INV_MGD_POS_UTIL.bucket_tbl_type
388: )
389: IS
390:
391: l_api_name CONSTANT VARCHAR2(30):= 'Build_Bucket_List';
391: l_api_name CONSTANT VARCHAR2(30):= 'Build_Bucket_List';
392: l_context_rec g_context_rec_type;
393: l_start_date DATE;
394: l_period_rec g_period_rec_type;
395: l_bucket_rec INV_MGD_POS_UTIL.bucket_rec_type;
396:
397: BEGIN
398:
399: INV_MGD_POS_UTIL.Log
395: l_bucket_rec INV_MGD_POS_UTIL.bucket_rec_type;
396:
397: BEGIN
398:
399: INV_MGD_POS_UTIL.Log
400: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
401: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
402: );
403:
396:
397: BEGIN
398:
399: INV_MGD_POS_UTIL.Log
400: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
401: , p_msg => '> '||G_PKG_NAME||'.'||l_api_name
402: );
403:
404: -- Initialize organization list
424: , x_start_date => l_start_date
425: , x_period_rec => l_period_rec
426: );
427:
428: INV_MGD_POS_UTIL.Log
429: ( p_priority => INV_MGD_POS_UTIL.G_LOG_STATEMENT
430: , p_msg => 'initial start date:'||TO_CHAR(l_start_date, 'YYYY/MM/DD HH24:MI:SS')
431: );
432:
425: , x_period_rec => l_period_rec
426: );
427:
428: INV_MGD_POS_UTIL.Log
429: ( p_priority => INV_MGD_POS_UTIL.G_LOG_STATEMENT
430: , p_msg => 'initial start date:'||TO_CHAR(l_start_date, 'YYYY/MM/DD HH24:MI:SS')
431: );
432:
433: LOOP
440: );
441:
442: x_bucket_tbl(x_bucket_tbl.COUNT + 1) := l_bucket_rec;
443:
444: INV_MGD_POS_UTIL.Log
445: ( p_priority => INV_MGD_POS_UTIL.G_LOG_STATEMENT
446: , p_msg => 'bucket_rec.name:'||l_bucket_rec.name
447: );
448:
441:
442: x_bucket_tbl(x_bucket_tbl.COUNT + 1) := l_bucket_rec;
443:
444: INV_MGD_POS_UTIL.Log
445: ( p_priority => INV_MGD_POS_UTIL.G_LOG_STATEMENT
446: , p_msg => 'bucket_rec.name:'||l_bucket_rec.name
447: );
448:
449: Increment_Start_Info
451: , x_start_date => l_start_date
452: , x_period_rec => l_period_rec
453: );
454:
455: INV_MGD_POS_UTIL.Log
456: ( p_priority => INV_MGD_POS_UTIL.G_LOG_STATEMENT
457: , p_msg => 'new start date:'||TO_CHAR(l_start_date, 'YYYY/MM/DD HH24:MI:SS')
458: );
459:
452: , x_period_rec => l_period_rec
453: );
454:
455: INV_MGD_POS_UTIL.Log
456: ( p_priority => INV_MGD_POS_UTIL.G_LOG_STATEMENT
457: , p_msg => 'new start date:'||TO_CHAR(l_start_date, 'YYYY/MM/DD HH24:MI:SS')
458: );
459:
460: EXIT WHEN l_start_date > p_date_to;
463:
464: -- close period cursor
465: Close_Cursor;
466:
467: INV_MGD_POS_UTIL.Log
468: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
469: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
470: );
471:
464: -- close period cursor
465: Close_Cursor;
466:
467: INV_MGD_POS_UTIL.Log
468: ( p_priority => INV_MGD_POS_UTIL.G_LOG_PROCEDURE
469: , p_msg => '< '||G_PKG_NAME||'.'||l_api_name
470: );
471:
472: END Build_Bucket_List;