1: PACKAGE BODY PO_Mass_Update_Req_PVT AS
2: /* $Header: PO_Mass_Update_Req_PVT.plb 120.8.12020000.3 2013/03/12 23:16:28 yuewliu ship $*/
3:
4: --------------------------------------------------------------------------------------------------
5:
1: PACKAGE BODY PO_Mass_Update_Req_PVT AS
2: /* $Header: PO_Mass_Update_Req_PVT.plb 120.8.12020000.3 2013/03/12 23:16:28 yuewliu ship $*/
3:
4: --------------------------------------------------------------------------------------------------
5:
6: -- Call is made such that the sql file POXMUR.sql calls the procedure
4: --------------------------------------------------------------------------------------------------
5:
6: -- Call is made such that the sql file POXMUR.sql calls the procedure
7: -- PO_Mass_Update_Req_GRP.Update_Persons
8: -- PO_Mass_Update_Req_GRP.Update_Persons calls the procedure PO_Mass_Update_Req_PVT.DO_Update
9:
10: --------------------------------------------------------------------------------------------------
11:
12: g_debug_stmt CONSTANT BOOLEAN := PO_DEBUG.is_debug_stmt_on;
10: --------------------------------------------------------------------------------------------------
11:
12: g_debug_stmt CONSTANT BOOLEAN := PO_DEBUG.is_debug_stmt_on;
13: g_debug_unexp CONSTANT BOOLEAN := PO_DEBUG.is_debug_unexp_on;
14: g_pkg_name CONSTANT VARCHAR2(100) := 'PO_Mass_Update_Req_PVT';
15: g_log_head CONSTANT VARCHAR2(1000) := 'po.plsql.' || g_pkg_name || '.';
16:
17: TYPE g_req IS REF CURSOR;
18:
454: por.wf_item_type,
455: por.wf_item_key
456: FROM po_requisition_headers por,
457: po_document_types_vl pdt
458: WHERE por.preparer_id = PO_MASS_UPDATE_REQ_PVT.get_old_personid
459: AND pdt.document_type_code IN (''REQUISITION'')
460: AND pdt.document_subtype = por.type_lookup_code
461: AND Nvl(por.authorization_status,''INCOMPLETE'') IN (''APPROVED'',''REQUIRES REAPPROVAL'',''INCOMPLETE'',''REJECTED'',''IN PROCESS'',''PRE-APPROVED'',''RETURNED'')
462: AND Nvl(por.cancel_flag,''N'') = ''N''';
462: AND Nvl(por.cancel_flag,''N'') = ''N''';
463:
464: IF p_document_type IS NOT NULL AND p_document_type <> 'ALL' THEN --
465:
466: stmt_req := stmt_req || ' AND por.type_lookup_code = PO_MASS_UPDATE_REQ_PVT.get_document_type';
467: END IF;
468:
469:
470: IF ( req_num_type = 'NUMERIC' ) THEN
474: stmt_req := stmt_req || ' AND 1 = 1 ';
475:
476: ELSIF p_document_no_from IS NOT NULL AND p_document_no_to IS NULL THEN
477:
478: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_from)';
479:
480: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
481:
482: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_to)';
478: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_from)';
479:
480: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
481:
482: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_to)';
483:
484: ELSE
485:
486: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL )
484: ELSE
485:
486: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL )
487:
488: BETWEEN to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_from) AND to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_to )';
489:
490: END IF;
491:
492: ELSE
496: stmt_req := stmt_req || ' AND 1 = 1 ';
497:
498: ELSIF p_document_no_from IS NOT NULL AND p_document_no_to IS NULL THEN
499:
500: stmt_req := stmt_req || ' AND POR.SEGMENT1 >= PO_MASS_UPDATE_REQ_PVT.get_document_no_from';
501:
502: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
503:
504: stmt_req := stmt_req || ' AND POR.SEGMENT1 <= PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
500: stmt_req := stmt_req || ' AND POR.SEGMENT1 >= PO_MASS_UPDATE_REQ_PVT.get_document_no_from';
501:
502: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
503:
504: stmt_req := stmt_req || ' AND POR.SEGMENT1 <= PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
505:
506: ELSE
507:
508: stmt_req := stmt_req || ' AND POR.SEGMENT1 BETWEEN PO_MASS_UPDATE_REQ_PVT.get_document_no_from AND PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
504: stmt_req := stmt_req || ' AND POR.SEGMENT1 <= PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
505:
506: ELSE
507:
508: stmt_req := stmt_req || ' AND POR.SEGMENT1 BETWEEN PO_MASS_UPDATE_REQ_PVT.get_document_no_from AND PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
509:
510: END IF;
511:
512: END IF; /* req_num_type = 'NUMERIC' */
518: stmt_req := stmt_req || ' AND 1 = 1 ';
519:
520: ELSIF p_date_from IS NOT NULL AND p_date_to IS NULL THEN
521:
522: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)';
523:
524: ELSIF p_date_from IS NULL AND p_date_to IS NOT NULL THEN
525:
526: stmt_req := stmt_req || ' AND POR.creation_date <= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)';
522: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)';
523:
524: ELSIF p_date_from IS NULL AND p_date_to IS NOT NULL THEN
525:
526: stmt_req := stmt_req || ' AND POR.creation_date <= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)';
527:
528: ELSE
529: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)
530: AND POR.creation_date < Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)+1';
525:
526: stmt_req := stmt_req || ' AND POR.creation_date <= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)';
527:
528: ELSE
529: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)
530: AND POR.creation_date < Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)+1';
531:
532: END IF;
533:
526: stmt_req := stmt_req || ' AND POR.creation_date <= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)';
527:
528: ELSE
529: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)
530: AND POR.creation_date < Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)+1';
531:
532: END IF;
533:
534: stmt_req := stmt_req || ' ORDER BY por.segment1';
902: AND por.wf_item_key=wfi.parent_item_key
903: and wfi.parent_item_key is not null
904: AND wfn.status NOT IN (''CLOSED'',''CANCELED'')
905: AND Nvl(por.authorization_status,''INCOMPLETE'') IN (''IN PROCESS'',''PRE-APPROVED'')
906: AND wfn.recipient_role = PO_Mass_Update_Req_PVT.get_old_username
907: AND pdt.document_type_code in (''REQUISITION'')
908: AND pdt.document_subtype = por.type_lookup_code';
909:
910: stmt_req2 := 'SELECT wfn.notification_id,
918: AND wfa.item_type = por.wf_item_type
919: AND wfa.item_key = por.wf_item_key
920: AND wfn.status NOT IN (''CLOSED'',''CANCELED'')
921: AND Nvl(por.authorization_status,''INCOMPLETE'') IN (''IN PROCESS'',''PRE-APPROVED'')
922: AND wfn.recipient_role = PO_Mass_Update_Req_PVT.get_old_username
923: AND pdt.document_type_code in (''REQUISITION'')
924: AND pdt.document_subtype = por.type_lookup_code';
925:
926: IF p_document_type IS NOT NULL AND p_document_type <> 'ALL' THEN --
924: AND pdt.document_subtype = por.type_lookup_code';
925:
926: IF p_document_type IS NOT NULL AND p_document_type <> 'ALL' THEN --
927:
928: stmt_req1 := stmt_req1 || ' AND por.type_lookup_code = PO_Mass_Update_Req_PVT.get_document_type';
929: stmt_req2 := stmt_req2 || ' AND por.type_lookup_code = PO_Mass_Update_Req_PVT.get_document_type';
930: END IF;
931:
932: IF ( req_num_type = 'NUMERIC' ) THEN
925:
926: IF p_document_type IS NOT NULL AND p_document_type <> 'ALL' THEN --
927:
928: stmt_req1 := stmt_req1 || ' AND por.type_lookup_code = PO_Mass_Update_Req_PVT.get_document_type';
929: stmt_req2 := stmt_req2 || ' AND por.type_lookup_code = PO_Mass_Update_Req_PVT.get_document_type';
930: END IF;
931:
932: IF ( req_num_type = 'NUMERIC' ) THEN
933:
937: stmt_req2 := stmt_req2 || ' AND 1 = 1 ';
938:
939: ELSIF p_document_no_from IS NOT NULL AND p_document_no_to IS NULL THEN
940:
941: stmt_req1 := stmt_req1 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_Mass_Update_Req_PVT.get_document_no_from)';
942: stmt_req2 := stmt_req2 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_Mass_Update_Req_PVT.get_document_no_from)';
943:
944: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
945:
938:
939: ELSIF p_document_no_from IS NOT NULL AND p_document_no_to IS NULL THEN
940:
941: stmt_req1 := stmt_req1 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_Mass_Update_Req_PVT.get_document_no_from)';
942: stmt_req2 := stmt_req2 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_Mass_Update_Req_PVT.get_document_no_from)';
943:
944: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
945:
946: stmt_req1 := stmt_req1 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';
942: stmt_req2 := stmt_req2 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_Mass_Update_Req_PVT.get_document_no_from)';
943:
944: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
945:
946: stmt_req1 := stmt_req1 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';
947: stmt_req2 := stmt_req2 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';
948:
949: ELSE
950:
943:
944: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
945:
946: stmt_req1 := stmt_req1 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';
947: stmt_req2 := stmt_req2 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';
948:
949: ELSE
950:
951: stmt_req1 := stmt_req1 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL )
949: ELSE
950:
951: stmt_req1 := stmt_req1 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL )
952:
953: BETWEEN to_number(PO_Mass_Update_Req_PVT.get_document_no_from) AND to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';--Bug 12652093, removed '||'
954:
955: stmt_req2 := stmt_req2 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL )
956:
957: BETWEEN to_number(PO_Mass_Update_Req_PVT.get_document_no_from) AND to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';
953: BETWEEN to_number(PO_Mass_Update_Req_PVT.get_document_no_from) AND to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';--Bug 12652093, removed '||'
954:
955: stmt_req2 := stmt_req2 || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL )
956:
957: BETWEEN to_number(PO_Mass_Update_Req_PVT.get_document_no_from) AND to_number(PO_Mass_Update_Req_PVT.get_document_no_to)';
958:
959: END IF;
960:
961: ELSE
966: stmt_req2 := stmt_req2 || ' AND 1 = 1 ';
967:
968: ELSIF p_document_no_from IS NOT NULL AND p_document_no_to IS NULL THEN
969:
970: stmt_req1 := stmt_req1 || ' AND POR.SEGMENT1 >= PO_Mass_Update_Req_PVT.get_document_no_from';
971: stmt_req2 := stmt_req2 || ' AND POR.SEGMENT1 >= PO_Mass_Update_Req_PVT.get_document_no_from';
972:
973: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
974:
967:
968: ELSIF p_document_no_from IS NOT NULL AND p_document_no_to IS NULL THEN
969:
970: stmt_req1 := stmt_req1 || ' AND POR.SEGMENT1 >= PO_Mass_Update_Req_PVT.get_document_no_from';
971: stmt_req2 := stmt_req2 || ' AND POR.SEGMENT1 >= PO_Mass_Update_Req_PVT.get_document_no_from';
972:
973: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
974:
975: stmt_req1 := stmt_req1 || ' AND POR.SEGMENT1 <= PO_Mass_Update_Req_PVT.get_document_no_to';
971: stmt_req2 := stmt_req2 || ' AND POR.SEGMENT1 >= PO_Mass_Update_Req_PVT.get_document_no_from';
972:
973: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
974:
975: stmt_req1 := stmt_req1 || ' AND POR.SEGMENT1 <= PO_Mass_Update_Req_PVT.get_document_no_to';
976: stmt_req2 := stmt_req2 || ' AND POR.SEGMENT1 <= PO_Mass_Update_Req_PVT.get_document_no_to';
977:
978: ELSE
979:
972:
973: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
974:
975: stmt_req1 := stmt_req1 || ' AND POR.SEGMENT1 <= PO_Mass_Update_Req_PVT.get_document_no_to';
976: stmt_req2 := stmt_req2 || ' AND POR.SEGMENT1 <= PO_Mass_Update_Req_PVT.get_document_no_to';
977:
978: ELSE
979:
980: stmt_req1 := stmt_req1 || ' AND POR.SEGMENT1 BETWEEN PO_Mass_Update_Req_PVT.get_document_no_from AND PO_Mass_Update_Req_PVT.get_document_no_to';
976: stmt_req2 := stmt_req2 || ' AND POR.SEGMENT1 <= PO_Mass_Update_Req_PVT.get_document_no_to';
977:
978: ELSE
979:
980: stmt_req1 := stmt_req1 || ' AND POR.SEGMENT1 BETWEEN PO_Mass_Update_Req_PVT.get_document_no_from AND PO_Mass_Update_Req_PVT.get_document_no_to';
981: stmt_req2 := stmt_req2 || ' AND POR.SEGMENT1 BETWEEN PO_Mass_Update_Req_PVT.get_document_no_from AND PO_Mass_Update_Req_PVT.get_document_no_to';
982:
983: END IF;
984:
977:
978: ELSE
979:
980: stmt_req1 := stmt_req1 || ' AND POR.SEGMENT1 BETWEEN PO_Mass_Update_Req_PVT.get_document_no_from AND PO_Mass_Update_Req_PVT.get_document_no_to';
981: stmt_req2 := stmt_req2 || ' AND POR.SEGMENT1 BETWEEN PO_Mass_Update_Req_PVT.get_document_no_from AND PO_Mass_Update_Req_PVT.get_document_no_to';
982:
983: END IF;
984:
985: END IF; /* req_num_type = 'NUMERIC' */
992: stmt_req2 := stmt_req2 || ' AND 1 = 1 ';
993:
994: ELSIF p_date_from IS NOT NULL AND p_date_to IS NULL THEN
995:
996: stmt_req1 := stmt_req1 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)';
997: stmt_req2 := stmt_req2 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)';
998:
999: ELSIF p_date_from IS NULL AND p_date_to IS NOT NULL THEN
1000:
993:
994: ELSIF p_date_from IS NOT NULL AND p_date_to IS NULL THEN
995:
996: stmt_req1 := stmt_req1 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)';
997: stmt_req2 := stmt_req2 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)';
998:
999: ELSIF p_date_from IS NULL AND p_date_to IS NOT NULL THEN
1000:
1001: stmt_req1 := stmt_req1 || ' AND POR.creation_date <= Trunc(PO_Mass_Update_Req_PVT.get_date_to)';
997: stmt_req2 := stmt_req2 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)';
998:
999: ELSIF p_date_from IS NULL AND p_date_to IS NOT NULL THEN
1000:
1001: stmt_req1 := stmt_req1 || ' AND POR.creation_date <= Trunc(PO_Mass_Update_Req_PVT.get_date_to)';
1002: stmt_req2 := stmt_req2 || ' AND POR.creation_date <= Trunc(PO_Mass_Update_Req_PVT.get_date_to)';
1003:
1004: ELSE
1005: stmt_req1 := stmt_req1 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
998:
999: ELSIF p_date_from IS NULL AND p_date_to IS NOT NULL THEN
1000:
1001: stmt_req1 := stmt_req1 || ' AND POR.creation_date <= Trunc(PO_Mass_Update_Req_PVT.get_date_to)';
1002: stmt_req2 := stmt_req2 || ' AND POR.creation_date <= Trunc(PO_Mass_Update_Req_PVT.get_date_to)';
1003:
1004: ELSE
1005: stmt_req1 := stmt_req1 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1006: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1001: stmt_req1 := stmt_req1 || ' AND POR.creation_date <= Trunc(PO_Mass_Update_Req_PVT.get_date_to)';
1002: stmt_req2 := stmt_req2 || ' AND POR.creation_date <= Trunc(PO_Mass_Update_Req_PVT.get_date_to)';
1003:
1004: ELSE
1005: stmt_req1 := stmt_req1 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1006: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1007:
1008: stmt_req2 := stmt_req2 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1009: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1002: stmt_req2 := stmt_req2 || ' AND POR.creation_date <= Trunc(PO_Mass_Update_Req_PVT.get_date_to)';
1003:
1004: ELSE
1005: stmt_req1 := stmt_req1 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1006: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1007:
1008: stmt_req2 := stmt_req2 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1009: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1010:
1004: ELSE
1005: stmt_req1 := stmt_req1 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1006: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1007:
1008: stmt_req2 := stmt_req2 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1009: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1010:
1011: END IF;
1012:
1005: stmt_req1 := stmt_req1 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1006: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1007:
1008: stmt_req2 := stmt_req2 || ' AND POR.creation_date >= Trunc(PO_Mass_Update_Req_PVT.get_date_from)
1009: AND POR.creation_date < Trunc(PO_Mass_Update_Req_PVT.get_date_to)+1';
1010:
1011: END IF;
1012:
1013: stmt_req := stmt_req1 || ' UNION ALL ' || stmt_req2 || ' ORDER BY 2';
1303: pdt.type_name
1304: FROM po_requisition_headers por,
1305: po_document_types_vl pdt,
1306: po_requisition_lines_all prl
1307: WHERE prl.to_person_id = PO_MASS_UPDATE_REQ_PVT.get_old_personid
1308: AND por.requisition_header_id = prl.requisition_header_id
1309: AND pdt.document_type_code IN (''REQUISITION'')
1310: AND pdt.document_subtype = por.type_lookup_code
1311: AND Nvl(por.authorization_status,''INCOMPLETE'') IN (''APPROVED'',''REQUIRES REAPPROVAL'',''INCOMPLETE'',''REJECTED'',''IN PROCESS'',''PRE-APPROVED'',''RETURNED'')
1312: AND Nvl(por.cancel_flag,''N'') = ''N''';
1313:
1314: IF p_document_type IS NOT NULL AND p_document_type <> 'ALL' THEN --
1315:
1316: stmt_req := stmt_req || ' AND por.type_lookup_code = PO_MASS_UPDATE_REQ_PVT.get_document_type';
1317: END IF;
1318:
1319: IF ( req_num_type = 'NUMERIC' ) THEN
1320:
1323: stmt_req := stmt_req || ' AND 1 = 1 ';
1324:
1325: ELSIF p_document_no_from IS NOT NULL AND p_document_no_to IS NULL THEN
1326:
1327: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_from';
1328:
1329: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
1330:
1331: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_to)';
1327: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) >= to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_from';
1328:
1329: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
1330:
1331: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL ) <= to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_to)';
1332:
1333: ELSE
1334:
1335: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL )
1333: ELSE
1334:
1335: stmt_req := stmt_req || ' AND DECODE ( RTRIM ( POR.SEGMENT1,''0123456789'' ), NULL, To_Number ( POR.SEGMENT1 ) , NULL )
1336:
1337: BETWEEN to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_from) AND to_number(PO_MASS_UPDATE_REQ_PVT.get_document_no_to)';
1338:
1339: END IF;
1340:
1341: ELSE
1345: stmt_req := stmt_req || ' AND 1 = 1 ';
1346:
1347: ELSIF p_document_no_from IS NOT NULL AND p_document_no_to IS NULL THEN
1348:
1349: stmt_req := stmt_req || ' AND POR.SEGMENT1 >= PO_MASS_UPDATE_REQ_PVT.get_document_no_from';
1350:
1351: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
1352:
1353: stmt_req := stmt_req || ' AND POR.SEGMENT1 <= PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
1349: stmt_req := stmt_req || ' AND POR.SEGMENT1 >= PO_MASS_UPDATE_REQ_PVT.get_document_no_from';
1350:
1351: ELSIF p_document_no_from IS NULL AND p_document_no_to IS NOT NULL THEN
1352:
1353: stmt_req := stmt_req || ' AND POR.SEGMENT1 <= PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
1354:
1355: ELSE
1356:
1357: stmt_req := stmt_req || ' AND POR.SEGMENT1 BETWEEN PO_MASS_UPDATE_REQ_PVT.get_document_no_from AND PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
1353: stmt_req := stmt_req || ' AND POR.SEGMENT1 <= PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
1354:
1355: ELSE
1356:
1357: stmt_req := stmt_req || ' AND POR.SEGMENT1 BETWEEN PO_MASS_UPDATE_REQ_PVT.get_document_no_from AND PO_MASS_UPDATE_REQ_PVT.get_document_no_to';
1358:
1359: END IF;
1360:
1361: END IF; /* req_num_type = 'NUMERIC' */
1367: stmt_req := stmt_req || ' AND 1 = 1 ';
1368:
1369: ELSIF p_date_from IS NOT NULL AND p_date_to IS NULL THEN
1370:
1371: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)';
1372:
1373: ELSIF p_date_from IS NULL AND p_date_to IS NOT NULL THEN
1374:
1375: stmt_req := stmt_req || ' AND POR.creation_date <= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)';
1371: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)';
1372:
1373: ELSIF p_date_from IS NULL AND p_date_to IS NOT NULL THEN
1374:
1375: stmt_req := stmt_req || ' AND POR.creation_date <= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)';
1376:
1377: ELSE
1378: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)
1379: AND POR.creation_date < Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)+1';
1374:
1375: stmt_req := stmt_req || ' AND POR.creation_date <= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)';
1376:
1377: ELSE
1378: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)
1379: AND POR.creation_date < Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)+1';
1380:
1381: END IF;
1382:
1375: stmt_req := stmt_req || ' AND POR.creation_date <= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)';
1376:
1377: ELSE
1378: stmt_req := stmt_req || ' AND POR.creation_date >= Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_from)
1379: AND POR.creation_date < Trunc(PO_MASS_UPDATE_REQ_PVT.get_date_to)+1';
1380:
1381: END IF;
1382:
1383: stmt_req := stmt_req || ' ORDER BY por.segment1';
1893: BEGIN
1894: RETURN g_old_username;
1895: END;
1896:
1897: END PO_Mass_Update_Req_PVT;