1 PACKAGE igs_fi_charges_api_pvt AS
2 /* $Header: IGSFI53S.pls 120.2 2005/08/10 04:11:24 appldev ship $ */
3
4 -- Start of Comments
5 -- API Name : Create_Charge
6 -- Type : Private
7 -- Pre-reqs : None
8 -- Function : Creates a charge in the Charges and Charges Lines table
9 -- Parameters
10 -- IN p_api_version
11 -- IN p_init_msg_list
12 -- IN p_commit
13 -- IN p_validation_level
14 -- IN p_header_rec
15 -- This parameter contains the Charge Header record
16 -- information
17 -- IN p_line_tbl
18 -- The contains the Charge Lines record information
19 -- OUT NOCOPY x_invoice_id
20 -- This returns to the calling program the Charge Id
21 -- of the charge created
22 -- OUT NOCOPY x_line_id_tbl
23 -- This returns to the calling program the Charges Lines
24 -- Ids
25 -- OUT NOCOPY x_return_status
26 -- returns the status of the charges API - S if Successful,
27 -- E if Expected Error and U if Unexpected Error
28 -- OUT NOCOPY x_msg_count
29 -- OUT NOCOPY x_msg_data
30 -- OUT NOCOPY x_waiver_amount
31 -- This contains waiver amount for furthur processing
32 -- Version Current Version 2.0
33 -- Added OUT parameter x_waiver_amount
34 -- Previous Version 1.0
35 -- End of Comments
36 /*******************************************************************************************************
37 Who When What
38 svuppala 07-JUL-2005 Enh 3392095 - Tution Waivers build
39 Modified HEADER_REC_TYPE -- included waiver_name.
40 Modified Create_charge
41 gurprsin 02-Jun-2005 Enh# 3442712 Unit level Fee Assesment Build.
42 Added p_n_unit_type_id,p_v_unit_class,p_v_unit_mode,
43 p_v_unit_level in line_rec_type record.
44 vvutukur 17-May-2003 Enh#2831572.Financial Accounting Build. Added p_v_residency_status_cd in line_rec_type.
45 pathipat 14-Nov-2002 Enh# 2584986 - Added p_d_gl_date in line_rec_type
46 vvutukur 17-Sep-2002 Enh#2564643.removed reference to
47 subaccount_id from header_rec_type.
48 jbegum 20 Feb 02 As part of Enh bug #2228910
49 Changed the type declaration of
50 p_source_transaction_id in the
51 header_rec_type record structure
52 from IGS_FI_INV_INT.Source_Transaction_Id%TYPE
53 to IGS_FI_INV_INT.Invoice_Id%TYPE
54 Change done by : jbegum
55 Change date : 24-Sep-2001
56 Change : As part of the bug #1962286 the record data structure line_rec_type has been modified.
57 The fields p_unit_cd , p_unit_version_number , p_unit_location_cd , p_cal_type ,
58 p_ci_sequence_number and p_unit_class have been removed.
59 Two new fields p_location_cd and p_uoo_id have been added.
60 Also the record structure attribute_rec_type was removed as it was not used anywhere
61 ********************************************************************************************************/
62
63 TYPE header_rec_type IS RECORD(p_person_id igs_fi_inv_int.person_id%TYPE,
64 p_fee_type igs_fi_inv_int.fee_type%TYPE,
65 p_fee_cat igs_fi_inv_int.fee_cat%TYPE,
66 p_fee_cal_type igs_fi_inv_int.fee_cal_type%TYPE,
67 p_fee_ci_sequence_number igs_fi_inv_int.fee_ci_sequence_number%TYPE,
68 p_course_cd igs_fi_inv_int.course_cd%TYPE,
69 p_attendance_type igs_fi_inv_int.attendance_type%TYPE,
70 p_attendance_mode igs_fi_inv_int.attendance_mode%TYPE,
71 p_invoice_amount igs_fi_inv_int.invoice_amount%TYPE,
72 p_invoice_creation_date igs_fi_inv_int.invoice_creation_date%TYPE,
73 p_invoice_desc igs_fi_inv_int.invoice_desc%TYPE,
74 p_transaction_type igs_fi_inv_int.transaction_type%TYPE,
75 p_currency_cd igs_fi_inv_int.currency_cd%TYPE,
76 p_exchange_rate igs_fi_inv_int.exchange_rate%TYPE,
77 p_effective_date igs_fi_inv_int.effective_date%TYPE,
78 p_waiver_flag igs_fi_inv_int.waiver_flag%TYPE,
79 p_waiver_reason igs_fi_inv_int.waiver_reason%TYPE,
80 p_source_transaction_id igs_fi_inv_int.invoice_id%TYPE,
81 p_waiver_name igs_fi_inv_int.waiver_name%TYPE := NULL,
82 p_reverse_flag igs_fi_inv_int.waiver_flag%TYPE);
83
84 --Added new columns - p_unit_type_id,p_unit_class,p_unit_mode,p_cd,p_version_number,p_unit_level.
85 TYPE line_rec_type IS RECORD(p_s_chg_method_type igs_fi_invln_int.s_chg_method_type%TYPE,
86 p_description igs_fi_invln_int.description%TYPE,
87 p_chg_elements igs_fi_invln_int.chg_elements%TYPE,
88 p_amount igs_fi_invln_int.amount%TYPE,
89 p_unit_attempt_status igs_fi_invln_int.unit_attempt_status%TYPE,
90 p_eftsu igs_fi_invln_int.eftsu%TYPE,
91 p_credit_points igs_fi_invln_int.credit_points%TYPE,
92 p_org_unit_cd igs_fi_invln_int.org_unit_cd%TYPE,
93 p_override_dr_rec_ccid igs_fi_invln_int.rec_gl_ccid%TYPE,
94 p_override_cr_rev_ccid igs_fi_invln_int.rev_gl_ccid%TYPE,
95 p_override_dr_rec_account_cd igs_fi_invln_int.rec_account_cd%TYPE,
96 p_override_cr_rev_account_cd igs_fi_invln_int.rev_account_cd%TYPE,
97 p_attribute_category igs_fi_invln_int.attribute_category%TYPE,
98 p_attribute1 igs_fi_invln_int.attribute1%TYPE,
99 p_attribute2 igs_fi_invln_int.attribute2%TYPE,
100 p_attribute3 igs_fi_invln_int.attribute3%TYPE,
101 p_attribute4 igs_fi_invln_int.attribute4%TYPE,
102 p_attribute5 igs_fi_invln_int.attribute5%TYPE,
103 p_attribute6 igs_fi_invln_int.attribute6%TYPE,
104 p_attribute7 igs_fi_invln_int.attribute7%TYPE,
105 p_attribute8 igs_fi_invln_int.attribute8%TYPE,
106 p_attribute9 igs_fi_invln_int.attribute9%TYPE,
107 p_attribute10 igs_fi_invln_int.attribute10%TYPE,
108 p_attribute11 igs_fi_invln_int.attribute11%TYPE,
109 p_attribute12 igs_fi_invln_int.attribute12%TYPE,
110 p_attribute13 igs_fi_invln_int.attribute13%TYPE,
111 p_attribute14 igs_fi_invln_int.attribute14%TYPE,
112 p_attribute15 igs_fi_invln_int.attribute15%TYPE,
113 p_attribute16 igs_fi_invln_int.attribute16%TYPE,
114 p_attribute17 igs_fi_invln_int.attribute17%TYPE,
115 p_attribute18 igs_fi_invln_int.attribute18%TYPE,
116 p_attribute19 igs_fi_invln_int.attribute19%TYPE,
117 p_attribute20 igs_fi_invln_int.attribute20%TYPE,
118 p_location_cd igs_ad_location_all.location_cd%TYPE,
119 p_uoo_id igs_ps_unit_ofr_opt_all.uoo_id%TYPE,
120 p_d_gl_date igs_fi_invln_int.gl_date%TYPE,
121 p_residency_status_cd igs_fi_ftci_accts.residency_status_cd%TYPE,
122 p_unit_type_id igs_ps_unit_type_lvl.unit_type_id%TYPE,
123 p_unit_class igs_as_unit_class.unit_class%TYPE,
124 p_unit_mode igs_as_unit_mode.unit_mode%TYPE,
125 p_unit_level igs_ps_unit_level_all.unit_level%TYPE
126 );
127
128 TYPE line_tbl_type IS TABLE OF line_rec_type
129 INDEX BY BINARY_INTEGER;
130
131 TYPE line_id_tbl_type IS TABLE OF igs_fi_invln_int.invoice_lines_id%TYPE
132 INDEX BY BINARY_INTEGER;
133
134 PROCEDURE create_charge(p_api_version IN NUMBER,
135 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
136 p_commit IN VARCHAR2 := FND_API.G_FALSE ,
137 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
138 p_header_rec IN header_rec_type,
139 p_line_tbl IN line_tbl_type,
140 x_invoice_id OUT NOCOPY NUMBER,
141 x_line_id_tbl OUT NOCOPY line_id_tbl_type,
142 x_return_status OUT NOCOPY VARCHAR2,
143 x_msg_count OUT NOCOPY NUMBER,
144 x_msg_data OUT NOCOPY VARCHAR2,
145 x_waiver_amount OUT NOCOPY NUMBER);
146
147 END igs_fi_charges_api_pvt;