146: /* central bank reporting requirements imposed on each payment */
147: --l_cbrTab IBY_PAYGROUP_PUB.centralBankReportTabType;
148:
149: /* holds the error messages against failed documents */
150: l_docErrorTab IBY_VALIDATIONSETS_PUB.docErrorTabType;
151: l_docTokenTab IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType;
152:
153: l_payreq_status VARCHAR2(500);
154:
147: --l_cbrTab IBY_PAYGROUP_PUB.centralBankReportTabType;
148:
149: /* holds the error messages against failed documents */
150: l_docErrorTab IBY_VALIDATIONSETS_PUB.docErrorTabType;
151: l_docTokenTab IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType;
152:
153: l_payreq_status VARCHAR2(500);
154:
155: BEGIN
767: l_hookPaymentTab IBY_PAYGROUP_PUB.hookPaymentTabType;
768: l_hookDocsInPmtTab IBY_PAYGROUP_PUB.hookDocsInPaymentTabType;
769:
770: /* holds the error messages against failed documents */
771: l_docErrorTab IBY_VALIDATIONSETS_PUB.docErrorTabType;
772:
773: /* holds list of internal bank accounts with corresponding legal entity id */
774: l_bankAcctLETab bankAccountLETabType;
775:
4296: *---------------------------------------------------------------------*/
4297: PROCEDURE performPaymentValidations(
4298: x_paymentTab IN OUT NOCOPY paymentTabType,
4299: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
4300: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
4301: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
4302: )
4303: IS
4304:
4297: PROCEDURE performPaymentValidations(
4298: x_paymentTab IN OUT NOCOPY paymentTabType,
4299: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
4300: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
4301: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
4302: )
4303: IS
4304:
4305: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME
4342: PROCEDURE performPayReqBasedValidations(
4343: p_payReqCriteria IN payReqImposedCriteria,
4344: x_paymentTab IN OUT NOCOPY paymentTabType,
4345: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
4346: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
4347: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
4348: )
4349: IS
4350:
4343: p_payReqCriteria IN payReqImposedCriteria,
4344: x_paymentTab IN OUT NOCOPY paymentTabType,
4345: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
4346: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
4347: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
4348: )
4349: IS
4350:
4351: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME ||
4447: FND_MESSAGE.get,
4448: l_doc_err_rec
4449: );
4450:
4451: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
4452: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
4453:
4454: /* fail the docs of this payment */
4455: failDocsOfPayment(x_paymentTab(i).payment_id,
4503: FND_MESSAGE.get,
4504: l_doc_err_rec
4505: );
4506:
4507: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
4508: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
4509:
4510: /* fail the docs of this payment */
4511: failDocsOfPayment(x_paymentTab(i).payment_id,
4560: FND_MESSAGE.get,
4561: l_doc_err_rec
4562: );
4563:
4564: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
4565: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
4566:
4567: /* fail the docs of this payment */
4568: failDocsOfPayment(x_paymentTab(i).payment_id,
4600: FND_MESSAGE.get,
4601: l_doc_err_rec
4602: );
4603:
4604: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
4605: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
4606:
4607: /* fail the docs of this payment */
4608: failDocsOfPayment(x_paymentTab(i).payment_id,
4697: FND_MESSAGE.get,
4698: l_doc_err_rec
4699: );
4700:
4701: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
4702: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
4703:
4704: /* fail the docs of this payment */
4705: failDocsOfPayment(x_paymentTab(i).payment_id,
4758: FND_MESSAGE.get,
4759: l_doc_err_rec
4760: );
4761:
4762: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
4763: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
4764:
4765: /* fail the docs of this payment */
4766: failDocsOfPayment(x_paymentTab(i).payment_id,
4798: *---------------------------------------------------------------------*/
4799: PROCEDURE performPmtGrpNumberValidation(
4800: x_paymentTab IN OUT NOCOPY paymentTabType,
4801: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
4802: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
4803: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
4804: )
4805: IS
4806:
4799: PROCEDURE performPmtGrpNumberValidation(
4800: x_paymentTab IN OUT NOCOPY paymentTabType,
4801: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
4802: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
4803: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
4804: )
4805: IS
4806:
4807: l_orig_pmt_id IBY_PAYMENTS_ALL.payment_id%TYPE;
4961: l_doc_err_rec,
4962: x_errTokenTab
4963: );
4964:
4965: IBY_VALIDATIONSETS_PUB.
4966: insertIntoErrorTable(
4967: l_doc_err_rec, x_docErrorTab,
4968: x_errTokenTab);
4969:
4999: l_doc_err_rec,
5000: x_errTokenTab
5001: );
5002:
5003: IBY_VALIDATIONSETS_PUB.
5004: insertIntoErrorTable(
5005: l_doc_err_rec, x_docErrorTab,
5006: x_errTokenTab);
5007:
5691: x_paymentTab IN OUT NOCOPY paymentTabType,
5692: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
5693: x_hookPaymentTab IN OUT NOCOPY hookPaymentTabType,
5694: x_hookDocsInPmtTab IN OUT NOCOPY hookDocsInPaymentTabType,
5695: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
5696: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.
5697: trxnErrTokenTabType
5698: )
5699: IS
5692: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
5693: x_hookPaymentTab IN OUT NOCOPY hookPaymentTabType,
5694: x_hookDocsInPmtTab IN OUT NOCOPY hookDocsInPaymentTabType,
5695: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
5696: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.
5697: trxnErrTokenTabType
5698: )
5699: IS
5700:
6084: l_doc_err_rec,
6085: x_errTokenTab
6086: );
6087:
6088: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
6089: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
6090:
6091: /* fail the docs of this payment */
6092: failDocsOfPayment(x_paymentTab(j).payment_id,
6182: l_doc_err_rec,
6183: x_errTokenTab
6184: );
6185:
6186: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
6187: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
6188:
6189: END IF;
6190:
6241: *---------------------------------------------------------------------*/
6242: PROCEDURE adjustSisterDocsAndPmts(
6243: x_paymentTab IN OUT NOCOPY paymentTabType,
6244: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
6245: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
6246: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
6247: )
6248: IS
6249:
6242: PROCEDURE adjustSisterDocsAndPmts(
6243: x_paymentTab IN OUT NOCOPY paymentTabType,
6244: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
6245: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
6246: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
6247: )
6248: IS
6249:
6250: l_doc_err_rec IBY_TRANSACTION_ERRORS%ROWTYPE;
6339: l_doc_err_rec,
6340: x_errTokenTab
6341: );
6342:
6343: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
6344: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
6345:
6346: /* b. adjust payment amount */
6347: FOR k in x_paymentTab.FIRST .. x_paymentTab.LAST
7174: p_paymentId IN IBY_PAYMENTS_ALL.payment_id%TYPE,
7175: p_docStatus IN IBY_DOCS_PAYABLE_ALL.
7176: document_status%TYPE,
7177: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
7178: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
7179: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
7180: )
7181: IS
7182: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME ||
7175: p_docStatus IN IBY_DOCS_PAYABLE_ALL.
7176: document_status%TYPE,
7177: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
7178: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
7179: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
7180: )
7181: IS
7182: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME ||
7183: '.failDocsOfPayment';
7229:
7230: /*
7231: * Add error record to errors table.
7232: */
7233: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
7234: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
7235:
7236: END IF;
7237:
7592: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
7593: x_allPmtsSuccessFlag IN OUT NOCOPY BOOLEAN,
7594: x_allPmtsFailedFlag IN OUT NOCOPY BOOLEAN,
7595: x_return_status IN OUT NOCOPY VARCHAR2,
7596: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
7597: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.
7598: trxnErrTokenTabType
7599: )
7600: IS
7593: x_allPmtsSuccessFlag IN OUT NOCOPY BOOLEAN,
7594: x_allPmtsFailedFlag IN OUT NOCOPY BOOLEAN,
7595: x_return_status IN OUT NOCOPY VARCHAR2,
7596: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
7597: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.
7598: trxnErrTokenTabType
7599: )
7600: IS
7601: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME ||
7701: x_errTokenTab,
7702: l_triggering_pmt_id
7703: );
7704:
7705: IBY_VALIDATIONSETS_PUB.insertIntoErrorTable(
7706: l_doc_err_rec, x_docErrorTab, x_errTokenTab);
7707:
7708: failDocsOfPayment(x_paymentTab(i).payment_id,
7709: DOC_STATUS_PAY_VAL_FAIL,
7990: * If any payments/documents were failed, the IBY_TRANSACTION_
7991: * ERRORS table must be populated with the corresponding error
7992: * messages.
7993: */
7994: IBY_VALIDATIONSETS_PUB.insert_transaction_errors('N', x_docErrorTab,
7995: x_errTokenTab);
7996:
7997: /*
7998: * Update the status of the payment request.
8064: *---------------------------------------------------------------------*/
8065: PROCEDURE applyPaymentValidationSets(
8066: x_paymentTab IN OUT NOCOPY paymentTabType,
8067: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
8068: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
8069: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
8070: )
8071: IS
8072:
8065: PROCEDURE applyPaymentValidationSets(
8066: x_paymentTab IN OUT NOCOPY paymentTabType,
8067: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
8068: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
8069: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
8070: )
8071: IS
8072:
8073: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME ||
9055: x_docStatusTab IN OUT NOCOPY IBY_DISBURSE_UI_API_PUB_PKG.docPayStatusTab
9056: )
9057: IS
9058: l_module_name CONSTANT VARCHAR2(200) := G_PKG_NAME || '.getRejectedDocs';
9059: l_rej_docs_list IBY_VALIDATIONSETS_PUB.rejectedDocTabType;
9060:
9061: /*
9062: * Cursor to get list of failed documents which are part of payments
9063: * created for the given payment service request.
10732: p_cap_payreq_cd IN VARCHAR2,
10733: p_cap_id IN NUMBER,
10734: x_paymentTab IN OUT NOCOPY paymentTabType,
10735: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
10736: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
10737: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
10738: )
10739: IS
10740:
10733: p_cap_id IN NUMBER,
10734: x_paymentTab IN OUT NOCOPY paymentTabType,
10735: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
10736: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
10737: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
10738: )
10739: IS
10740:
10741: /* these two are passed to calling app via hook */
10894: p_cap_payreq_cd IN VARCHAR2,
10895: p_cap_id IN NUMBER,
10896: x_paymentTab IN OUT NOCOPY paymentTabType,
10897: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
10898: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
10899: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
10900: )
10901: IS
10902:
10895: p_cap_id IN NUMBER,
10896: x_paymentTab IN OUT NOCOPY paymentTabType,
10897: x_docsInPmtTab IN OUT NOCOPY docsInPaymentTabType,
10898: x_docErrorTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.docErrorTabType,
10899: x_errTokenTab IN OUT NOCOPY IBY_VALIDATIONSETS_PUB.trxnErrTokenTabType
10900: )
10901: IS
10902:
10903: /* these two are passed to calling app via hook */