Navigation:  ActFX > User Indicators >

8. Other Functions

Previous pageReturn to chapter overviewNext page

8.1. Mathematical

 

Function

Description

function Sqr(const X: Double): Double

Square

function Max(const A, B: Double): Double

Greater of two number

function Min(const A, B: Double): Double

Lesser of two numbers

function Round(e: Extended): Integer

Round to nearest integer

function Trunc(e: Extended): Integer

Truncate fractional portion

function Int(e: Extended): Integer

Return integer part of the number

function Frac(X: Extended): Extended

Return fractional portion

function Sqrt(e: Extended): Extended

Square root

function Abs(e: Extended): Extended

absolute value / modulus

function Sin(e: Extended): Extended

Sine

function Cos(e: Extended): Extended

Cosine

function ArcTan(X: Extended): Extended

Arctangent

function Tan(X: Extended): Extended

Tangent

function Exp(X: Extended): Extended

Exponential

function Ln(X: Extended): Extended

logarithm

function Pi: Extended

π

 

8.2. Date/Time

 

function EncodeDate(Year, Month, Day: Word): TDateTime

Conversion of the year, month and day to the date format

procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word)

Conversion of date to  the year, month and day

function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime

Conversion of hours, minutes, and seconds to the time format

procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word)

Conversion of time to hours, minutes, and seconds

function Date: TDateTime

Current date

function Time: TDateTime

Current time

function Now: TDateTime

Current date and time

function DayOfWeek(aDate: DateTime): Integer

Day of the week

function IsLeapYear(Year: Word): Boolean

Check if leap year

function DaysInMonth(nYear, nMonth: Integer): Integer

Check for number of days in a month

 

 

 

8.3. String functions

 

function Length(s: String): Integer

Length of a string

function Copy(s: String; from, count: Integer): String

Returns substring of a given length starting from the specified position

function Pos(substr, s: String): Integer

Returns position of substring within given string

procedure Delete(var s: String; from, count: Integer)

Removes substring of a given length starting from the specified position

procedure Insert(s: String; var s2: String; pos: Integer)

Append second string to the first

function Uppercase(s: String): String

Convert string into uppercase

function Lowercase(s: String): String

Convert string into lowercase

function Trim(s: String): String

Remove blank spaces from a string

function NameCase(s: String): String

Convert the first letter into uppercase

function CompareText(s, s1: String): Integer

Compares two strings

function Chr(i: Integer): Char

Return character with specified position

function Ord(ch: Char): Integer

Returns position of specified character

procedure SetLength(var S: String; L: Integer)

Sets length of a string

 

8.4. Others

 

procedure Inc(var i: Integer; incr: Integer = 1)

Increment

procedure Dec(var i: Integer; decr: Integer = 1)

Decrement

procedure RaiseException(Param: String)

Generate error message

procedure Randomize

Generate random number

function Random: Extended

Generate Pseudo-random number

function ValidInt(cInt: String): Boolean

Validate Integer

function ValidFloat(cFlt: String): Boolean

Validate Floating

function ValidDate(cDate: String): Boolean

Validate Date

 

8.5. Scale marking setting

 

 

When using function SetYScale Scale, vertical markings type can be set depending on the type of your indicator. To use this Function  SetYValuesFormat (const Format: String) is used for this purpose.

Specifier

Represents

0

Digit place holder. If the value being formatted has a digit in the position where the '0' appears in the format string, then that digit is copied to the output string. Otherwise, a '0' is stored in that position in the output string.

#

Digit placeholder. If the value being formatted has a digit in the position where the '#' appears in the format string, then that digit is copied to the output string. Otherwise, nothing is stored in that position in the output string.

.

Decimal point. The first '.' character in the format string determines the location of the decimal separator in the formatted value; any additional '.' characters are ignored. The actual character used as a the decimal separator in the output string is determined by the DecimalSeparator global variable or its TFormatSettings equivalent.

,

Thousand separator. If the format string contains one or more ',' characters, the output will have thousand separators inserted between each group of three digits to the left of the decimal point. The placement and number of ',' characters in the format string does not affect the output, except to indicate that thousand separators are wanted. The actual character used as a the thousand separator in the output is determined by the ThousandSeparator global variable or its TFormatSettings equivalent.

E+

Scientific notation. If any of the strings 'E+', 'E-', 'e+', or 'e-' are contained in the format string, the number is formatted using scientific notation. A group of up to four '0' characters can immediately follow the 'E+', 'E-', 'e+', or 'e-' to determine the minimum number of digits in the exponent. The 'E+' and 'e+' formats cause a plus sign to be output for positive exponents and a minus sign to be output for negative exponents. The 'E-' and 'e-' formats output a sign character only for negative exponents.

'xx'/"xx"

Characters enclosed in single or double quotes are output as-is, and do not affect formatting.

;

Separates sections for positive, negative, and zero numbers in the format string.

The locations of the leftmost '0' before the decimal point in the format string and the rightmost '0' after the decimal point in the format string determine the range of digits that are always present in the output string. The number being formatted is always rounded to as many decimal places as there are digit placeholders ('0' or '#') to the right of the decimal point. If the format string contains no decimal point, the value being formatted is rounded to the nearest whole number. If the number being formatted has more digits to the left of the decimal separator than there are digit placeholders to the left of the '.' character in the format string, the extra digits are output before the first digit placeholder. To allow different formats for positive, negative, and zero values, the format string can contain between one and three sections separated by semicolons. One section: The format string applies to all values. Two sections: The first section applies to positive values and zeros, and the second section applies to negative values. Three sections: The first section applies to positive values, the second applies to negative values, and the third applies to zeros. If the section for negative values or the section for zero values is empty, that is if there is nothing between the semicolons that delimit the section, the section for positive values is used instead.