Package mondrian.olap.fun.vba
Class Vba
- java.lang.Object
-
- mondrian.olap.fun.vba.Vba
-
public class Vba extends java.lang.Object
Implementations of functions in the Visual Basic for Applications (VBA) specification.The functions are defined in MSDN .
- Since:
- Dec 31, 2007
- Author:
- jhyde
-
-
Constructor Summary
Constructors Constructor Description Vba()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static double
abs(double number)
static int
asc(java.lang.String string)
static int
ascB(java.lang.String string)
static int
ascW(java.lang.String string)
static double
atn(double number)
static boolean
cBool(java.lang.Object expression)
static byte
cByte(java.lang.Object expression)
static java.util.Date
cDate(java.lang.Object expression)
static double
cDbl(java.lang.Object expression)
static java.lang.String
chr(int charCode)
static java.lang.String
chrB(int charCode)
static java.lang.String
chrW(int charCode)
static int
cInt(java.lang.Object expression)
(package private) static int
computeDiffInDays(java.util.Calendar cal1, java.util.Calendar cal2)
This function tries to emulate the behaviour of DateDiff function from VBA.static double
cos(double number)
static java.util.Date
date()
static java.util.Date
dateAdd(java.lang.String intervalName, double number, java.util.Date date)
static long
dateDiff(java.lang.String interval, java.util.Date date1, java.util.Date date2)
static long
dateDiff(java.lang.String interval, java.util.Date date1, java.util.Date date2, int firstDayOfWeek)
static long
dateDiff(java.lang.String interval, java.util.Date date1, java.util.Date date2, int firstDayOfWeek, int firstWeekOfYear)
static int
datePart(java.lang.String interval, java.util.Date date)
static int
datePart(java.lang.String interval, java.util.Date date, int firstDayOfWeek)
static int
datePart(java.lang.String interval, java.util.Date date, int firstDayOfWeek, int firstWeekOfYear)
static java.util.Date
dateSerial(int year, int month, int day)
static java.util.Date
dateValue(java.util.Date date)
static int
day(java.util.Date date)
static double
dDB(double cost, double salvage, double life, double period)
static double
dDB(double cost, double salvage, double life, double period, double factor)
static double
exp(double number)
static int
fix(java.lang.Object number)
static java.lang.String
formatCurrency(java.lang.Object expression)
static java.lang.String
formatCurrency(java.lang.Object expression, int numDigitsAfterDecimal)
static java.lang.String
formatCurrency(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit)
static java.lang.String
formatCurrency(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers)
static java.lang.String
formatCurrency(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers, int groupDigits)
static java.lang.String
formatDateTime(java.util.Date date)
static java.lang.String
formatDateTime(java.util.Date date, int namedFormat)
static java.lang.String
formatNumber(java.lang.Object expression)
static java.lang.String
formatNumber(java.lang.Object expression, int numDigitsAfterDecimal)
static java.lang.String
formatNumber(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit)
static java.lang.String
formatNumber(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers)
static java.lang.String
formatNumber(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers, int groupDigits)
static java.lang.String
formatPercent(java.lang.Object expression)
static java.lang.String
formatPercent(java.lang.Object expression, int numDigitsAfterDecimal)
static java.lang.String
formatPercent(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit)
static java.lang.String
formatPercent(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers)
static java.lang.String
formatPercent(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers, int groupDigits)
static double
fV(double rate, double nPer, double pmt)
static double
fV(double rate, double nPer, double pmt, double pv)
static double
fV(double rate, double nPer, double pmt, double pv, boolean type)
static java.lang.String
hex(java.lang.Object number)
static int
hour(java.util.Date time)
static int
inStr(int start, java.lang.String stringCheck, java.lang.String stringMatch)
static int
inStr(int start, java.lang.String stringCheck, java.lang.String stringMatch, int compare)
static int
inStr(java.lang.String stringCheck, java.lang.String stringMatch)
static int
inStrRev(java.lang.String stringCheck, java.lang.String stringMatch)
static int
inStrRev(java.lang.String stringCheck, java.lang.String stringMatch, int start)
static int
inStrRev(java.lang.String stringCheck, java.lang.String stringMatch, int start, int compare)
static int
int_(java.lang.Object number)
(package private) static int
intNative(double dv)
Equivalent of theint_(java.lang.Object)
function on the native 'double' type.static double
iPmt(double rate, double per, double nPer, double PV)
static double
iPmt(double rate, double per, double nPer, double PV, double fv)
static double
iPmt(double rate, double per, double nPer, double PV, double fv, boolean due)
static double
IRR(double[] valueArray)
static double
IRR(double[] valueArray, double guess)
boolean
isArray(java.lang.Object varName)
static boolean
isDate(java.lang.Object expression)
boolean
isError(java.lang.Object expression)
boolean
isMissing(java.lang.Object argName)
boolean
isNull(java.lang.Object expression)
boolean
isNumeric(java.lang.Object expression)
boolean
isObject(java.lang.Object expression)
static java.lang.String
lCase(java.lang.String string)
static java.lang.String
left(java.lang.String string, int length)
static double
log(double number)
static java.lang.String
lTrim(java.lang.String string)
static java.lang.String
mid(java.lang.String value, int beginIndex)
static java.lang.String
mid(java.lang.String value, int beginIndex, int length)
static int
minute(java.util.Date time)
static double
MIRR(double[] valueArray, double financeRate, double reinvestRate)
static int
month(java.util.Date date)
static java.lang.String
monthName(int month, boolean abbreviate)
static java.util.Date
now()
static double
nPer(double rate, double pmt, double pv, double fv, boolean due)
static double
nPV(double r, double[] cfs)
static java.lang.String
oct(java.lang.Object number)
static double
pmt(double rate, double nPer, double pv, double fv, boolean due)
static double
pPmt(double rate, double per, double nPer, double PV)
static double
pPmt(double rate, double per, double nPer, double PV, double fv)
static double
pPmt(double rate, double per, double nPer, double PV, double fv, boolean due)
static double
pV(double rate, double nper, double pmt, double fv, boolean due)
static double
rate(double nPer, double pmt, double PV)
static double
rate(double nPer, double pmt, double PV, double fv)
static double
rate(double nPer, double pmt, double PV, double fv, boolean type)
static double
rate(double nPer, double pmt, double PV, double fv, boolean due, double guess)
static java.lang.String
replace(java.lang.String expression, java.lang.String find, java.lang.String replace)
static java.lang.String
replace(java.lang.String expression, java.lang.String find, java.lang.String replace, int start)
static java.lang.String
replace(java.lang.String expression, java.lang.String find, java.lang.String replace, int start, int count)
static java.lang.String
replace(java.lang.String expression, java.lang.String find, java.lang.String replace, int start, int count, int compare)
static java.lang.String
right(java.lang.String string, int length)
static double
round(double number)
static double
round(double number, int numDigitsAfterDecimal)
static java.lang.String
rTrim(java.lang.String string)
static int
second(java.util.Date time)
static int
sgn(double number)
static double
sin(double number)
static double
sLN(double cost, double salvage, double life)
static java.lang.String
space(int number)
static double
sqr(double number)
static java.lang.String
str(java.lang.Object number)
static int
strComp(java.lang.String string1, java.lang.String string2)
static int
strComp(java.lang.String string1, java.lang.String string2, int compare)
static java.lang.String
string(int number, char character)
static java.lang.String
strReverse(java.lang.String expression)
static double
sYD(double cost, double salvage, double life, double period)
static double
tan(double number)
static java.util.Date
time()
static float
timer()
static java.util.Date
timeSerial(int hour, int minute, int second)
static java.util.Date
timeValue(java.util.Date time)
static java.lang.String
trim(java.lang.String string)
static java.lang.String
typeName(java.lang.Object varName)
static double
val(java.lang.String string)
static int
weekday(java.util.Date date)
static int
weekday(java.util.Date date, int firstDayOfWeek)
static java.lang.String
weekdayName(int weekday, boolean abbreviate, int firstDayOfWeek)
static int
year(java.util.Date date)
-
-
-
Method Detail
-
cBool
public static boolean cBool(java.lang.Object expression)
-
cByte
public static byte cByte(java.lang.Object expression)
-
cDate
public static java.util.Date cDate(java.lang.Object expression)
-
cDbl
public static double cDbl(java.lang.Object expression)
-
cInt
public static int cInt(java.lang.Object expression)
-
fix
public static int fix(java.lang.Object number)
-
hex
public static java.lang.String hex(java.lang.Object number)
-
int_
public static int int_(java.lang.Object number)
-
intNative
static int intNative(double dv)
Equivalent of theint_(java.lang.Object)
function on the native 'double' type. Not an MDX function.- Parameters:
dv
- Double value- Returns:
- Value rounded towards negative infinity
-
oct
public static java.lang.String oct(java.lang.Object number)
-
str
public static java.lang.String str(java.lang.Object number)
-
val
public static double val(java.lang.String string)
-
dateAdd
public static java.util.Date dateAdd(java.lang.String intervalName, double number, java.util.Date date)
-
dateDiff
public static long dateDiff(java.lang.String interval, java.util.Date date1, java.util.Date date2)
-
dateDiff
public static long dateDiff(java.lang.String interval, java.util.Date date1, java.util.Date date2, int firstDayOfWeek)
-
dateDiff
public static long dateDiff(java.lang.String interval, java.util.Date date1, java.util.Date date2, int firstDayOfWeek, int firstWeekOfYear)
-
datePart
public static int datePart(java.lang.String interval, java.util.Date date)
-
datePart
public static int datePart(java.lang.String interval, java.util.Date date, int firstDayOfWeek)
-
datePart
public static int datePart(java.lang.String interval, java.util.Date date, int firstDayOfWeek, int firstWeekOfYear)
-
date
public static java.util.Date date()
-
dateSerial
public static java.util.Date dateSerial(int year, int month, int day)
-
dateValue
public static java.util.Date dateValue(java.util.Date date)
-
day
public static int day(java.util.Date date)
-
hour
public static int hour(java.util.Date time)
-
minute
public static int minute(java.util.Date time)
-
month
public static int month(java.util.Date date)
-
now
public static java.util.Date now()
-
second
public static int second(java.util.Date time)
-
time
public static java.util.Date time()
-
timeSerial
public static java.util.Date timeSerial(int hour, int minute, int second)
-
timeValue
public static java.util.Date timeValue(java.util.Date time)
-
timer
public static float timer()
-
weekday
public static int weekday(java.util.Date date)
-
weekday
public static int weekday(java.util.Date date, int firstDayOfWeek)
-
year
public static int year(java.util.Date date)
-
dDB
public static double dDB(double cost, double salvage, double life, double period)
-
dDB
public static double dDB(double cost, double salvage, double life, double period, double factor)
-
fV
public static double fV(double rate, double nPer, double pmt)
-
fV
public static double fV(double rate, double nPer, double pmt, double pv)
-
fV
public static double fV(double rate, double nPer, double pmt, double pv, boolean type)
-
iPmt
public static double iPmt(double rate, double per, double nPer, double PV)
-
iPmt
public static double iPmt(double rate, double per, double nPer, double PV, double fv)
-
iPmt
public static double iPmt(double rate, double per, double nPer, double PV, double fv, boolean due)
-
IRR
public static double IRR(double[] valueArray)
-
IRR
public static double IRR(double[] valueArray, double guess)
-
MIRR
public static double MIRR(double[] valueArray, double financeRate, double reinvestRate)
-
nPer
public static double nPer(double rate, double pmt, double pv, double fv, boolean due)
-
nPV
public static double nPV(double r, double[] cfs)
-
pPmt
public static double pPmt(double rate, double per, double nPer, double PV)
-
pPmt
public static double pPmt(double rate, double per, double nPer, double PV, double fv)
-
pPmt
public static double pPmt(double rate, double per, double nPer, double PV, double fv, boolean due)
-
pmt
public static double pmt(double rate, double nPer, double pv, double fv, boolean due)
-
pV
public static double pV(double rate, double nper, double pmt, double fv, boolean due)
-
rate
public static double rate(double nPer, double pmt, double PV)
-
rate
public static double rate(double nPer, double pmt, double PV, double fv)
-
rate
public static double rate(double nPer, double pmt, double PV, double fv, boolean type)
-
rate
public static double rate(double nPer, double pmt, double PV, double fv, boolean due, double guess)
-
sLN
public static double sLN(double cost, double salvage, double life)
-
sYD
public static double sYD(double cost, double salvage, double life, double period)
-
isArray
public boolean isArray(java.lang.Object varName)
-
isDate
public static boolean isDate(java.lang.Object expression)
-
isError
public boolean isError(java.lang.Object expression)
-
isMissing
public boolean isMissing(java.lang.Object argName)
-
isNull
public boolean isNull(java.lang.Object expression)
-
isNumeric
public boolean isNumeric(java.lang.Object expression)
-
isObject
public boolean isObject(java.lang.Object expression)
-
typeName
public static java.lang.String typeName(java.lang.Object varName)
-
abs
public static double abs(double number)
-
atn
public static double atn(double number)
-
cos
public static double cos(double number)
-
exp
public static double exp(double number)
-
log
public static double log(double number)
-
round
public static double round(double number)
-
round
public static double round(double number, int numDigitsAfterDecimal)
-
sgn
public static int sgn(double number)
-
sin
public static double sin(double number)
-
sqr
public static double sqr(double number)
-
tan
public static double tan(double number)
-
asc
public static int asc(java.lang.String string)
-
ascB
public static int ascB(java.lang.String string)
-
ascW
public static int ascW(java.lang.String string)
-
chr
public static java.lang.String chr(int charCode)
-
chrB
public static java.lang.String chrB(int charCode)
-
chrW
public static java.lang.String chrW(int charCode)
-
formatCurrency
public static java.lang.String formatCurrency(java.lang.Object expression)
-
formatCurrency
public static java.lang.String formatCurrency(java.lang.Object expression, int numDigitsAfterDecimal)
-
formatCurrency
public static java.lang.String formatCurrency(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit)
-
formatCurrency
public static java.lang.String formatCurrency(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers)
-
formatCurrency
public static java.lang.String formatCurrency(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers, int groupDigits)
-
formatDateTime
public static java.lang.String formatDateTime(java.util.Date date)
-
formatDateTime
public static java.lang.String formatDateTime(java.util.Date date, int namedFormat)
-
formatNumber
public static java.lang.String formatNumber(java.lang.Object expression)
-
formatNumber
public static java.lang.String formatNumber(java.lang.Object expression, int numDigitsAfterDecimal)
-
formatNumber
public static java.lang.String formatNumber(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit)
-
formatNumber
public static java.lang.String formatNumber(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers)
-
formatNumber
public static java.lang.String formatNumber(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers, int groupDigits)
-
formatPercent
public static java.lang.String formatPercent(java.lang.Object expression)
-
formatPercent
public static java.lang.String formatPercent(java.lang.Object expression, int numDigitsAfterDecimal)
-
formatPercent
public static java.lang.String formatPercent(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit)
-
formatPercent
public static java.lang.String formatPercent(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers)
-
formatPercent
public static java.lang.String formatPercent(java.lang.Object expression, int numDigitsAfterDecimal, int includeLeadingDigit, int useParensForNegativeNumbers, int groupDigits)
-
inStr
public static int inStr(java.lang.String stringCheck, java.lang.String stringMatch)
-
inStr
public static int inStr(int start, java.lang.String stringCheck, java.lang.String stringMatch)
-
inStr
public static int inStr(int start, java.lang.String stringCheck, java.lang.String stringMatch, int compare)
-
inStrRev
public static int inStrRev(java.lang.String stringCheck, java.lang.String stringMatch)
-
inStrRev
public static int inStrRev(java.lang.String stringCheck, java.lang.String stringMatch, int start)
-
inStrRev
public static int inStrRev(java.lang.String stringCheck, java.lang.String stringMatch, int start, int compare)
-
lCase
public static java.lang.String lCase(java.lang.String string)
-
lTrim
public static java.lang.String lTrim(java.lang.String string)
-
left
public static java.lang.String left(java.lang.String string, int length)
-
mid
public static java.lang.String mid(java.lang.String value, int beginIndex)
-
mid
public static java.lang.String mid(java.lang.String value, int beginIndex, int length)
-
monthName
public static java.lang.String monthName(int month, boolean abbreviate)
-
rTrim
public static java.lang.String rTrim(java.lang.String string)
-
replace
public static java.lang.String replace(java.lang.String expression, java.lang.String find, java.lang.String replace, int start, int count, int compare)
-
replace
public static java.lang.String replace(java.lang.String expression, java.lang.String find, java.lang.String replace, int start, int count)
-
replace
public static java.lang.String replace(java.lang.String expression, java.lang.String find, java.lang.String replace, int start)
-
replace
public static java.lang.String replace(java.lang.String expression, java.lang.String find, java.lang.String replace)
-
right
public static java.lang.String right(java.lang.String string, int length)
-
space
public static java.lang.String space(int number)
-
strComp
public static int strComp(java.lang.String string1, java.lang.String string2)
-
strComp
public static int strComp(java.lang.String string1, java.lang.String string2, int compare)
-
strReverse
public static java.lang.String strReverse(java.lang.String expression)
-
string
public static java.lang.String string(int number, char character)
-
trim
public static java.lang.String trim(java.lang.String string)
-
weekdayName
public static java.lang.String weekdayName(int weekday, boolean abbreviate, int firstDayOfWeek)
-
computeDiffInDays
static int computeDiffInDays(java.util.Calendar cal1, java.util.Calendar cal2)
This function tries to emulate the behaviour of DateDiff function from VBA. See a table of its results here.- Parameters:
cal1
- calendar, representing the first instantcal2
- calendar, representing the second instant- Returns:
- difference in days with respect to the behaviour of DateDiff function
-
-