index

Package BANINST1.fb_invoice_header_rules

Support subprograms for the Invoice Header API (INVOICE HEADER)


Program units
f_user_has_invoice_privs   Function to test whether a user has privileges to create, update or delete an invoice.
f_get_invoice_priv_message   Function to test for invoice privileges.
f_is_invoice_updateable   Function to test if the data in an invoice can be updated.
f_does_encumb_exist   Function that returns a Y if encumbrance exists in a given fiscal year.
f_query_po_head   Function to query a header Purchase Order record and return the record.
p_register_entity   Register the attribute value pairs to the message cache for delete operations.
p_register_entity   Register the attribute/value pairs to the message cache for create and update operations.
p_validate_mandatory   Validates whether all the parameters are valued.
p_validate   Validates the entered data for creation or update of an invoice header record.
p_valid_create   Validates the entered data for creation of an invoice header record.
p_valid_update   Validates the entered data for update of an invoice header record.
p_valid_delete   Validates if an invoice header row can be deleted from the FABINVH table.
p_check_vend_pmt_hold   Validates if vendor is on payment hold and accordingly retuns an error message.


f_user_has_invoice_privs

Function f_user_has_invoice_privs(p_user_id          fobprof.fobprof_user_id%type DEFAULT gb_common.f_sct_user,
                                  p_user_inv_priv    fobprof.fobprof_user_inv_priv%type DEFAULT NULL,
                                  p_invoice_type_ind fabinvh.fabinvh_invoice_type_ind%type default NULL,
                                  p_invoice_code     fabinvh.fabinvh_code%type DEFAULT NULL)
  RETURN VARCHAR2

Function to test whether a user has privileges to create, update or delete an invoice.
If the user ID is not entered, the default is gb_common.f_sct_user.
Either the invoice code or the invoice type indicator is required.
The function returns a single character equal to one of the following values.
U - UserID is not valid.
I - Invoice code is not valid.
N - User not authorized to create any invoice.
D - User not authorized to create a direct pay invoice.
G - User not authorized to create a general pay invoice.
R - User not authorized to create a regular pay invoice.
Y - User is authorized to create this invoice.

Parameters
p_user_id   The Oracle ID of the user whose privileges are being tested.
p_user_inv_priv   The value of this indicator in the FOBPROF table.
p_invoice_type_ind   Indicates the type of invoice being created.
p_invoice_code   The invoice code being created.


f_get_invoice_priv_message

Function f_get_invoice_priv_message(p_user_id          fobprof.fobprof_user_id%type DEFAULT gb_common.f_sct_user,
                                    p_user_inv_priv    fobprof.fobprof_user_inv_priv%type DEFAULT NULL,
                                    p_invoice_type_ind fabinvh.fabinvh_invoice_type_ind%type default NULL,
                                    p_invoice_code     fabinvh.fabinvh_code%type DEFAULT NULL)
  RETURN VARCHAR2

Function to test for invoice privileges.
This function returns a null value if the user has been authorized.
If the user is not authorized, it returns the appropriate error message.
If the user ID has not been entered as a parameter, the default is gb_common.f_sct_user.
Either the invoice code or the invoice type indicator is required.

Parameters
p_user_id   The Oracle ID of the user whose privileges are being tested.
p_user_inv_priv   The value of this indicator in the FOBPROF table.
p_invoice_type_ind   The type of invoice being created.
p_invoice_code   The invoice code being created.


f_is_invoice_updateable

Function f_is_invoice_updateable(p_code     fabinvh.fabinvh_code%TYPE DEFAULT NULL,
                                 p_invh_rec fb_invoice_header.invoice_header_rec DEFAULT NULL)
  RETURN VARCHAR2

Function to test if the data in an invoice can be updated.

Parameters
p_code   The unique identifier that represents the invoice. VARCHAR2(8)
p_invh_rec   The whole invoice header record.

Returns
varchar2. Returns Y if the invoice is updateable; otherwise, returns the error message indicating the reason the invoice cannot be updated.


f_does_encumb_exist

Function f_does_encumb_exist(p_encumb_num VARCHAR2, p_date DATE)
  RETURN VARCHAR2

Function that returns a Y if encumbrance exists in a given fiscal year.

Parameters
p_encumb_num   The encumbrance number. Can be a Purchase Order or a General Encumbrance. VARCHAR2(8).
p_date   The encumbrance should exist in the fiscal year that is derived from this date. DATE

Returns
Returns Y if encumbrance exists and N if it does not.


f_query_po_head

Function f_query_po_head(po_code fpbpohd.fpbpohd_code%TYPE)
  RETURN fb_purchase_order.ORDER_HEADER_REC

Function to query a header Purchase Order record and return the record.

Parameters
po_code   The purchase order code that has to be queried. VARCHAR2(8)

Returns
Purchase order header record of type fb_purchase_order.ORDER_HEADER_REC.


p_register_entity

Procedure p_register_entity(p_operation_type     NUMBER,
                            p_internal_record_id gb_common.internal_record_id_type)

Register the attribute value pairs to the message cache for delete operations.
This signature uses the ROWID only, for the delete operations.

Parameters
p_operation_type   Type of DML operation: create,update,delete. NUMBER Required
p_internal_record_id   Database ROWID. VARCHAR2(18). Required.


p_register_entity

Procedure p_register_entity(p_operation_type        NUMBER,
                            p_code                  fabinvh.fabinvh_code%TYPE,
                            p_pohd_code             fabinvh.fabinvh_pohd_code%TYPE,
                            p_vend_pidm             fabinvh.fabinvh_vend_pidm%TYPE,
                            p_open_paid_ind         fabinvh.fabinvh_open_paid_ind%TYPE,
                            p_user_id               fabinvh.fabinvh_user_id%TYPE DEFAULT gb_common.f_sct_user,
                            p_vend_inv_code         fabinvh.fabinvh_vend_inv_code%TYPE,
                            p_invoice_date          fabinvh.fabinvh_invoice_date%TYPE,
                            p_pmt_due_date          fabinvh.fabinvh_pmt_due_date%TYPE,
                            p_trans_date            fabinvh.fabinvh_trans_date%TYPE,
                            p_cr_memo_ind           fabinvh.fabinvh_cr_memo_ind%TYPE,
                            p_adjt_code             fabinvh.fabinvh_adjt_code%TYPE,
                            p_adjt_date             fabinvh.fabinvh_adjt_date%TYPE,
                            p_1099_ind              fabinvh.fabinvh_1099_ind%TYPE,
                            p_1099_id               fabinvh.fabinvh_1099_id%TYPE,
                            p_ityp_seq_code         fabinvh.fabinvh_ityp_seq_code%TYPE,
                            p_text_ind              fabinvh.fabinvh_text_ind%TYPE,
                            p_appr_ind              fabinvh.fabinvh_appr_ind%TYPE,
                            p_complete_ind          fabinvh.fabinvh_complete_ind%TYPE,
                            p_disc_code             fabinvh.fabinvh_disc_code%TYPE,
                            p_trat_code             fabinvh.fabinvh_trat_code%TYPE,
                            p_addl_chrg_amt         fabinvh.fabinvh_addl_chrg_amt%TYPE,
                            p_hold_ind              fabinvh.fabinvh_hold_ind%TYPE,
                            p_susp_ind              fabinvh.fabinvh_susp_ind%TYPE,
                            p_susp_ind_addl         fabinvh.fabinvh_susp_ind_addl%TYPE,
                            p_cancel_ind            fabinvh.fabinvh_cancel_ind%TYPE,
                            p_cancel_date           fabinvh.fabinvh_cancel_date%TYPE,
                            p_post_date             fabinvh.fabinvh_post_date%TYPE,
                            p_atyp_code             fabinvh.fabinvh_atyp_code%TYPE,
                            p_atyp_seq_num          fabinvh.fabinvh_atyp_seq_num%TYPE,
                            p_grouping_ind          fabinvh.fabinvh_grouping_ind%TYPE,
                            p_bank_code             fabinvh.fabinvh_bank_code%TYPE,
                            p_ruiv_ind              fabinvh.fabinvh_ruiv_ind%TYPE,
                            p_edit_defer_ind        fabinvh.fabinvh_edit_defer_ind%TYPE,
                            p_override_tax_amt      fabinvh.fabinvh_override_tax_amt%TYPE,
                            p_tgrp_code             fabinvh.fabinvh_tgrp_code%TYPE,
                            p_submission_number     fabinvh.fabinvh_submission_number%TYPE,
                            p_vend_check_pidm       fabinvh.fabinvh_vend_check_pidm%TYPE,
                            p_invoice_type_ind      fabinvh.fabinvh_invoice_type_ind%TYPE,
                            p_curr_code             fabinvh.fabinvh_curr_code%TYPE,
                            p_disb_agent_ind        fabinvh.fabinvh_disb_agent_ind%TYPE,
                            p_atyp_code_vend        fabinvh.fabinvh_atyp_code_vend%TYPE,
                            p_atyp_seq_num_vend     fabinvh.fabinvh_atyp_seq_num_vend%TYPE,
                            p_nsf_on_off_ind        fabinvh.fabinvh_nsf_on_off_ind%TYPE,
                            p_single_acctg_ind      fabinvh.fabinvh_single_acctg_ind%TYPE,
                            p_one_time_vend_name    fabinvh.fabinvh_one_time_vend_name%TYPE,
                            p_one_time_house_number fabinvh.fabinvh_one_time_house_number%TYPE,
                            p_one_time_vend_addr1   fabinvh.fabinvh_one_time_vend_addr1%TYPE,
                            p_one_time_vend_addr2   fabinvh.fabinvh_one_time_vend_addr2%TYPE,
                            p_one_time_vend_addr3   fabinvh.fabinvh_one_time_vend_addr3%TYPE,
                            p_one_time_vend_addr4   fabinvh.fabinvh_one_time_vend_addr4%TYPE,
                            p_one_time_vend_city    fabinvh.fabinvh_one_time_vend_city%TYPE,
                            p_one_time_vend_state   fabinvh.fabinvh_one_time_vend_state%TYPE,
                            p_one_time_vend_zip     fabinvh.fabinvh_one_time_vend_zip%TYPE,
                            p_one_time_vend_natn    fabinvh.fabinvh_one_time_vend_natn%TYPE,
                            p_delivery_point        fabinvh.fabinvh_delivery_point%TYPE,
                            p_correction_digit      fabinvh.fabinvh_correction_digit%TYPE,
                            p_carrier_route         fabinvh.fabinvh_carrier_route%TYPE,
                            p_ruiv_installment_ind  fabinvh.fabinvh_ruiv_installment_ind%TYPE,
                            p_multiple_inv_ind      fabinvh.fabinvh_multiple_inv_ind%TYPE,
                            p_phone_area            fabinvh.fabinvh_phone_area%TYPE,
                            p_phone_number          fabinvh.fabinvh_phone_number%TYPE,
                            p_phone_ext             fabinvh.fabinvh_phone_ext%TYPE,
                            p_email_addr            fabinvh.fabinvh_email_addr%TYPE,
                            p_ctry_code_fax         fabinvh.fabinvh_ctry_code_fax%TYPE,
                            p_fax_area              fabinvh.fabinvh_fax_area%TYPE,
                            p_fax_number            fabinvh.fabinvh_fax_number%TYPE,
                            p_fax_ext               fabinvh.fabinvh_fax_ext%TYPE,
                            p_cancel_code           fabinvh.fabinvh_cancel_code%TYPE,
                            p_attention_to          fabinvh.fabinvh_attention_to%TYPE,
                            p_vendor_contact        fabinvh.fabinvh_vendor_contact%TYPE,
                            p_invd_re_establish_ind fabinvh.fabinvh_invd_re_establish_ind%TYPE,
                            p_ach_override_ind      fabinvh.fabinvh_ach_override_ind%TYPE,
                            p_acht_code             fabinvh.fabinvh_acht_code%TYPE,
                            p_origin_code           fabinvh.fabinvh_origin_code%TYPE,
                            p_match_required        fabinvh.fabinvh_match_required%TYPE,
                            p_create_user           fabinvh.fabinvh_create_user%TYPE,
                            p_create_date           fabinvh.fabinvh_create_date%TYPE,
                            p_complete_user         fabinvh.fabinvh_complete_user%TYPE,
                            p_complete_date         fabinvh.fabinvh_complete_date%TYPE,
                            p_data_origin           fabinvh.fabinvh_data_origin%TYPE,
                            p_create_source         fabinvh.fabinvh_create_source%TYPE,
                            p_cancel_User           fabinvh.fabinvh_cancel_user%TYPE DEFAULT dml_common.f_unspecified_string,
                            p_cancel_activity_date  fabinvh.fabinvh_cancel_activity_date%TYPE DEFAULT dml_common.f_unspecified_date,
                            p_ctry_code_phone       fabinvh.fabinvh_ctry_code_phone%TYPE,
                            p_vend_hold_ovrd_ind    fabinvh.fabinvh_vend_hold_ovrd_ind%TYPE,
                            p_vend_hold_ovrd_user   fabinvh.fabinvh_vend_hold_ovrd_user%TYPE,
                            p_internal_record_id    gb_common.internal_record_id_type)

Register the attribute/value pairs to the message cache for create and update operations.
 
This signature registers all parameters.

Parameters
p_operation_type   Type of DML operation: create,update,delete. NUMBER Required
p_code   The unique identifier of an Invoice document.  The code may be system-generated. VARCHAR2(8) Required Key
p_pohd_code   The Purchase Order or General Encumbrance document number which is referenced on the Invoice, if any.  Only populated for Regular or General Encumbrance Invoice types. VARCHAR2(8)
p_vend_pidm   The unique internal identification number of the Invoice vendor. NUMBER(8)
p_open_paid_ind   Indicates the payment status of the Invoice document.  Valid values are O if the Invoice is open and P if the Invoice is paid. VARCHAR2(1) Required
p_user_id   The unique identification code of the user who last updated the Invoice document. VARCHAR2(30) Required
p_vend_inv_code   The Invoice number as supplied by the vendor. VARCHAR2(15)
p_invoice_date   A user-defined or system-generated Invoice date.  Basis of calculated Payment Due Date if terms/discount are used. DATE
p_pmt_due_date   The date an Invoice is due. Can be user-defined or calculated based on Invoice terms/discount. DATE
p_trans_date   The date the Invoice document will be recorded in the ledgers. DATE
p_cr_memo_ind   Indicates that the Invoice should be processed as a Credit Memo. If Y, the payment will be recorded as a Credit Memo. VARCHAR2(1) Required
p_adjt_code   This column is not currently used by the Banner Finance application. VARCHAR2(2)
p_adjt_date   This column is not currently used by the Banner Finance application. DATE
p_1099_ind   Indicates that the Invoice includes taxable payments.  If Y, the payment will be recorded in the 1099 tables and accumulated for income tax reporting purposes. VARCHAR2(1)
p_1099_id   The taxpayer identification number (TIN) which uniquely identifies this vendor for Federal Income tax purposes.  For an individual, uses the social security number (SSN). VARCHAR2(9)
p_ityp_seq_code   The internal value which represents the user selected income type (as defined in table FTVITYP) for 1099 processing and reporting purposes.  Defaults from vendor record (as defined on FTVVEND). NUMBER(2)
p_text_ind   Indicates that text exists for the record. VARCHAR2(1)
p_appr_ind   Indicates if the document has been approved.  If Y, the document has received final approval. VARCHAR2(1)
p_complete_ind   Indicates if the document has been completed.  If Y, the document has been completed. VARCHAR2(1)
p_disc_code   The discount code (as defined in table FTVDISC) to be used to define payment terms for the processing of the Invoice. VARCHAR2(2)
p_trat_code   This column is not currently used by the Banner Finance application. VARCHAR2(3)
p_addl_chrg_amt   The total dollar value of any additional charges, e.g., freight associated with this Invoice. NUMBER(17,2)
p_hold_ind   Indicates that the Invoice record has been placed on hold to prevent payment to a vendor.  Indicator is set via the FAAINVE or FAAPAYC form.  If Y, the document will be withheld from the payment process. VARCHAR2(1) Required
p_susp_ind   Indicates to the user that a document is being held in suspense due to missing or erroneous data content. VARCHAR2(1) Required
p_susp_ind_addl   This column is not currently used by the Banner Finance application. VARCHAR2(1) Required
p_cancel_ind   Indicates if the Invoice has been cancelled. VARCHAR2(1) Required
p_cancel_date   The date that the Invoice was cancelled. DATE
p_post_date   This column is not currently used by the Banner Finance application. DATE
p_atyp_code   Used to identify the vendor address type to which the payment will be made. When using Check Vendor this value will be the address type for the vendor defined in FABINVH_VEND_CHECK_PIDM. VARCHAR2(2)
p_atyp_seq_num   Used to identify the vendor address type sequence to which the payment will be made. When using Check Vendor this value will be the address type sequence for the vendor defined in FABINVH_VEND_CHECK_PIDM. NUMBER(2)
p_grouping_ind   Indicates the relationship between the number of invoices processed and the number of checks.  A value of 1 creates one check per invoice; a value of M combines many invoices on one check. VARCHAR2(1)
p_bank_code   The Bank Code (as defined in table GXVBANK) to be used for processing the payment of the Invoice. VARCHAR2(2)
p_ruiv_ind   Indicates that an invoice will be processed on a recurring basis on a specific schedule as defined in the form FAARUIV. VARCHAR2(1)
p_edit_defer_ind   Indicates that document editing of the Invoice will be deferred until after completion. VARCHAR2(1)
p_override_tax_amt   This column is not currently used by the Banner Finance application. NUMBER(17,2)
p_tgrp_code   The tax group (as defined in table FTVTGRP) to be used for the processing of the Invoice. VARCHAR2(4)
p_submission_number   The internal submission number for the Invoice record.  Used for tracking recurring and re-established Invoice documents. NUMBER(3)
p_vend_check_pidm   The unique internal identification number of the Invoice check vendor or disbursing agent when one is identified. NUMBER(8)
p_invoice_type_ind   Indicates the type of Invoice. Valid values are D for Direct Pay/General Encumbrance or R for Regular. VARCHAR2(1) Required
p_curr_code   The currency (as defined in table GTVCURR) to be used for the processing of the Invoice. VARCHAR2(4)
p_disb_agent_ind   Indicates that the Invoice will use a Disbursing Agent for payment.  The Disbursing Agent is associated to a foreign currency on form GUACURR. VARCHAR2(1)
p_atyp_code_vend   Identifies the address type for the Invoice vendor defined in FABINVH_VEND_PIDM. VARCHAR2(2)
p_atyp_seq_num_vend   Used to identify the address type sequence number for the Invoice vendor defined in FABINVH_VEND_PIDM. NUMBER(2)
p_nsf_on_off_ind   Indicates when non-sufficient funds checking will be done.  If Y, checking will be performed at time of data entry. VARCHAR2(1)
p_single_acctg_ind   Indicates the Accounting Level used for the Invoice.  Valid values are Y for Document Level Accounting and N for Commodity Level Accounting. VARCHAR2(1)
p_one_time_vend_name   Name for use with One Time Vendor. VARCHAR2(60)
p_one_time_house_number   Building or lot number on a street or in an area for One Time Vendor. VARCHAR2(10)
p_one_time_vend_addr1   Address Line 1 for use with One Time Vendor. VARCHAR2(75)
p_one_time_vend_addr2   Address Line 2 for use with One Time Vendor. VARCHAR2(75)
p_one_time_vend_addr3   Address Line 3 for use with One Time Vendor. VARCHAR2(57)
p_one_time_vend_addr4   Address Line 4 for use with One Time Vendor. VARCHAR2(75)
p_one_time_vend_city   City for use with One Time Vendor. VARCHAR2(50)
p_one_time_vend_state   State or Province for use with One Time Vendor. VARCHAR2(3)
p_one_time_vend_zip   Zip or Postal Code for use with One Time Vendor. VARCHAR2(30)
p_one_time_vend_natn   Nation for use with One Time Vendor. VARCHAR2(5)
p_delivery_point   This column is not currently used by the Banner Finance application. NUMBER(2)
p_correction_digit   This column is not currently used by the Banner Finance application. NUMBER(1)
p_carrier_route   This column is not currently used by the Banner Finance application. VARCHAR2(4)
p_ruiv_installment_ind   Indicates whether the Invoice when set up as recurring payment is an installment. It is used by the fixed asset module to determine the capitalization amount. VARCHAR2(1)
p_multiple_inv_ind   Indicates if multiple vendor invoices are associated with the Banner Invoice document.  If Y, then additional information is stored in the table FARVINV. VARCHAR2(1)
p_ctry_code_phone   Code designating the region or country. VARCHAR2(4)
p_phone_area   This column is not currently used by the Banner Finance application. VARCHAR2(6)
p_phone_number   This column is not currently used by the Banner Finance application. VARCHAR2(12)
p_phone_ext   This column is not currently used by the Banner Finance application. VARCHAR2(10)
p_email_addr   This column is not currently used by the Banner Finance application. VARCHAR2(20)
p_ctry_code_fax   This column is not currently used by the Banner Finance application. VARCHAR2(6)
p_fax_area   This column is not currently used by the Banner Finance application. VARCHAR2(6)
p_fax_number   This column is not currently used by the Banner Finance application. VARCHAR2(12)
p_fax_ext   This column is not currently used by the Banner Finance application. VARCHAR2(10)
p_cancel_code   This column is not currently used by the Banner Finance application. VARCHAR2(4)
p_attention_to   This column is not currently used by the Banner Finance application. VARCHAR2(35)
p_vendor_contact   This column is not currently used by the Banner Finance application. VARCHAR2(35)
p_invd_re_establish_ind   Indicates whether the Invoice is to be re-established at invoice cancellation time. Indicator is set based on population of Re-establish Indicator on FAAINVD.  Indicator is cleared after invoice cancellation is posted. VARCHAR2(1)
p_ach_override_ind   Indicates if the active ACH status of the vendor as defined in form GXADIRD should be overridden when processing payment for this Invoice.  If Y, the Invoice payment will be made via check. VARCHAR2(1)
p_acht_code   ACH Transaction Type code required for International ACH Transaction (IAT) direct deposits. VARCHAR2(8)
p_origin_code   Identifies the source of the Invoice document. VARCHAR2(10)
p_match_required   Indicates if this Invoice must be forwarded through the matching process. Valid values are N for no matching required, Y for matching required, and U if the matching requirement is unspecified/undetermined. VARCHAR2(1) Required
p_create_user   This field contains the Banner User ID which created the new record. VARCHAR2(30)
p_create_date   This field contains the date on which the new record was created. DATE
p_complete_user   This field contains the Banner User ID of the user who completed this invoice and forwarded it to the next process. VARCHAR2(30)
p_complete_date   The date on which this invoice was completed and forwarded to the next process. DATE
p_data_origin   Source system that generated the data. VARCHAR2(30)
p_create_source   Source system that created the new record. VARCHAR2(30)
p_cancel_user   The userid of the user who cancelled the invoice VARCHAR2(30)
p_cancel_activity_date   The date on which the invoice was cancelled. DATE
p_vend_hold_ovrd_ind   Indicates an authorized user has approved an invoice for payment when the vendor has a payment hold. VARCHAR2(1)
p_vend_hold_ovrd_user   The Oracle ID of the last user who added the Vendor Hold Override. VARCHAR2(30)
p_internal_record_id   Database ROWID VARCHAR2(18) Required.


p_validate_mandatory

Procedure p_validate_mandatory(p_code             fabinvh.fabinvh_code%TYPE,
                               p_open_paid_ind    fabinvh.fabinvh_open_paid_ind%TYPE,
                               p_user_id          fabinvh.fabinvh_user_id%TYPE,
                               p_cr_memo_ind      fabinvh.fabinvh_cr_memo_ind%TYPE,
                               p_hold_ind         fabinvh.fabinvh_hold_ind%TYPE,
                               p_susp_ind         fabinvh.fabinvh_susp_ind%TYPE,
                               p_susp_ind_addl    fabinvh.fabinvh_susp_ind_addl%TYPE,
                               p_cancel_ind       fabinvh.fabinvh_cancel_ind%TYPE,
                               p_invoice_type_ind fabinvh.fabinvh_invoice_type_ind%TYPE,
                               p_match_required   fabinvh.fabinvh_match_required%TYPE)

Validates whether all the parameters are valued. These parameters represent the columns of the invoice header table that have a NOT NULL constraint and therefore should be valued before a row of data is inserted or updated into the table.

Parameters
p_code   The unique identifier of an Invoice document.  The code may be system-generated. VARCHAR2(8) Required Key
p_open_paid_ind   Indicates the payment status of the Invoice document.  Valid values are O if the Invoice is open and P if the Invoice is paid. VARCHAR2(1) Required
p_user_id   The unique identification code of the user who last updated the Invoice document. VARCHAR2(30) Required
p_cr_memo_ind   Indicates that the Invoice should be processed as a Credit Memo. If Y, the payment will be recorded as a Credit Memo. VARCHAR2(1) Required
p_hold_ind   Indicates that the Invoice record has been placed on hold to prevent payment to a vendor.  Indicator is set via FAAINVE or FAAPAYC form.  If Y, the document will be withheld from the payment process. VARCHAR2(1) Required
p_susp_ind   Indicates to the user that a document is being held in suspense due to missing or erroneous data content. VARCHAR2(1) Required
p_susp_ind_addl   This column is not currently used by the Banner Finance application. VARCHAR2(1) Required
p_cancel_ind   Indicates if the Invoice has been cancelled. VARCHAR2(1) Required
p_invoice_type_ind   Indicates the type of Invoice. Valid values are D for Direct Pay/General Encumbrance or R for Regular. VARCHAR2(1) Required
p_match_required   Indicates if this Invoice must be forwarded through the matching process. Valid values are N for no matching required, Y for matching required, and U if the matching requirement is unspecified/undetermined. VARCHAR2(1) Required


p_validate

Procedure p_validate(p_entered_rec         fb_invoice_header.invoice_header_rec,
                     p_validated_rec_inout IN OUT fb_invoice_header.invoice_header_rec,
                     p_error_out           OUT VARCHAR2,
                     p_action              VARCHAR2)

Validates the entered data for creation or update of an invoice header record.
Returns the validated record to the calling procedure which will then insert or update this record into the invoice header table.

Parameters
p_entered_rec   Header data that has been passed to API for creating or updating a header record.
p_validated_data_inout   Header data that is now ready for insert or update into the invoice header table.
p_error_out   Any error messages that this routine generates during the validation. VARCHAR2
p_action   The action that the calling procedure will be performing with the data. Values are CREATE if inserting a new record into the header table or UPDATE if an existing header record is being updated.


p_valid_create

Procedure p_valid_create(p_entered_data       fb_invoice_header.invoice_header_rec,
                         p_validated_data_out OUT fb_invoice_header.invoice_header_rec,
                         p_error_mesg_out     OUT gb_common_strings.err_type)

Validates the entered data for creation of an invoice header record.
Returns the validated record to the calling procedure p_create which will then insert this record into the invoice header table.

Parameters
p_entered_data   Header data that has been passed to API for creating a header record.
p_validated_data_out   Header data that is now ready for insert into the invoice header table.
p_error_mesg_out   Any error messages that this routine generates during the validation.


p_valid_update

Procedure p_valid_update(p_existing_data        fb_invoice_header.invoice_header_rec,
                         p_validated_data_inout IN OUT fb_invoice_header.invoice_header_rec,
                         p_error_mesg_out       OUT gb_common_strings.err_type)

Validates the entered data for update of an invoice header record.
Returns the validated record for update.

Parameters
p_entered_data   Header data that has been passed to API for updating a header record.
p_validated_data_out   Header data that is now ready for update of the invoice header table.
p_error_mesg_out   Any error messages that this routine generates during the validation


p_valid_delete

Procedure p_valid_delete(p_code_inout     IN OUT fabinvh.fabinvh_code%TYPE,
                         p_rowid_inout    IN OUT gb_common.internal_record_id_type,
                         p_user_id        fabinvh.fabinvh_user_id%TYPE DEFAULT gb_common.f_sct_user,
                         p_error_mesg_out OUT gb_common_strings.err_type)

Validates if an invoice header row can be deleted from the FABINVH table.

Parameters
p_code   Invoice code that needs to be validated
p_rowid   The rowid of the invoice that needs to be validated. Either rowid or code has to be valued
p_user_id   The user id that is deleting the invoice.
p_error_mesg_out   Any error message that the routine generates during the check.


p_check_vend_pmt_hold

Procedure p_check_vend_pmt_hold(p_vend_pidm       fabinvh.fabinvh_vend_pidm%TYPE,
                                p_eff_date        DATE,
                                p_in_out_err_mesg IN OUT fpkutil.error_mesg_type)

Validates if vendor is on payment hold and accordingly retuns an error message.

Parameters
p_vend_pidm   The unique internal identification number of the Invoice vendor.
p_eff_date   The date of invoice which is used to check if the vendor is effective as of the invoice date.
p_in_out_err_mesg   Any error message that the routine generates during the check.