1: PACKAGE BODY iby_transactioncc_pkg AS
2: /*$Header: ibytxccb.pls 120.59.12010000.14 2009/01/19 13:05:00 lmallick ship $*/
3:
4: --
5: -- Declare global variables
3:
4: --
5: -- Declare global variables
6: --
7: G_PKG_NAME CONSTANT VARCHAR2(30) := 'IBY_TRANSACTIONCC_PKG';
8:
9: --
10: -- USE: Validates the current open batch for the given (payee,bep,bep key)
11: -- combination. This involves making sure: 1) the batch contains
755: l_cursor_empty BOOLEAN;
756: l_process_profile_code iby_trxn_summaries_all.process_profile_code%TYPE;
757: l_payer_party_id iby_trxn_summaries_all.payer_party_id%TYPE;
758: l_pmt_chnl_code iby_trxn_summaries_all.payment_channel_code%TYPE;
759: l_module_name CONSTANT VARCHAR2(200) := 'IBY_TRANSACTIONCC_PKG.insert_other_txn';
760:
761: CURSOR c_followon_info(ci_trxnid iby_trxn_summaries_all.transactionid%TYPE)
762: IS
763: SELECT mtangibleid, tangibleid, instrType, instrsubtype,
1350: --
1351: -- if the bep is a processor, then we create a batch
1352: --
1353: IF ( (l_beptype = iby_bepinfo_pkg.C_BEPTYPE_PROCESSOR) AND
1354: ((req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE) OR
1355: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE)))
1356: THEN
1357:
1358: --
1351: -- if the bep is a processor, then we create a batch
1352: --
1353: IF ( (l_beptype = iby_bepinfo_pkg.C_BEPTYPE_PROCESSOR) AND
1354: ((req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE) OR
1355: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE)))
1356: THEN
1357:
1358: --
1359: -- associate all trxns in the current open batch
1360: -- with the bathc id of the batch close
1361: --
1362: UPDATE iby_trxn_summaries_all
1363: SET
1364: status = iby_transactioncc_pkg.C_STATUS_BATCH_PENDING,
1365: batchid = merch_batchid_in,
1366: mbatchid = l_mbatchid,
1367: last_update_date = sysdate,
1368: updatedate = sysdate,
1370: object_version_number = object_version_number + 1
1371: WHERE (bepid = vendor_id_in)
1372: AND (bepkey = vendor_key_in)
1373: AND (payeeid = merchant_id_in)
1374: AND (status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED)
1375: AND ((instrtype IN (iby_creditcard_pkg.C_INSTRTYPE_CCARD,
1376: iby_creditcard_pkg.C_INSTRTYPE_PCARD)
1377: AND
1378: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE))
1374: AND (status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED)
1375: AND ((instrtype IN (iby_creditcard_pkg.C_INSTRTYPE_CCARD,
1376: iby_creditcard_pkg.C_INSTRTYPE_PCARD)
1377: AND
1378: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE))
1379: OR
1380: (instrtype IN (l_pinlessdebitcard)
1381: AND
1382: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE))
1378: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE))
1379: OR
1380: (instrtype IN (l_pinlessdebitcard)
1381: AND
1382: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE))
1383: OR
1384: instrtype IS NULL)
1385: AND (batchid IS NULL);
1386:
1650: --
1651: IF (
1652: (l_beptype = iby_bepinfo_pkg.C_BEPTYPE_PROCESSOR) AND
1653: (
1654: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE) OR
1655: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE)
1656: )
1657: ) THEN
1658:
1651: IF (
1652: (l_beptype = iby_bepinfo_pkg.C_BEPTYPE_PROCESSOR) AND
1653: (
1654: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE) OR
1655: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE)
1656: )
1657: ) THEN
1658:
1659: print_debuginfo(l_module_name, 'Invoking grouping ..');
1774: /*------------------------------------------
1775: UPDATE
1776: IBY_TRXN_SUMMARIES_ALL
1777: SET
1778: status = iby_transactioncc_pkg.C_STATUS_BATCH_PENDING,
1779: batchid = merch_batchid_in
1780: || '_' || i,
1781: mbatchid = l_trxns_in_batch_tab(i).mbatch_id,
1782: last_update_date = sysdate,
1786: WHERE
1787: (bepid = vendor_id_in) AND
1788: (bepkey = vendor_key_in) AND
1789: (payeeid = merchant_id_in) AND
1790: (status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED)i
1791: AND
1792: (
1793: (instrtype IN
1794: (iby_creditcard_pkg.C_INSTRTYPE_CCARD,
1793: (instrtype IN
1794: (iby_creditcard_pkg.C_INSTRTYPE_CCARD,
1795: iby_creditcard_pkg.C_INSTRTYPE_PCARD) AND
1796: (req_type_in =
1797: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE))
1798: OR
1799: (instrtype IN (l_pinlessdebitcard) AND
1800: (req_type_in = iby_transactioncc_pkg.
1801: C_REQTYPE_PDC_BATCHCLOSE)
1796: (req_type_in =
1797: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE))
1798: OR
1799: (instrtype IN (l_pinlessdebitcard) AND
1800: (req_type_in = iby_transactioncc_pkg.
1801: C_REQTYPE_PDC_BATCHCLOSE)
1802: )
1803: OR
1804: instrtype IS NULL
1812:
1813: UPDATE
1814: IBY_TRXN_SUMMARIES_ALL
1815: SET
1816: status = iby_transactioncc_pkg.
1817: C_STATUS_BATCH_PENDING,
1818: batchid = l_trxns_in_batch_tab(i).
1819: batch_id,
1820: mbatchid = l_trxns_in_batch_tab(i).
1824: last_updated_by = fnd_global.user_id,
1825: object_version_number = object_version_number + 1
1826: WHERE
1827: transactionid = l_trxns_in_batch_tab(i).trxn_id AND
1828: status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED
1829: ;
1830:
1831: print_debuginfo(l_module_name, 'Finished updating '
1832: || 'transaction'
2290: --
2291: IF (
2292: (l_beptype = iby_bepinfo_pkg.C_BEPTYPE_PROCESSOR) AND
2293: (
2294: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE) OR
2295: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE)
2296: )
2297: ) THEN
2298:
2291: IF (
2292: (l_beptype = iby_bepinfo_pkg.C_BEPTYPE_PROCESSOR) AND
2293: (
2294: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE) OR
2295: (req_type_in = iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE)
2296: )
2297: ) THEN
2298:
2299: print_debuginfo(l_module_name, 'Invoking grouping ..');
2415: /*------------------------------------------
2416: UPDATE
2417: IBY_TRXN_SUMMARIES_ALL
2418: SET
2419: status = iby_transactioncc_pkg.C_STATUS_BATCH_PENDING,
2420: batchid = merch_batchid_in
2421: || '_' || i,
2422: mbatchid = l_trxns_in_batch_tab(i).mbatch_id,
2423: last_update_date = sysdate,
2427: WHERE
2428: (bepid = vendor_id_in) AND
2429: (bepkey = vendor_key_in) AND
2430: (payeeid = merchant_id_in) AND
2431: (status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED)i
2432: AND
2433: (
2434: (instrtype IN
2435: (iby_creditcard_pkg.C_INSTRTYPE_CCARD,
2434: (instrtype IN
2435: (iby_creditcard_pkg.C_INSTRTYPE_CCARD,
2436: iby_creditcard_pkg.C_INSTRTYPE_PCARD) AND
2437: (req_type_in =
2438: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE))
2439: OR
2440: (instrtype IN (l_pinlessdebitcard) AND
2441: (req_type_in = iby_transactioncc_pkg.
2442: C_REQTYPE_PDC_BATCHCLOSE)
2437: (req_type_in =
2438: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE))
2439: OR
2440: (instrtype IN (l_pinlessdebitcard) AND
2441: (req_type_in = iby_transactioncc_pkg.
2442: C_REQTYPE_PDC_BATCHCLOSE)
2443: )
2444: OR
2445: instrtype IS NULL
2453:
2454: UPDATE
2455: IBY_TRXN_SUMMARIES_ALL
2456: SET
2457: status = iby_transactioncc_pkg.
2458: C_STATUS_BATCH_PENDING,
2459: batchid = l_trxns_in_batch_tab(i).
2460: batch_id,
2461: mbatchid = l_trxns_in_batch_tab(i).
2465: last_updated_by = fnd_global.user_id,
2466: object_version_number = object_version_number + 1
2467: WHERE
2468: transactionid = l_trxns_in_batch_tab(i).trxn_id AND
2469: status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED
2470: ;
2471:
2472: print_debuginfo(l_module_name, 'Finished updating '
2473: || 'transaction'
2776: f_maturity_date IN IBY_TRXN_SUMMARIES_ALL.
2777: br_maturity_date%TYPE,
2778: f_instr_type IN IBY_TRXN_SUMMARIES_ALL.
2779: instrtype%TYPE,
2780: x_batchTab IN OUT NOCOPY IBY_TRANSACTIONCC_PKG.
2781: batchAttrTabType,
2782: x_trxnsInBatchTab IN OUT NOCOPY IBY_TRANSACTIONCC_PKG.
2783: trxnsInBatchTabType
2784: )
2778: f_instr_type IN IBY_TRXN_SUMMARIES_ALL.
2779: instrtype%TYPE,
2780: x_batchTab IN OUT NOCOPY IBY_TRANSACTIONCC_PKG.
2781: batchAttrTabType,
2782: x_trxnsInBatchTab IN OUT NOCOPY IBY_TRANSACTIONCC_PKG.
2783: trxnsInBatchTabType
2784: )
2785: IS
2786: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME ||
2867: * \_______|_______|__|_______|_______|__/ \_______|____/
2868: *
2869: */
2870:
2871: l_batchRec IBY_TRANSACTIONCC_PKG.batchAttrRecType;
2872: l_trxnsInBatchTab IBY_TRANSACTIONCC_PKG.trxnsInBatchTabType;
2873:
2874: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
2875: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
2868: *
2869: */
2870:
2871: l_batchRec IBY_TRANSACTIONCC_PKG.batchAttrRecType;
2872: l_trxnsInBatchTab IBY_TRANSACTIONCC_PKG.trxnsInBatchTabType;
2873:
2874: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
2875: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
2876:
2870:
2871: l_batchRec IBY_TRANSACTIONCC_PKG.batchAttrRecType;
2872: l_trxnsInBatchTab IBY_TRANSACTIONCC_PKG.trxnsInBatchTabType;
2873:
2874: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
2875: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
2876:
2877: l_trxnGrpCriTab IBY_TRANSACTIONCC_PKG.trxnGroupCriteriaTabType;
2878:
2871: l_batchRec IBY_TRANSACTIONCC_PKG.batchAttrRecType;
2872: l_trxnsInBatchTab IBY_TRANSACTIONCC_PKG.trxnsInBatchTabType;
2873:
2874: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
2875: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
2876:
2877: l_trxnGrpCriTab IBY_TRANSACTIONCC_PKG.trxnGroupCriteriaTabType;
2878:
2879: l_pinlessdebitcard CONSTANT VARCHAR2(100) :='PINLESSDEBITCARD';
2873:
2874: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
2875: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
2876:
2877: l_trxnGrpCriTab IBY_TRANSACTIONCC_PKG.trxnGroupCriteriaTabType;
2878:
2879: l_pinlessdebitcard CONSTANT VARCHAR2(100) :='PINLESSDEBITCARD';
2880: l_bankaccount CONSTANT VARCHAR2(100) :='BANKACCOUNT';
2881:
2961: WHERE
2962: user_prof.user_cc_profile_code = p_profile_code AND
2963: txn.process_profile_code = user_prof.user_cc_profile_code AND
2964: sys_prof.sys_cc_profile_code = user_prof.sys_cc_profile_code AND
2965: txn.status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED AND
2966: (
2967: /*
2968: * This clause will pick up credit card / purchase card
2969: * transactions.
2977: AND
2978: (
2979: txn.reqtype IN
2980: (
2981: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE,
2982: iby_transactioncc_pkg.C_REQTYPE_CAPTURE,
2983: iby_transactioncc_pkg.C_REQTYPE_CREDIT,
2984: iby_transactioncc_pkg.C_REQTYPE_RETURN
2985: )
2978: (
2979: txn.reqtype IN
2980: (
2981: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE,
2982: iby_transactioncc_pkg.C_REQTYPE_CAPTURE,
2983: iby_transactioncc_pkg.C_REQTYPE_CREDIT,
2984: iby_transactioncc_pkg.C_REQTYPE_RETURN
2985: )
2986: )
2979: txn.reqtype IN
2980: (
2981: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE,
2982: iby_transactioncc_pkg.C_REQTYPE_CAPTURE,
2983: iby_transactioncc_pkg.C_REQTYPE_CREDIT,
2984: iby_transactioncc_pkg.C_REQTYPE_RETURN
2985: )
2986: )
2987: AND
2980: (
2981: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE,
2982: iby_transactioncc_pkg.C_REQTYPE_CAPTURE,
2983: iby_transactioncc_pkg.C_REQTYPE_CREDIT,
2984: iby_transactioncc_pkg.C_REQTYPE_RETURN
2985: )
2986: )
2987: AND
2988: (
3007: AND
3008: (
3009: txn.reqtype IN
3010: (
3011: iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE,
3012: iby_transactioncc_pkg.C_REQTYPE_REQUEST
3013: )
3014: )
3015: AND
3008: (
3009: txn.reqtype IN
3010: (
3011: iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE,
3012: iby_transactioncc_pkg.C_REQTYPE_REQUEST
3013: )
3014: )
3015: AND
3016: (
3034: AND
3035: (
3036: txn.reqtype IN
3037: (
3038: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE,
3039: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ
3040: )
3041: )
3042: AND
3035: (
3036: txn.reqtype IN
3037: (
3038: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE,
3039: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ
3040: )
3041: )
3042: AND
3043: (
3387: OPEN l_trxn_cursor FOR
3388: l_cursor_stmt
3389: USING
3390: p_profile_code, /* profile_code */
3391: iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED, /* open_batch */
3392: instr_type, /* A */
3393: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C1 */
3394: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
3395: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
3391: iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED, /* open_batch */
3392: instr_type, /* A */
3393: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C1 */
3394: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
3395: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
3396: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
3397: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
3398: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
3399: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
3392: instr_type, /* A */
3393: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C1 */
3394: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
3395: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
3396: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
3397: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
3398: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
3399: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
3400: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
3393: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C1 */
3394: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
3395: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
3396: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
3397: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
3398: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
3399: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
3400: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
3401: instr_type, /* C */
3394: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
3395: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
3396: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
3397: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
3398: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
3399: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
3400: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
3401: instr_type, /* C */
3402: l_pinlessdebitcard, /* P1 */
3399: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
3400: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
3401: instr_type, /* C */
3402: l_pinlessdebitcard, /* P1 */
3403: iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE, /* T2A */
3404: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T2B */
3405: l_pinlessdebitcard, /* P2 */
3406: instr_type, /* E */
3407: l_bankaccount, /* B1 */
3400: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
3401: instr_type, /* C */
3402: l_pinlessdebitcard, /* P1 */
3403: iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE, /* T2A */
3404: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T2B */
3405: l_pinlessdebitcard, /* P2 */
3406: instr_type, /* E */
3407: l_bankaccount, /* B1 */
3408: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE, /* T3A */
3404: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T2B */
3405: l_pinlessdebitcard, /* P2 */
3406: instr_type, /* E */
3407: l_bankaccount, /* B1 */
3408: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE, /* T3A */
3409: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ, /* T3B */
3410: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T3C */
3411: l_bankaccount /* B2 */
3412: ;
3405: l_pinlessdebitcard, /* P2 */
3406: instr_type, /* E */
3407: l_bankaccount, /* B1 */
3408: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE, /* T3A */
3409: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ, /* T3B */
3410: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T3C */
3411: l_bankaccount /* B2 */
3412: ;
3413: FETCH l_trxn_cursor BULK COLLECT INTO l_trxnGrpCriTab;
3406: instr_type, /* E */
3407: l_bankaccount, /* B1 */
3408: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE, /* T3A */
3409: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ, /* T3B */
3410: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T3C */
3411: l_bankaccount /* B2 */
3412: ;
3413: FETCH l_trxn_cursor BULK COLLECT INTO l_trxnGrpCriTab;
3414: CLOSE l_trxn_cursor;
3891: f_maturity_date IN IBY_TRXN_SUMMARIES_ALL.
3892: br_maturity_date%TYPE,
3893: f_instr_type IN IBY_TRXN_SUMMARIES_ALL.
3894: instrtype%TYPE,
3895: x_batchTab IN OUT NOCOPY IBY_TRANSACTIONCC_PKG.
3896: batchAttrTabType,
3897: x_trxnsInBatchTab IN OUT NOCOPY IBY_TRANSACTIONCC_PKG.
3898: trxnsInBatchTabType
3899: )
3893: f_instr_type IN IBY_TRXN_SUMMARIES_ALL.
3894: instrtype%TYPE,
3895: x_batchTab IN OUT NOCOPY IBY_TRANSACTIONCC_PKG.
3896: batchAttrTabType,
3897: x_trxnsInBatchTab IN OUT NOCOPY IBY_TRANSACTIONCC_PKG.
3898: trxnsInBatchTabType
3899: )
3900: IS
3901: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME ||
3982: * \_______|_______|__|_______|_______|__/ \_______|____/
3983: *
3984: */
3985:
3986: l_batchRec IBY_TRANSACTIONCC_PKG.batchAttrRecType;
3987: l_trxnsInBatchTab IBY_TRANSACTIONCC_PKG.trxnsInBatchTabType;
3988:
3989: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
3990: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
3983: *
3984: */
3985:
3986: l_batchRec IBY_TRANSACTIONCC_PKG.batchAttrRecType;
3987: l_trxnsInBatchTab IBY_TRANSACTIONCC_PKG.trxnsInBatchTabType;
3988:
3989: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
3990: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
3991:
3985:
3986: l_batchRec IBY_TRANSACTIONCC_PKG.batchAttrRecType;
3987: l_trxnsInBatchTab IBY_TRANSACTIONCC_PKG.trxnsInBatchTabType;
3988:
3989: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
3990: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
3991:
3992: l_trxnGrpCriTab IBY_TRANSACTIONCC_PKG.trxnGroupCriteriaTabType;
3993:
3986: l_batchRec IBY_TRANSACTIONCC_PKG.batchAttrRecType;
3987: l_trxnsInBatchTab IBY_TRANSACTIONCC_PKG.trxnsInBatchTabType;
3988:
3989: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
3990: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
3991:
3992: l_trxnGrpCriTab IBY_TRANSACTIONCC_PKG.trxnGroupCriteriaTabType;
3993:
3994: l_pinlessdebitcard CONSTANT VARCHAR2(100) :='PINLESSDEBITCARD';
3988:
3989: l_trxnsInBatchRec IBY_TRANSACTIONCC_PKG.trxnsInBatchRecType;
3990: l_batchTab IBY_TRANSACTIONCC_PKG.batchAttrTabType;
3991:
3992: l_trxnGrpCriTab IBY_TRANSACTIONCC_PKG.trxnGroupCriteriaTabType;
3993:
3994: l_pinlessdebitcard CONSTANT VARCHAR2(100) :='PINLESSDEBITCARD';
3995: l_bankaccount CONSTANT VARCHAR2(100) :='BANKACCOUNT';
3996:
4079: WHERE
4080: user_prof.user_cc_profile_code IN (strProfiles) AND
4081: txn.process_profile_code = user_prof.user_cc_profile_code AND
4082: sys_prof.sys_cc_profile_code = user_prof.sys_cc_profile_code AND
4083: txn.status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED AND
4084: (
4085: /*
4086: * This clause will pick up credit card / purchase card
4087: * transactions.
4095: AND
4096: (
4097: txn.reqtype IN
4098: (
4099: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE,
4100: iby_transactioncc_pkg.C_REQTYPE_CAPTURE,
4101: iby_transactioncc_pkg.C_REQTYPE_CREDIT,
4102: iby_transactioncc_pkg.C_REQTYPE_RETURN
4103: )
4096: (
4097: txn.reqtype IN
4098: (
4099: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE,
4100: iby_transactioncc_pkg.C_REQTYPE_CAPTURE,
4101: iby_transactioncc_pkg.C_REQTYPE_CREDIT,
4102: iby_transactioncc_pkg.C_REQTYPE_RETURN
4103: )
4104: )
4097: txn.reqtype IN
4098: (
4099: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE,
4100: iby_transactioncc_pkg.C_REQTYPE_CAPTURE,
4101: iby_transactioncc_pkg.C_REQTYPE_CREDIT,
4102: iby_transactioncc_pkg.C_REQTYPE_RETURN
4103: )
4104: )
4105: AND
4098: (
4099: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE,
4100: iby_transactioncc_pkg.C_REQTYPE_CAPTURE,
4101: iby_transactioncc_pkg.C_REQTYPE_CREDIT,
4102: iby_transactioncc_pkg.C_REQTYPE_RETURN
4103: )
4104: )
4105: AND
4106: (
4125: AND
4126: (
4127: txn.reqtype IN
4128: (
4129: iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE,
4130: iby_transactioncc_pkg.C_REQTYPE_REQUEST
4131: )
4132: )
4133: AND
4126: (
4127: txn.reqtype IN
4128: (
4129: iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE,
4130: iby_transactioncc_pkg.C_REQTYPE_REQUEST
4131: )
4132: )
4133: AND
4134: (
4152: AND
4153: (
4154: txn.reqtype IN
4155: (
4156: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE,
4157: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ
4158: )
4159: )
4160: AND
4153: (
4154: txn.reqtype IN
4155: (
4156: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE,
4157: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ
4158: )
4159: )
4160: AND
4161: (
4517: l_cursor_stmt
4518: USING
4519: -- comment out this one as we have already put this value in a comma separated string
4520: --p_profile_code, /* profile_code */
4521: iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED, /* open_batch */
4522: instr_type, /* A */
4523: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C1 */
4524: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
4525: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
4521: iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED, /* open_batch */
4522: instr_type, /* A */
4523: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C1 */
4524: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
4525: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
4526: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
4527: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
4528: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
4529: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T1E */
4522: instr_type, /* A */
4523: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C1 */
4524: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
4525: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
4526: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
4527: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
4528: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
4529: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T1E */
4530: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
4523: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C1 */
4524: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
4525: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
4526: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
4527: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
4528: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
4529: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T1E */
4530: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
4531: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
4524: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C2 */
4525: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
4526: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
4527: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
4528: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
4529: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T1E */
4530: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
4531: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
4532: instr_type, /* C */
4525: iby_transactioncc_pkg.C_REQTYPE_BATCHCLOSE, /* T1A */
4526: iby_transactioncc_pkg.C_REQTYPE_CAPTURE, /* T1B */
4527: iby_transactioncc_pkg.C_REQTYPE_CREDIT, /* T1C */
4528: iby_transactioncc_pkg.C_REQTYPE_RETURN, /* T1D */
4529: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T1E */
4530: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
4531: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
4532: instr_type, /* C */
4533: l_pinlessdebitcard, /* P1 */
4530: iby_creditcard_pkg.C_INSTRTYPE_CCARD, /* C3 */
4531: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
4532: instr_type, /* C */
4533: l_pinlessdebitcard, /* P1 */
4534: iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE, /* T2A */
4535: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T2B */
4536: l_pinlessdebitcard, /* P2 */
4537: instr_type, /* E */
4538: l_bankaccount, /* B1 */
4531: iby_creditcard_pkg.C_INSTRTYPE_PCARD, /* C4 */
4532: instr_type, /* C */
4533: l_pinlessdebitcard, /* P1 */
4534: iby_transactioncc_pkg.C_REQTYPE_PDC_BATCHCLOSE, /* T2A */
4535: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T2B */
4536: l_pinlessdebitcard, /* P2 */
4537: instr_type, /* E */
4538: l_bankaccount, /* B1 */
4539: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE, /* T3A */
4535: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T2B */
4536: l_pinlessdebitcard, /* P2 */
4537: instr_type, /* E */
4538: l_bankaccount, /* B1 */
4539: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE, /* T3A */
4540: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ, /* T3B */
4541: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T3C */
4542: l_bankaccount /* B2 */
4543: ;
4536: l_pinlessdebitcard, /* P2 */
4537: instr_type, /* E */
4538: l_bankaccount, /* B1 */
4539: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE, /* T3A */
4540: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ, /* T3B */
4541: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T3C */
4542: l_bankaccount /* B2 */
4543: ;
4544: FETCH l_trxn_cursor BULK COLLECT INTO l_trxnGrpCriTab;
4537: instr_type, /* E */
4538: l_bankaccount, /* B1 */
4539: iby_transactioncc_pkg.C_REQTYPE_EFT_BATCHCLOSE, /* T3A */
4540: iby_transactioncc_pkg.C_REQTYPE_BATCHREQ, /* T3B */
4541: iby_transactioncc_pkg.C_REQTYPE_REQUEST, /* T3C */
4542: l_bankaccount /* B2 */
4543: ;
4544: FETCH l_trxn_cursor BULK COLLECT INTO l_trxnGrpCriTab;
4545: CLOSE l_trxn_cursor;
5978: AND (tangibleid = ci_orderid)
5979: -- ack cannot distinguish between credits and returns
5980: AND (DECODE(reqtype, 'ORAPMTRETURN','ORAPMTCREDIT', reqtype) =
5981: ci_reqtype)
5982: AND (status = iby_transactioncc_pkg.C_STATUS_BATCH_PENDING)
5983: AND (mbatchid = ci_mbatchid);
5984:
5985: CURSOR c_tracenumber
5986: (ci_tracenumber iby_trxn_core.tracenumber%TYPE)
6091: last_updated_by = fnd_global.user_id,
6092: object_version_number = object_version_number + 1
6093: WHERE (payeeid = payeeid_in)
6094: AND (batchid = batchid_in)
6095: AND (status = iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED);
6096: END IF;
6097:
6098: COMMIT;
6099: END Update_Batch;
6506:
6507: l_index := 1;
6508:
6509: FOR txn_rec IN c_tx_ccnumber LOOP
6510: IBY_TRANSACTIONCC_PKG.prepare_instr_data
6511: (FND_API.G_FALSE,
6512: p_sys_key,
6513: txn_rec.ccnum,
6514: txn_rec.instrtype,
6626: CURSOR c_tx_ccnumber(ci_sys_key IN IBY_SECURITY_PKG.DES3_KEY_TYPE)
6627: IS
6628: SELECT /*+ rowid(tx) */
6629: tx.trxnmid,
6630: iby_transactioncc_pkg.unencrypt_instr_num
6631: (tx.instrnumber, NULL, NULL, ci_sys_key,
6632: k.subkey_cipher_text, tx.instrnum_sec_segment_id,
6633: seg.segment_cipher_text, r.card_number_prefix,
6634: NVL(r.card_number_length,tx.instrnum_length),
6798: -- don't bother until ecapp scoping is seriously
6799: -- supported by IBY
6800: --
6801: --AND (ci_ecappid=ecappid)
6802: AND (status=iby_transactioncc_pkg.C_STATUS_OPEN_BATCHED)
6803: AND (batchid IS NULL)
6804: AND (instrtype IN (iby_creditcard_pkg.C_INSTRTYPE_CCARD,
6805: iby_creditcard_pkg.C_INSTRTYPE_PCARD)
6806: OR instrtype IS NULL);
6877: -- define the batch; note that this method
6878: -- commits data, so no need for a commit
6879: -- statement to follow
6880: --
6881: iby_transactioncc_pkg.insert_batch_status
6882: (
6883: batchid_out,
6884: payeeid_in,
6885: bepid_in,
6884: payeeid_in,
6885: bepid_in,
6886: bepkey_in,
6887: iby_creditcard_pkg.C_INSTRTYPE_CCARD,
6888: iby_transactioncc_pkg.C_STATUS_COMMUNICATION_ERROR,
6889: SYSDATE,
6890: '',
6891: '',
6892: trxncount_out,
6889: SYSDATE,
6890: '',
6891: '',
6892: trxncount_out,
6893: iby_transactioncc_pkg.C_STATUS_COMMUNICATION_ERROR,
6894: 0,
6895: 0,
6896: 0,
6897: '',
7027: AND TrxntypeID IN (3,8,9,100);
7028:
7029: END Update_Payer_Notif_Batch;
7030:
7031: END iby_transactioncc_pkg;