1 package fffunc AUTHID CURRENT_USER as
2 /* $Header: fffunc.pkh 115.6 2002/07/11 17:32:49 arashid ship $ */
3 /*
4 Copyright (c) Oracle Corporation (UK) Ltd 1993.
5 All rights reserved
6
7 Name: fffunc
8
9 Description: All functions which are called, but are not built-in pl/sql
10 functions are defined here, so that formula can call them as
11 External functions rather than UDF's
12
13 Change List
14 -----------
15 P Gowers 21-JAN-1993 Creation
16 A Roussel 27-OCT-1994 Moved header to after create/replace
17 A Rashid 30-MAR-1999 Added nc, tn, td, and dc functions.
18 Added pragmas to allow these functions to
19 be callable from SQL.
20 A Rashid 27-APR-1999 Added cn/cd functions and corrected
21 comments on other conversion functions that
22 now do native conversions.
23 A Rashid 19-AUG-1999 Correct function header comments.
24 A Rashid 11-JUL-2002 Added gfm for translated message handling.
25 */
26 ---------------------------------- nc -----------------------------------
27 /*
28 NAME
29 nc - Number to Character
30 DESCRIPTION
31 Converts to string in canonical format.
32 NOTES
33 Short name to keep formula text short.
34 */
35 function nc (p_number in number) return varchar2;
36 pragma restrict_references(nc, WNDS, WNPS, RNDS);
37 ------------------------------ date_to_char ------------------------------
38 /*
39 NAME
40 date_to_char
41 DESCRIPTION
42 Calls dc.
43 */
44 function date_to_char (datevar in date) return varchar2;
45 pragma restrict_references(date_to_char, WNDS, WNPS, RNDS);
46 --------------------------------- dc -------------------------------------
47 /*
48 NAME
49 dc - Date to Char
50 DESCRIPTION
51 Returns date string in canonical format.
52 NOTES
53 Shortened name to keep formula text short.
54 */
55 function dc (p_date in date) return varchar2;
56 pragma restrict_references(dc, WNDS, WNPS, RNDS);
57 ------------------------------ round_up ------------------------------
58 /*
59 NAME
60 round_up
61 DESCRIPTION
62 Special rounding function not available in pl/sql
63 */
64 function round_up (num in number, places in number ) return number;
65 pragma restrict_references(round_up, WNDS, WNPS, RNDS);
66 ------------------------------ add_days ------------------------------
67 /*
68 NAME
69 add_days
70 DESCRIPTION
71 No equivalent function in pl/sql. Adding days to a date is a simple
72 addition of a number to a date, but a function is needed for FastFormula
73 */
74 function add_days (datevar in date, days in number) return date;
75 pragma restrict_references(add_days, WNDS, WNPS, RNDS);
76 ------------------------------ add_years ------------------------------
77 /*
78 NAME
79 add_years
80 DESCRIPTION
81 No equivalent function in pl/sql. Need to call add_months but multiply
82 the passed year count by 12
83 */
84 function add_years (datevar in date, years in number) return date;
85 pragma restrict_references(add_years, WNDS, WNPS, RNDS);
86 ------------------------------ days_between ------------------------------
87 /*
88 NAME
89 days_between
90 DESCRIPTION
91 No equivalent function in pl/sql. Normally evaluate by subtracting
92 one date from the other, but a function is needed for FastFormula
93 */
94 function days_between (date1 in date, date2 in date) return number;
95 pragma restrict_references(days_between, WNDS, WNPS, RNDS);
96 ---------------------------------- tn -----------------------------------
97 /*
98 NAME
99 tn - Text to Number
100 DESCRIPTION
101 Converts a string in the canonical format to a number.
102 NOTES
103 Short name to keep formula text short.
104 */
105 function tn (p_numstr in varchar2) return number;
106 pragma restrict_references(tn, WNDS, WNPS, RNDS);
107 ------------------------- text_to_date ----------------------------------
108 /*
109 NAME
110 text_to_date
111 DESCRIPTION
112 Accepts the 11 character date format specifier 'DD-MON-YYYY', or the
113 canonical format.
114 */
115 function text_to_date (datestr in varchar2) return date;
116 pragma restrict_references(text_to_date, WNDS, WNPS, RNDS);
117 ---------------------------------- td -----------------------------------
118 /*
119 NAME
120 td - Text to Date
121 DESCRIPTION
122 Called by text_to_date.
123 NOTES
124 Shortened name to keep formula text short.
125 */
126 function td (p_datestr in varchar2) return date;
127 pragma restrict_references(td, WNDS, WNPS, RNDS);
128 ---------------------------------- cd -----------------------------------
129 /*
130 NAME
131 cd - Canonical string to Date
132 DESCRIPTION
133 Converts a string, in the canonical date format, to a date.
134 */
135 function cd (p_datestr in varchar2) return date;
136 pragma restrict_references(cd, WNDS, WNPS, RNDS);
137 ---------------------------------- cn -----------------------------------
138 /*
139 NAME
140 cn - Canonical string to Number
141 DESCRIPTION
142 Converts a string, in the canonical number format, to a number.
143 */
144 function cn (p_numstr in varchar2) return number;
145 pragma restrict_references(cn, WNDS, WNPS, RNDS);
146 --------------------------------- gfm -----------------------------------
147 /*
148 NAME
149 gfm - Get Fnd Message
150 DESCRIPTION
151 Gets a translated FND message (supplying up to 5 tokens). Tokens are
152 not translated.
153 p_application - application short name e.g. 'PAY', 'PER'.
154 p_message - message name e.g. 'HR_6153_ALL_PROCEDURE_FAIL'
155 p_token_nameN - name of Nth token.
156 p_token_valueN - (string) value for Nth token.
157 NOTES
158 Returns p_message if the translated message evaluates as null.
159 */
160 function gfm
161 (p_application in varchar2
162 ,p_message in varchar2
163 ,p_token_name1 in varchar2 default null
164 ,p_token_value1 in varchar2 default null
165 ,p_token_name2 in varchar2 default null
166 ,p_token_value2 in varchar2 default null
167 ,p_token_name3 in varchar2 default null
168 ,p_token_value3 in varchar2 default null
169 ,p_token_name4 in varchar2 default null
170 ,p_token_value4 in varchar2 default null
171 ,p_token_name5 in varchar2 default null
172 ,p_token_value5 in varchar2 default null
173 ) return varchar2;
174 end fffunc;