CREATE OR REPLACE PACKAGE efno_contracts IS -- -- Purpose : Nomination Rule engine functions -- #version $Revision: 1 $ -- #author $Author: Laceyk $ -- Created : 12/02/2007 16:15:16 -- g_package_name CONSTANT VARCHAR2(30) := 'efno_contracts'; g_header CONSTANT VARCHAR2(160) := '$Header: $'; g_revision CONSTANT VARCHAR2(160) := '$Revision: $ Patch 0.3'; -- g_perc_split_en module_text.text%TYPE := caco_utilities.get_module_text(3921,'EN'); g_perc_split_hu module_text.text%TYPE := caco_utilities.get_module_text(3921,'HU'); -- -- g_vc_arr owa_util.vc_arr; g_num_arr owa_util.num_arr; -- TYPE network_point_array IS TABLE OF network_points.nepo_id%TYPE INDEX BY BINARY_INTEGER; -- TYPE category_record IS RECORD ( cate_id categories.cate_id%TYPE , inherited VARCHAR2(1) , display_sequence NUMBER ); -- TYPE category_array IS TABLE OF category_record INDEX BY BINARY_INTEGER; -- TYPE parameter_record IS RECORD ( pars_id parameters.pars_id%TYPE , inherited VARCHAR2(1) ); -- TYPE parameter_array IS TABLE OF parameter_record INDEX BY BINARY_INTEGER; -- TYPE contract_rules_rec IS RECORD ( display_sequence contract_rules.display_sequence%TYPE , rule_name contract_rules.rule_name%TYPE , rule_type contract_rules.coru_type%TYPE , coru_id contract_rules.coru_id%TYPE , rule_id rules.rule_id%TYPE , inherited contract_rules.inherited%TYPE ); -- TYPE perc_split_record IS RECORD ( conp_id cont_net_point_param_vals.conp_id%TYPE , value cont_net_point_param_vals.value%TYPE); -- TYPE perc_split_array IS TABLE OF perc_split_record INDEX BY BINARY_INTEGER; -- -- CURSOR c_rules( cp_cont_id IN NUMBER ) RETURN contract_rules_rec; -- /** -- FUNCTION validate_nomination -- Fairly Simplistic function that will just return TRUE or FALSE -- to indicate if the given nomination is valid for the contract as it stands -- -- %param p_contract_id The Unique identifier of a Contract -- %param p_nomination_id The Unique identifier of a Nomination -- %param p_return_error OUT: Message giving brief reason why the rule is invalid if indeed it is -- -- %return BOOLEAN TRUE indicating that the nomination is valid */ FUNCTION validate_nomination( p_contract_id IN contracts.cont_id%TYPE , p_nomination_id IN nominations.nomi_id%TYPE , p_return_error OUT VARCHAR2 ) RETURN BOOLEAN; -- -- PROCEDURE upd_cnppv_records( p_contract_id IN NUMBER , p_page_no IN NUMBER DEFAULT 1 , p_cnppv_id IN owa_util.vc_arr DEFAULT g_vc_arr , p_value IN owa_util.vc_arr DEFAULT g_vc_arr ); -- PROCEDURE ins_or_upd_cont_opt(p_cont_id IN contract_options.cont_id%TYPE, p_ind_deadline_for_nom_submit IN contract_options.ind_deadline_for_nom_submit%TYPE, p_shipper IN contract_options.shipper%TYPE, p_auto_gen_conf IN contract_options.auto_gen_conf%TYPE, p_conf_type IN contract_options.conf_type%TYPE, p_com_conf_subject IN contract_options.com_conf_subject%TYPE, p_com_conf_content IN contract_options.com_conf_content%TYPE, p_nom_conf_subject IN contract_options.nom_conf_subject%TYPE, p_nom_conf_content IN contract_options.nom_conf_content%TYPE, p_ind_deadline_hr IN contract_options.ind_deadline_for_nom_submit%TYPE, p_ind_deadline_mi IN contract_options.ind_deadline_for_nom_submit%TYPE, p_int_subject IN contract_options.int_subject%TYPE, p_int_content IN contract_options.int_content%TYPE, p_int_sms_content IN contract_options.int_sms_content%TYPE); PROCEDURE ins_or_upd_contract_p1( p_ins_or_upd IN VARCHAR2 DEFAULT 'INSERT' , p_contract_id IN contracts.cont_id%TYPE DEFAULT 0 , p_contract_number IN VARCHAR2 DEFAULT NULL , p_pre_contract_id IN contracts.prev_cont_id%TYPE DEFAULT 0 , p_customer_id IN customers.cust_id%TYPE DEFAULT 0 , p_template_id IN contract_templates.cote_id%TYPE DEFAULT 0 , p_spte_id IN spreadsheet_templates.spte_id%TYPE DEFAULT 0 , p_ops_contact IN VARCHAR2 DEFAULT NULL , p_bus_contact IN VARCHAR2 DEFAULT NULL , p_status IN contracts.status%TYPE DEFAULT NULL , p_days_before IN VARCHAR2 DEFAULT NULL , p_date_from IN VARCHAR2 DEFAULT NULL , p_date_to IN VARCHAR2 DEFAULT NULL , p_val_window IN VARCHAR2 DEFAULT NULL , p_val_action IN contracts.validation_action%TYPE DEFAULT NULL , p_val_exception IN contracts.validation_exception%TYPE DEFAULT NULL , p_lookback_action IN contracts.lookback_action%TYPE DEFAULT NULL , p_nepo_id IN owa_util.vc_arr DEFAULT g_vc_arr , p_cate_id IN owa_util.vc_arr DEFAULT g_vc_arr , p_pars_id IN owa_util.vc_arr DEFAULT g_vc_arr ); PROCEDURE ins_or_upd_template_p1( p_ins_or_upd IN VARCHAR2 DEFAULT NULL , p_template_id IN NUMBER DEFAULT 0 , p_template_name IN VARCHAR2 DEFAULT NULL , p_template_desc IN VARCHAR2 DEFAULT NULL , p_emo IN VARCHAR2 DEFAULT NULL , p_cate_id IN owa_util.vc_arr DEFAULT g_vc_arr , p_pars_id IN owa_util.vc_arr DEFAULT g_vc_arr ); -- -- Procedure to copy an existing contract -- PROCEDURE copy_contract ( p_cont_id_from contracts.cont_id%TYPE , p_cont_number_to contracts.contract_number%TYPE ); -- PROCEDURE efnow050$copy ( p_contract_id IN NUMBER DEFAULT NULL , p_contract_name IN VARCHAR2 DEFAULT NULL , p_action IN VARCHAR2 DEFAULT NULL ); -- -- Function to check if a contract is an Entry Mandatory Offer contract FUNCTION emo_contract( p_contract_id IN NUMBER ) RETURN VARCHAR2; -- Function to check if a contract network point is a virtual network point FUNCTION virtual_nepo( p_conp_id IN NUMBER ) RETURN BOOLEAN; -- Function to check if a network poinr is being used by a contract FUNCTION nepo_in_contract ( p_nepo_id IN network_points.nepo_id%TYPE ) RETURN BOOLEAN; /** -- FUNCTION about -- -- %return A textual description of the version number and VSS header for this package */ FUNCTION about RETURN VARCHAR2; -- END efno_contracts; /