1 PACKAGE XTR_NI_TRANSFERS_PKG AS
2 /* $Header: xtrimnis.pls 120.2 2005/06/29 10:21:01 csutaria noship $*/
3
4 procedure TRANSFER_NI_DEALS(ARec_Interface IN XTR_DEALS_INTERFACE%ROWTYPE,
5 user_error OUT NOCOPY BOOLEAN,
6 mandatory_error OUT NOCOPY BOOLEAN,
7 validation_error OUT NOCOPY BOOLEAN,
8 limit_error OUT NOCOPY BOOLEAN);
9
10 procedure TRANSFER_NI_DEALS(ARec_Interface IN XTR_DEALS_INTERFACE%ROWTYPE,
11 user_error OUT NOCOPY BOOLEAN,
12 mandatory_error OUT NOCOPY BOOLEAN,
13 validation_error OUT NOCOPY BOOLEAN,
14 limit_error OUT NOCOPY BOOLEAN,
15 deal_num OUT NOCOPY NUMBER);
16
17 procedure CHECK_MANDATORY_FIELDS(ARec_Interface IN XTR_DEALS_INTERFACE%ROWTYPE,
18 error OUT NOCOPY BOOLEAN);
19
20 procedure VALIDATE_DEALS(ARec_Interface IN XTR_DEALS_INTERFACE%ROWTYPE,
21 error OUT NOCOPY BOOLEAN);
22
23 procedure CALC_RATES(ARec_Interface IN XTR_DEALS_INTERFACE%ROWTYPE,
24 error OUT NOCOPY boolean);
25
26 procedure CHECK_VALIDITY(ARec_Interface IN XTR_DEALS_INTERFACE%ROWTYPE,
27 error OUT NOCOPY BOOLEAN) ;
28
29 FUNCTION val_deal_date (p_date_a IN date) return BOOLEAN;
30
31 FUNCTION val_start_date (p_date_a IN date,
32 p_date_b IN date) return BOOLEAN;
33
34 FUNCTION val_maturity_date (p_date_a IN date,
35 p_date_b IN date) return BOOLEAN;
36
37 FUNCTION val_client_code(p_client_code IN varchar2) return BOOLEAN;
38
39 FUNCTION val_portfolio_code(p_company_code IN varchar2,
40 p_cparty_code IN varchar2,
41 p_portfolio_code IN varchar2) return BOOLEAN;
42
43 FUNCTION val_currencies ( p_currency IN varchar2) return BOOLEAN;
44
45 FUNCTION val_comp_acct_no(p_company_code IN varchar2,
46 p_currency IN varchar2,
47 p_account_no IN varchar2) return BOOLEAN;
48
49 FUNCTION val_cparty_ref( p_cparty_account_no IN varchar2,
50 p_cparty_ref IN varchar2,
51 p_cparty_code IN varchar2,
52 p_currency IN varchar2) return BOOLEAN;
53
54 FUNCTION val_deal_linking_code( p_deal_linking_code IN varchar2) return BOOLEAN;
55
56 FUNCTION val_brokerage_code ( p_brokerage_code IN varchar2) return BOOLEAN;
57
58 FUNCTION val_dealer_code(p_dealer_code IN VARCHAR2) return BOOLEAN;
59
60 FUNCTION val_cparty_code(p_company_code IN VARCHAR2,
61 p_cparty_code IN VARCHAR2) return BOOLEAN;
62
63 FUNCTION val_deal_subtype(p_user_deal_subtype IN VARCHAR2) return BOOLEAN;
64
65 FUNCTION val_product_type(p_product_type IN VARCHAR2,
66 p_deal_subtype IN VARCHAR2) return BOOLEAN;
67
68 FUNCTION val_pricing_model(p_pricing_model IN VARCHAR2) return BOOLEAN;
69
70 FUNCTION val_market_data_set(p_market_data_set IN VARCHAR2) return BOOLEAN;
71
72 FUNCTION val_risk_party_code(p_party_code IN VARCHAR2) return BOOLEAN;
73
74 FUNCTION val_limit_code(p_limit_code IN VARCHAR2,
75 p_company_code IN VARCHAR2,
76 p_acceptor_code IN VARCHAR2,
77 p_endorser_code IN VARCHAR2,
78 p_drawer_code IN VARCHAR2) return BOOLEAN;
79
80 FUNCTION val_rounding_type(p_rounding_type IN VARCHAR2) return BOOLEAN;
81
82 FUNCTION val_day_count_type(p_day_count_type IN VARCHAR2) return BOOLEAN;
83
84 FUNCTION val_year_calc_type(p_year_calc_type IN VARCHAR2) return BOOLEAN;
85
86 FUNCTION val_year_calc_day_count_combo(p_year_calc_type IN VARCHAR2,
87 p_day_count_type IN VARCHAR2) return BOOLEAN;
88
89 FUNCTION val_basis_type(p_basis_type IN VARCHAR2) return BOOLEAN;
90
91 FUNCTION val_trans_rate(p_trans_rate IN VARCHAR2,
92 p_currency IN VARCHAR2) return BOOLEAN;
93
94 FUNCTION val_client_settle(p_client_settle IN VARCHAR2) return BOOLEAN;
95
96 FUNCTION val_principal_tax_code(p_tax_code IN VARCHAR2) return BOOLEAN;
97
98 FUNCTION val_interest_tax_code(p_tax_code IN VARCHAR2) return BOOLEAN;
99
100 FUNCTION val_interest (p_company_code IN varchar2,
101 p_cparty_code IN varchar2,
102 p_deal_type IN varchar2,
103 p_currency_code IN varchar2,
104 p_int_amount IN number,
105 p_original_amount IN number) RETURN boolean;
106
107 FUNCTION val_consideration(p_face_value IN VARCHAR2,
108 p_consideration IN VARCHAR2,
109 p_basis_type IN VARCHAR2) return BOOLEAN;
110
111 FUNCTION val_serial_number(p_serial_number IN VARCHAR2,
112 p_parcel_count IN NUMBER) return BOOLEAN;
113
114 PROCEDURE CHECK_ACCRUAL_REVAL(ARec_interface IN xtr_deals_interface%ROWTYPE);
115
116 PROCEDURE copy_from_interface_to_ni(ARec_Interface IN xtr_deals_interface%rowtype );
117
118 PROCEDURE CALC_TOTAL_SPLITS(p_user_deal_type in VARCHAR2,p_error OUT NOCOPY boolean);
119
120 PROCEDURE CALC_HCE_AMOUNTS (p_user_deal_type IN VARCHAR2, p_error OUT NOCOPY BOOLEAN);
121
122 PROCEDURE CALC_BROKERAGE_AMT(p_user_deal_type IN VARCHAR2,
123 p_bkr_amt_type IN VARCHAR2,
124 p_error OUT NOCOPY BOOLEAN);
125
126 PROCEDURE CREATE_NI_DEAL;
127
128
129 type g_ni_parcel_rec_type is table of xtr_parcel_splits%rowtype index by binary_integer;
130 type g_ni_trans_flex_type is table of xtr_transactions_interface%rowtype index by binary_integer;
131
132 type NUMBER_TABLE_TYPE is table of number index by binary_integer;
133
134 g_ni_main_rec xtr_deals%rowtype;
135 g_ni_parcel_rec g_ni_parcel_rec_type;
136 g_user_id Number Default 0;
137 g_num_parcels Number Default 0;
138 g_curr_date Date;
139 g_ni_deal_type Xtr_Deals.Deal_Type%Type Default 'NI';
140 g_ni_deal_subtype Xtr_Deals.Deal_Subtype%Type;
141 g_no_of_days Xtr_Deals.No_Of_Days%Type;
142 g_year_basis Xtr_Deals.Year_Basis%Type;
143 g_ni_trans_flex g_ni_trans_flex_type;
144 g_prn_tax_settle_method xtr_tax_brokerage_setup_v.tax_settle_method%type;
145 g_prn_tax_calc_type xtr_tax_brokerage_setup_v.calc_type%type;
146 g_int_tax_settle_method xtr_tax_brokerage_setup_v.tax_settle_method%type;
147 g_int_tax_calc_type xtr_tax_brokerage_setup_v.calc_type%type;
148
149 G_FV_AMT_HCE NUMBER_TABLE_TYPE;
150 G_INTEREST_HCE NUMBER_TABLE_TYPE;
151 G_PRN_TAX_AMOUNT NUMBER_TABLE_TYPE;
152 G_INT_TAX_AMOUNT NUMBER_TABLE_TYPE;
153 G_DO_TAX_DEFAULTING BOOLEAN;
154
155 END XTR_NI_TRANSFERS_PKG;