index

Package tb_deposit

The Common Business interface for the Student and Non-Student Deposits API (DEPOSIT).
 
Deposits are used to receive payments which are to be held in a liability account until some future date.  At that time, the deposit is released as a credit to the receivable account of the entity that originally paid the deposit.


Program units
f_api_version   Returns the API version number.
f_exists   Checks to see if a record exists.
f_isequal   Compare two records for equality.
f_query_all   Selects all records for the entity.
f_query_cashier   Select all records for a cashiering session.
f_query_one   Selects one record using key.
f_query_by_rowid   Selects one record using rowid.
f_query_one_lock   Selects one record and locks it.
f_query_sum_deposit   Selects summarized deposit records for the entity.
f_max_tran_number   Returns the maximum deposit transaction number for a PIDM.
f_tbrdepo_auto_rel_exists   Returns a Y if records exist that can be released automatically to the ledger.
p_create   Creates a student or a non-student deposit.
p_delete   Deletes a record.
p_lock   Locks a record.
p_update   Updates a record.
p_release   Releases one or more deposits.
p_release   Releases one or more deposits, returning information regarding the amount released and remaining deposits.

Types
deposit_rec   Entity record type
deposit_ref   Entity cursor variable type
deposit_key_rec   Key record type
deposit_key_ref   Key cursor variable type
deposit_sum_rec   Summary record type
deposit_sum_ref   Summary cursor variable type
deposit_tab   Entity table type

Constants
M_ENTITY_NAME   Business Entity name
AR_INFINITY_DATE  


M_ENTITY_NAME

M_ENTITY_NAME     CONSTANT VARCHAR2(7) := 'DEPOSIT';

Business Entity name


AR_INFINITY_DATE

AR_INFINITY_DATE  CONSTANT DATE := TO_DATE('31-DEC-2099','DD-MON-YYYY');

deposit_rec

TYPE deposit_rec IS RECORD (
   r_pidm                    tbrdepo.tbrdepo_pidm%TYPE,
   r_tran_number             tbrdepo.tbrdepo_tran_number%TYPE,
   r_term_code               tbrdepo.tbrdepo_term_code%TYPE,
   r_detail_code_deposit     tbrdepo.tbrdepo_detail_code_deposit%TYPE,
   r_desc                    tbrdepo.tbrdepo_desc%TYPE,
   r_amount                  tbrdepo.tbrdepo_amount%TYPE,
   r_detail_code_payment     tbrdepo.tbrdepo_detail_code_payment%TYPE,
   r_auto_release_ind        tbrdepo.tbrdepo_auto_release_ind%TYPE,
   r_acct_feed_ind           tbrdepo.tbrdepo_acct_feed_ind%TYPE,
   r_user                    tbrdepo.tbrdepo_user%TYPE,
   r_entry_date              tbrdepo.tbrdepo_entry_date%TYPE,
   r_receipt_number          tbrdepo.tbrdepo_receipt_number%TYPE,
   r_min_amount              tbrdepo.tbrdepo_min_amount%TYPE,
   r_expiration_date         tbrdepo.tbrdepo_expiration_date%TYPE,
   r_release_date            tbrdepo.tbrdepo_release_date%TYPE,
   r_effective_date          tbrdepo.tbrdepo_effective_date%TYPE,
   r_session_number          tbrdepo.tbrdepo_session_number%TYPE,
   r_cshr_end_date           tbrdepo.tbrdepo_cshr_end_date%TYPE,
   r_curr_code               tbrdepo.tbrdepo_curr_code%TYPE,
   r_trans_date              tbrdepo.tbrdepo_trans_date%TYPE,
   r_foreign_amount          tbrdepo.tbrdepo_foreign_amount%TYPE,
   r_feed_date               tbrdepo.tbrdepo_feed_date%TYPE,
   r_feed_doc_code           tbrdepo.tbrdepo_feed_doc_code%TYPE,
   r_atyp_code               tbrdepo.tbrdepo_atyp_code%TYPE,
   r_atyp_seqno              tbrdepo.tbrdepo_atyp_seqno%TYPE,
   r_data_origin             tbrdepo.tbrdepo_data_origin%TYPE,
   r_create_source           tbrdepo.tbrdepo_create_source%TYPE,
   r_document_number         tbrdepo.tbrdepo_document_number%TYPE,
   r_balance                 tbrdepo.tbrdepo_amount%TYPE,
   r_deposit_type            tbbdepc.tbbdepc_dtyp_code%TYPE,
   r_internal_record_id      gb_common.internal_record_id_type );

Entity record type


deposit_ref

TYPE deposit_ref IS REF CURSOR RETURN deposit_rec;

Entity cursor variable type


deposit_key_rec

TYPE deposit_key_rec IS RECORD (
   r_pidm                    tbrdepo.tbrdepo_pidm%TYPE,
   r_tran_number             tbrdepo.tbrdepo_tran_number%TYPE,
   r_internal_record_id      gb_common.internal_record_id_type );

Key record type


deposit_key_ref

TYPE deposit_key_ref IS REF CURSOR RETURN deposit_key_rec;

Key cursor variable type


deposit_sum_rec

TYPE deposit_sum_rec IS RECORD (
   r_pidm                    tbrdepo.tbrdepo_pidm%TYPE,
   r_deposit_type            tbbdepc.tbbdepc_dtyp_code%TYPE,
   r_term_code               tbrdepo.tbrdepo_term_code%TYPE,
   r_detail_code_deposit     tbrdepo.tbrdepo_detail_code_deposit%TYPE,
   r_desc                    tbrdepo.tbrdepo_desc%TYPE,
   r_amount                  NUMBER(9,2),
   r_balance                 NUMBER(9,2));

Summary record type


deposit_sum_ref

TYPE deposit_sum_ref IS REF CURSOR RETURN deposit_sum_rec;

Summary cursor variable type


deposit_tab

TYPE deposit_tab IS TABLE OF deposit_rec INDEX BY BINARY_INTEGER;

Entity table type


f_api_version

Function f_api_version RETURN PLS_INTEGER

Returns the API version number.

Returns
Version of the API signature. Changes only when the signature changes.


f_exists

Function f_exists(p_pidm        tbrdepo.tbrdepo_pidm%TYPE,
                  p_tran_number tbrdepo.tbrdepo_tran_number%TYPE,
                  p_rowid       VARCHAR2 DEFAULT NULL) RETURN VARCHAR2

Checks to see if a record exists.

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key
p_tran_number   Transaction number (one-up within entity) of the deposit. NUMBER(8) Required Key
p_rowid   Database rowid of record to select. VARCHAR2(18)

Returns
Y if found, otherwise N.


f_isequal

Function f_isequal(rec_one deposit_rec, rec_two deposit_rec)
  RETURN VARCHAR2

Compare two records for equality.
Tests each field of rec_one against the corresponding field of rec_two. Two null values are considered equal.

Parameters
rec_one   The first record to compare. Type deposit_rec Required
rec_two   The second record to compare. Type deposit_rec Required

Returns
Y if all values in records are equal, otherwise N. Nulls match Nulls.


f_query_all

Function f_query_all(p_pidm                tbrdepo.tbrdepo_pidm%TYPE DEFAULT NULL,
                     p_tran_number         tbrdepo.tbrdepo_tran_number%TYPE DEFAULT NULL,
                     p_term_code           tbrdepo.tbrdepo_term_code%TYPE DEFAULT NULL,
                     p_detail_code_deposit tbrdepo.tbrdepo_detail_code_deposit%TYPE DEFAULT NULL,
                     p_deposit_type        tbbdepc.tbbdepc_dtyp_code%TYPE DEFAULT NULL)
  RETURN deposit_ref

Selects all records for the entity.
Parameters default to NULL and are ignored if not populated.
AND is used when multiple criteria are given.
Wildcard (%) may be used with Term Code and Detail Code Deposit

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit. Matched if given, or all. NUMBER(8)
p_tran_number   Transaction number (one-up within entity) of the deposit. Matched if given, or all. NUMBER(8)
p_term_code   Term associated with the deposit. Wildcard is allowed, all if null. VARCHAR2(6)
p_detail_code_deposit   Detail code used when the deposit is released to the receivable ledger. Wildcard is allowed, all if null. VARCHAR2(4)
p_deposit_type   Deposit type as designated in the Deposit Control (TBBDEPC).  Matched if given, or all. VARCHAR2(3)

Returns
A cursor variable that will fetch the set of records.


f_query_cashier

Function f_query_cashier(p_user           tbrdepo.tbrdepo_user%TYPE,
                         p_session_number tbrdepo.tbrdepo_session_number%TYPE,
                         p_cshr_end_date  tbrdepo.tbrdepo_cshr_end_date%TYPE DEFAULT NULL)
  RETURN deposit_ref

Select all records for a cashiering session.

Parameters
p_user   User ID of the cashier of the session. VARCHAR2(30) Required
p_session_number   Cashier session number (0 = current session). NUMBER(5) Required
p_cshr_end_date   End date and time of the cashiering session. DATE

Returns
A cursor variable that will fetch the set of records by cashier session


f_query_one

Function f_query_one(p_pidm        tbrdepo.tbrdepo_pidm%TYPE,
                     p_tran_number tbrdepo.tbrdepo_tran_number%TYPE)
  RETURN deposit_ref

Selects one record using key.

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key
p_tran_number   Transaction number (one-up within entity) of the deposit. NUMBER(8) Required Key

Returns
A cursor variable that will fetch exactly one record.


f_query_by_rowid

Function f_query_by_rowid(p_rowid VARCHAR2) RETURN deposit_ref

Selects one record using rowid.

Parameters
p_rowid   Database rowid of record to select. VARCHAR2(18) Required

Returns
A cursor variable that will fetch exactly one record.


f_query_one_lock

Function f_query_one_lock(p_pidm        tbrdepo.tbrdepo_pidm%TYPE,
                          p_tran_number tbrdepo.tbrdepo_tran_number%TYPE,
                          p_rowid       VARCHAR2 DEFAULT NULL)
  RETURN deposit_ref

Selects one record and locks it.

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key
p_tran_number   Transaction number (one-up within entity) of the deposit. NUMBER(8) Required Key
p_rowid   Database rowid of record to select. VARCHAR2(18)

Returns
A cursor variable for one record, locking the record.


f_query_sum_deposit

Function f_query_sum_deposit(p_pidm                tbrdepo.tbrdepo_pidm%TYPE,
                             p_deposit_type        tbbdepc.tbbdepc_dtyp_code%TYPE DEFAULT NULL,
                             p_term_code           tbrdepo.tbrdepo_term_code%TYPE DEFAULT NULL,
                             p_detail_code_deposit tbrdepo.tbrdepo_detail_code_deposit%TYPE DEFAULT NULL)
  RETURN deposit_sum_ref

Selects summarized deposit records for the entity.
Parameters other than PIDM default to NULL and include all records if not populated.
AND is used when multiple criteria are given.
Wildcard (%) may be used with term or deposit detail code.
When the term parameter is null the term values are not returned, summing without regard to term. Use % in the term parameter to include all terms with a sum for each value found.
When the deposit detail code parameter is null, detail code and description are not returned, summing without regard to these values. Use % in the deposit detail code parameter to include a sum for each value found.
Leaving deposit type, term, and deposit detail code parameters null returns a summary by type of all deposits for the entity.

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit. NUMBER(8) Required
p_deposit_type   Deposit type as designated in the Deposit Control (TBBDEPC).  Matched if given, or all. VARCHAR2(3)
p_term_code   Term associated with the deposit. Wildcard is allowed, all if null. VARCHAR2(6)
p_detail_code_deposit   Detail code used when the deposit is released to the receivable ledger.  Wildcard is allowed, all if null. VARCHAR2(4)

Returns
A cursor variable that will fetch the set of records.


f_max_tran_number

Function f_max_tran_number(p_pidm tbrdepo.tbrdepo_pidm%TYPE)
  RETURN tbrdepo.tbrdepo_tran_number%TYPE

Returns the maximum deposit transaction number for a PIDM.

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key

Returns
The maximum transaction number.


f_tbrdepo_auto_rel_exists

Function f_tbrdepo_auto_rel_exists(p_term tbrdepo.tbrdepo_term_code%TYPE,
                                   p_pidm tbrdepo.tbrdepo_pidm%TYPE)
  RETURN VARCHAR2

Returns a Y if records exist that can be released automatically to the ledger.
 
A deposit can be released automatically when the Auto Release Indicator is Y, the Release Date is null or is prior to the current date, and the remaining deposit Balance is greater than the Minimum required.  After the expiration date has passed, any remaining Balance can be released without regard to the Minimum, if the other two conditions are met.

Parameters
p_term_code   Term associated with the deposit.  VARCHAR2(6) Required
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key


p_create

Procedure p_create(p_pidm                tbrdepo.tbrdepo_pidm%TYPE,
                   p_term_code           tbrdepo.tbrdepo_term_code%TYPE,
                   p_detail_code_deposit tbrdepo.tbrdepo_detail_code_deposit%TYPE,
                   p_desc                tbrdepo.tbrdepo_desc%TYPE DEFAULT NULL,
                   p_amount              tbrdepo.tbrdepo_amount%TYPE DEFAULT NULL,
                   p_detail_code_payment tbrdepo.tbrdepo_detail_code_payment%TYPE DEFAULT NULL,
                   p_auto_release_ind    tbrdepo.tbrdepo_auto_release_ind%TYPE DEFAULT NULL,
                   p_acct_feed_ind       tbrdepo.tbrdepo_acct_feed_ind%TYPE DEFAULT 'Y',
                   p_user                tbrdepo.tbrdepo_user%TYPE,
                   p_entry_date          tbrdepo.tbrdepo_entry_date%TYPE DEFAULT TRUNC(SYSDATE),
                   p_receipt_number      tbrdepo.tbrdepo_receipt_number%TYPE DEFAULT NULL,
                   p_min_amount          tbrdepo.tbrdepo_min_amount%TYPE DEFAULT dml_common.f_unspecified_number,
                   p_expiration_date     tbrdepo.tbrdepo_expiration_date%TYPE DEFAULT dml_common.f_unspecified_date,
                   p_release_date        tbrdepo.tbrdepo_release_date%TYPE DEFAULT dml_common.f_unspecified_date,
                   p_effective_date      tbrdepo.tbrdepo_effective_date%TYPE,
                   p_session_number      tbrdepo.tbrdepo_session_number%TYPE DEFAULT 0,
                   p_cshr_end_date       tbrdepo.tbrdepo_cshr_end_date%TYPE DEFAULT NULL,
                   p_curr_code           tbrdepo.tbrdepo_curr_code%TYPE DEFAULT NULL,
                   p_trans_date          tbrdepo.tbrdepo_trans_date%TYPE DEFAULT NULL,
                   p_foreign_amount      tbrdepo.tbrdepo_foreign_amount%TYPE DEFAULT NULL,
                   p_atyp_code           tbrdepo.tbrdepo_atyp_code%TYPE DEFAULT NULL,
                   p_atyp_seqno          tbrdepo.tbrdepo_atyp_seqno%TYPE DEFAULT NULL,
                   p_data_origin         tbrdepo.tbrdepo_data_origin%TYPE DEFAULT NULL,
                   p_document_number     tbrdepo.tbrdepo_document_number%TYPE DEFAULT NULL,
                   p_override_hold       VARCHAR2 DEFAULT 'N',
                   p_tran_number_out     OUT tbrdepo.tbrdepo_tran_number%TYPE,
                   p_rowid_out           OUT VARCHAR2)

Creates a student or a non-student deposit.
Student deposits are identified by a Term Code which is valid in the Term Code validation table STVTERM. Non-student deposits are identified by a Term Code of ARTERM.
 
Required fields are PIDM, Term Code, Detail Code Deposit, User (cashier), and Effective Date.
If the parameters for Detail Code Deposit, Auto Release indicator, Minimum, Expiration Date, or Release Date are not specified, the values in the Deposit Detail Definition table (TBBDEPC) will be used.
The Transaction Number is determined by the API and returned as an OUT parameter.
Amount is required except where it may be calculated using Currency Code and Foreign Amount. If all 3 of these parameters are populated, then the calculation (using the rate in effect for the Transaction Date) must yield the Amount provided.
 
Description will default from the Detail Code Deposit if not provided.
Accounting Feed will default to Y.
Session Number will default to 0 (current session). Any other value requires Cashier End Date, and the combination must be valid in the Cashier Session table TBBCSHR.
Address data (atyp_code and atyp_seqno valid in address table STVADDR) is required for non-student transactions, and not allowed on student transactions.  If both are left null, an attempt will be made to default from the Customer Profile (TBBCPRF).
Receipt Number is never generated by the API, it must be determined in advance and provided as a parameter.
Currency Code and Foreign Amount are both null or both provided.
Minimum and Expiration Date are both null or both provided.  The Expiration Date must be greater than or equal to the current date, and must be greater than or equal to the Release Date if it is populated.
Release Date, if populated, must be greater than the current date.
Other optional parameters may also have editing to enforce Deposit business rules.

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required key
p_term_code   Term associated with the deposit. For student deposits valid in STVTERM, or ARTERM for non-student deposits. VARCHAR2(6) Required
p_detail_code_deposit   Detail code used when the deposit is released to the receivable ledger.  Valid in the Deposit Detail Definition table (TBBDEPC). VARCHAR2(4) Required
p_desc   Free-form description associated with the deposit.  Default value comes from the Detail Code description (TBBDETC). VARCHAR2(30)
p_amount   Amount of the deposit. NUMBER(7,2)
p_detail_code_payment   Detail code associated with the creation of a new deposit, indicating payment media of check, cash, charge, and so on. Valid in TBBDETC. Default value comes from the Deposit Detail Definition table (TBBDEPC). VARCHAR2(4)
p_auto_release_ind   Indicates whether the deposit should be automatically released to the account as of the release date. For non-student populate N; for student will default from the Deposit Detail Definition table (TBBDEPC). VARCHAR2(1)
Y   Automatic release
N   Manual release

p_acct_feed_ind   Status of the deposit in the accounting feed. VARCHAR2(1)
Y   Feed transaction (default)

p_user   User ID of the cashier who created the deposit. VARCHAR2(30)
p_entry_date   Entry date and time of the deposit, when initially created. Default SYSDATE. DATE
p_receipt_number   Receipt number associated with the deposit if generated when the deposit was created. NUMBER(8)
p_min_amount   Minimum amount that must remain as a deposit balance and not be released until the expiration date has passed. If not specified, defaults from TBBDEPC. Pass Null to override this default value. NUMBER(7,2)
p_expiration_date   Expiration date of the deposit, after which it may be released to the receivable account without regard to the minimum. If not specified, defaults from TBBDEPC. Pass Null to override this default value. DATE
p_release_date   Earliest date when the deposit may be released either automatically or manually. If not specified, defaults from TBBDEPC. Pass Null to override this default value. If null, the deposit may be released at any time. DATE
p_effective_date   Effective date of the deposit. DATE Required
p_session_number   Cashier session number in which this transaction was posted (0 = current session is default). NUMBER(5)
p_cshr_end_date   End date and time of the cashiering session for this transaction. DATE
p_curr_code   Foreign currency code used when creating a deposit, valid in GTVCURR and GURCURR. VARCHAR2(4)
p_trans_date   Transaction date used by the finance system to control posting to the ledgers. DATE
p_foreign_amount   Amount of the deposit stated in foreign currency. NUMBER(12,2)
p_atyp_code   In combination with ATYP_SEQNO, the address associated with this deposit for non-student transactions. Valid in STVATYP. VARCHAR2(2)
p_atyp_seqno   In combination with ATYP_CODE, the address associated with this deposit for non-student transactions. Combination valid and active in SPRADDR. NUMBER(2)
p_data_origin   Source system that last created or updated the data. VARCHAR2(30)
p_document_number   Document number that references a source document for the deposit. VARCHAR2(8)
p_override_hold   Parameter to override Accounts Receivable hold. VARCHAR2(1)
N   Check for AR hold (default)
Y   Bypass hold checking

p_tran_number_out   Returns transaction number (system generated one-up within entity) of the deposit. NUMBER(8) Required
p_rowid_out   Database rowid of record created. VARCHAR2(18) Required


p_delete

Procedure p_delete(p_pidm        tbrdepo.tbrdepo_pidm%TYPE,
                   p_tran_number tbrdepo.tbrdepo_tran_number%TYPE,
                   p_rowid       VARCHAR2 DEFAULT NULL)

Deletes a record.
Delete is enabled for Purge processing only, and should not be called for other purposes.

Parameters
p_pidm   Personal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key
p_tran_number   Transaction number (one-up within entity) of the deposit. NUMBER(8) Required Key
p_rowid   Database rowid of record to delete. VARCHAR2(18)


p_lock

Procedure p_lock(p_pidm        tbrdepo.tbrdepo_pidm%TYPE,
                 p_tran_number tbrdepo.tbrdepo_tran_number%TYPE,
                 p_rowid_inout IN OUT VARCHAR2)

Locks a record.
If rowid is not passed in, the record is located using the key values and the rowid of the locked row is passed in p_rowid_inout.

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key
p_tran_number   Transaction number (one-up within entity) of the deposit. NUMBER(8) Required Key
p_rowid_inout   Database rowid of record to lock. VARCHAR2(18) Required


p_update

Procedure p_update(p_pidm             tbrdepo.tbrdepo_pidm%TYPE,
                   p_tran_number      tbrdepo.tbrdepo_tran_number%TYPE,
                   p_desc             tbrdepo.tbrdepo_desc%TYPE DEFAULT dml_common.f_unspecified_string,
                   p_auto_release_ind tbrdepo.tbrdepo_auto_release_ind%TYPE DEFAULT dml_common.f_unspecified_string,
                   p_acct_feed_ind    tbrdepo.tbrdepo_acct_feed_ind%TYPE DEFAULT dml_common.f_unspecified_string,
                   p_min_amount       tbrdepo.tbrdepo_min_amount%TYPE DEFAULT dml_common.f_unspecified_number,
                   p_expiration_date  tbrdepo.tbrdepo_expiration_date%TYPE DEFAULT dml_common.f_unspecified_date,
                   p_release_date     tbrdepo.tbrdepo_release_date%TYPE DEFAULT dml_common.f_unspecified_date,
                   p_effective_date   tbrdepo.tbrdepo_effective_date%TYPE DEFAULT dml_common.f_unspecified_date,
                   p_session_number   tbrdepo.tbrdepo_session_number%TYPE DEFAULT dml_common.f_unspecified_number,
                   p_cshr_end_date    tbrdepo.tbrdepo_cshr_end_date%TYPE DEFAULT dml_common.f_unspecified_date,
                   p_feed_date        tbrdepo.tbrdepo_feed_date%TYPE DEFAULT dml_common.f_unspecified_date,
                   p_feed_doc_code    tbrdepo.tbrdepo_feed_doc_code%TYPE DEFAULT dml_common.f_unspecified_string,
                   p_atyp_code        tbrdepo.tbrdepo_atyp_code%TYPE DEFAULT dml_common.f_unspecified_string,
                   p_atyp_seqno       tbrdepo.tbrdepo_atyp_seqno%TYPE DEFAULT dml_common.f_unspecified_number,
                   p_data_origin      tbrdepo.tbrdepo_data_origin%TYPE DEFAULT dml_common.f_unspecified_string,
                   p_document_number  tbrdepo.tbrdepo_document_number%TYPE DEFAULT dml_common.f_unspecified_string,
                   p_rowid            VARCHAR2 DEFAULT NULL)

Updates a record.
All parameters which are not specified retain the value from the existing record. No defaulting occurs during update.
 
PIDM and Transaction Number, or ROWID required.
Many updates to the record will be made by system processes.
End user updates might include changes to -
    Minimum required
    Release date
    Expiration date
    Description
    Address of non-student transaction
    Document Number

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key
p_tran_number   Transaction number (one-up within entity) of the deposit. NUMBER(8) Required Key
p_desc   Free-form description associated with the deposit. VARCHAR2(30)
p_auto_release_ind   Indicates whether the deposit should be automatically released to the account as of the release date. VARCHAR2(1)
Y   Automatic release
N   Manual release

p_acct_feed_ind   Status of the deposit in the accounting feed. VARCHAR2(1)
Y   Feed transaction
F   Transaction fed

p_min_amount   Minimum amount that must remain as a deposit balance and not be released until the expiration date has passed. NUMBER(7,2)
p_expiration_date   Expiration date of the deposit, after which it may be released to the receivable account without regard to the minimum. DATE
p_release_date   Earliest date when the deposit may be released either automatically or manually. If null, the deposit may be released at any time. DATE
p_effective_date   Effective date of the deposit.  Default value is the date the deposit was entered. DATE
p_session_number   Cashier session number in which this transaction was posted (0 = current session). NUMBER(5)
p_cshr_end_date   End date and time of the cashiering session for this transaction. DATE
p_feed_date   Date this transaction was fed to the finance system. DATE
p_feed_doc_code   Document code used to feed this transaction to the finance system. VARCHAR2(8)
p_atyp_code   In combination with ATYP_SEQNO, the address associated with this deposit for non-student transactions. Valid in STVATYP. VARCHAR2(2)
p_atyp_seqno   In combination with ATYP_CODE, the address associated with this deposit for non-student transactions. Combination valid and active in SPRADDR. NUMBER(2)
p_data_origin   Source system that last created or updated the data. VARCHAR2(30)
p_document_number   Document number that references a source document for the deposit. VARCHAR2(8)
p_rowid   Database rowid of record to update. VARCHAR2(18)


p_release

Procedure p_release(p_pidm                tbrdepo.tbrdepo_pidm%TYPE,
                    p_tran_number         tbrdepo.tbrdepo_tran_number%TYPE DEFAULT NULL,
                    p_term_code           tbrdepo.tbrdepo_term_code%TYPE DEFAULT NULL,
                    p_detail_code_deposit tbrdepo.tbrdepo_detail_code_deposit%TYPE DEFAULT NULL,
                    p_deposit_type        tbbdepc.tbbdepc_dtyp_code%TYPE DEFAULT NULL,
                    p_user                tbrdepo.tbrdepo_user%TYPE,
                    p_receipt_number      tbrdepo.tbrdepo_receipt_number%TYPE DEFAULT NULL,
                    p_effective_date      tbrdepo.tbrdepo_effective_date%TYPE,
                    p_session_number      tbrdepo.tbrdepo_session_number%TYPE DEFAULT 0,
                    p_cshr_end_date       tbrdepo.tbrdepo_cshr_end_date%TYPE DEFAULT NULL,
                    p_release_amount      tbrdepo.tbrdepo_min_amount%TYPE DEFAULT NULL,
                    p_release_mode        VARCHAR2 DEFAULT 'M',
                    p_run_mode            VARCHAR2 DEFAULT NULL)

Releases one or more deposits.
 
PIDM, User (cashier), and Effective Date are required.
 
For Manual release -
    Transaction number and Release amount are required
    Term and Detail Code Deposit parameters may be left null
         If populated, they must match the data in the record identified by the Transaction number
 
For Automatic release -
     Term, Detail Code Deposit, and/or Deposit Type may be specified to limit the deposits released
          AND is used when multiple criteria are given
          Wildcard (%) may be used with Term Code and Detail Code Deposit
     Transaction number and Release amount should not be populated
 
A deposit is released automatically when the Auto Release Indicator is Y and the Release Date is null or is prior to the current date.  The Amount released is the remaining deposit Balance less the Minimum required.  After the expiration date has passed, any remaining Balance is released without regard to the Minimum.
 
Note that if messaging is enabled for DEPOSIT, the release procedure will generate an UPDATE message reflecting the new Balance.

Parameters
p_pidm   Internal Identification Number of the person or non-person account that has a deposit, valid in SPRIDEN. NUMBER(8) Required Key
p_tran_number   Transaction number of the deposit record to be released, required for manual record release. NUMBER(8)
p_term_code   Term associated with the deposit. Wildcard is allowed, all if null. VARCHAR2(6)
p_detail_code_deposit   Detail code used when the deposit is released to the receivable ledger. Wildcard is allowed, all if null. VARCHAR2(4)
p_deposit_type   Deposit type as designated in the Deposit Control (TBBDEPC).  Matched if given, or all. VARCHAR2(3)
p_user   User ID of the cashier releasing the deposit. Used to insert records into TBRACCD or TBRMEMO. VARCHAR2(30) Required
p_receipt_number   Receipt number to be used to insert records into TBRACCD. NUMBER(8)
p_effective_date   Effective date of the deposit. Used to insert records into TBRACCD or TBRMEMO. DATE Required
p_session_number   Cashier session number to be used to insert records into TBRACCD. NUMBER(5)
p_cshr_end_date   End date and time of the cashiering session used to insert records into TBRACCD. DATE
p_release_amount   Deposit amount to be released to the receivable or memo ledger. Required for manual record release. NUMBER(7,2)
p_release_mode   Release mode. VARCHAR2(1)
A   Automatically release qualified deposits
M   Manually release a deposit (default)

p_run_mode   Set to INVOICING to release deposits to the memo ledger, otherwise release to the receivable ledger. VARCHAR2(10)


p_release

Procedure p_release(p_pidm                tbrdepo.tbrdepo_pidm%TYPE,
                    p_tran_number         tbrdepo.tbrdepo_tran_number%TYPE DEFAULT NULL,
                    p_term_code           tbrdepo.tbrdepo_term_code%TYPE DEFAULT NULL,
                    p_detail_code_deposit tbrdepo.tbrdepo_detail_code_deposit%TYPE DEFAULT NULL,
                    p_deposit_type        tbbdepc.tbbdepc_dtyp_code%TYPE DEFAULT NULL,
                    p_user                tbrdepo.tbrdepo_user%TYPE,
                    p_receipt_number      tbrdepo.tbrdepo_receipt_number%TYPE DEFAULT NULL,
                    p_effective_date      tbrdepo.tbrdepo_effective_date%TYPE,
                    p_session_number      tbrdepo.tbrdepo_session_number%TYPE DEFAULT 0,
                    p_cshr_end_date       tbrdepo.tbrdepo_cshr_end_date%TYPE DEFAULT NULL,
                    p_release_amount      tbrdepo.tbrdepo_min_amount%TYPE DEFAULT NULL,
                    p_release_mode        VARCHAR2 DEFAULT 'M',
                    p_run_mode            VARCHAR2 DEFAULT NULL,
                    p_amt_released_out    OUT NUMBER,
                    p_amt_remain_out      OUT NUMBER,
                    p_release_msg_out     OUT gb_common_strings.err_type)

Releases one or more deposits, returning information regarding the amount released and remaining deposits.
 
This version of p_release will return the total amount released to the receivable account, the total of deposits which remain on record where the term and type meet the parameter selection, and a message why deposit(s) were not released in full where appropriate.
 
See additional narrative and parameter descriptions above.

Parameters
p_amt_released_out   Total amount credited to account for Deposit records considered for release. NUMBER Required
p_amt_remain_out   Deposit amount remaining on record for records considered for release. NUMBER Required
p_release_msg_out   Message regarding deposit remaining on record if greater than 0. VARCHAR2(255) Required