Midrange Systems Design - IBM iSeries i5
Calling SQL functions from RPG
D AMT1 S 7 2 INZ(1)
D AMT2 S 7 2 INZ(2)
D TOTAL S 7 2
D LastDayNextMo S D
/FREE
// The set function is similar to the eval operation.
// They can be used with out any file input/output.
EXEC SQL SET :TOTAL = (:AMT1 + :AMT2);
// You can use SQL Scalar functions.
// These are similar to the RPG %BIF (built in functions).
EXEC SQL SET :LastDayNextMo = ADD_MONTHS(LAST_DAY(CURRENT_DATE), 1 );
*inLR = *on;
// Other functions available
// see IBM Information Center SQL Scalar Functions
// ABS
// ACOS
// ADD_MONTHS
// ANTILOG
// ASIN
// ATAN
// ATANH
// ATAN2
// BIGINT
// BINARY
// BIT_LENGTH
// BLOB
// CEILING
// CHAR
// CHARACTER_LENGTH
// CLOB
// COALESCE
// CONCAT
// COS
// COSH
// COT
// CURDATE
// CURTIME
// DATABASE
// DATAPARTITIONNAME
// DATAPARTITIONNUM
// DATE
// DAY
// DAYNAME
// DAYOFMONTH
// DAYOFWEEK
// DAYOFWEEK_ISO
// DAYOFYEAR
// DAYS
// DBCLOB
// DBPARTITIONNAME
// DBPARTITIONNUM
// DECIMAL or DEC
// DECRYPT_BIT, DECRYPT_BINARY, DECRYPT_CHAR and DECRYPT_DB
// DEGREES
// DIFFERENCE
// DIGITS
// DLCOMMENT
// DLLINKTYPE
// DLURLCOMPLETE
// DLURLPATH
// DLURLPATHONLY
// DLURLSCHEME
// DLURLSERVER
// DLVALUE
// DOUBLE_PRECISION or DOUBLE
// ENCRYPT_RC2
// ENCRYPT_TDES
// EXP
// EXTRACT
// FLOAT
// FLOOR
// GENERATE_UNIQUE
// GETHINT
// GRAPHIC
// HASH
// HASHED_VALUE
// HEX
// HOUR
// IDENTITY_VAL_LOCAL
// IFNULL
// INSERT
// INTEGER or INT
// JULIAN_DAY
// LAND
// LAST_DAY
// LCASE
// LEFT
// LENGTH
// LN
// LNOT
// LOCATE
// LOG10
// LOR
// LOWER
// LTRIM
// MAX
// MICROSECOND
// MIDNIGHT_SECONDS
// MIN
// MINUTE
// MOD
// MONTH
// MONTHNAME
// MULTIPLY_ALT
// NEXT_DAY
// NOW
// NULLIF
// OCTET_LENGTH
// PI
// POSITION or POSSTR
// POWER
// QUARTER
// RADIANS
// RAISE_ERROR
// RAND
// REAL
// REPEAT
// REPLACE
// RIGHT
// ROUND
// ROWID
// RRN
// RTRIM
// SECOND
// SIGN
// SIN
// SINH
// SMALLINT
// SOUNDEX
// SPACE
// SQRT
// STRIP
// SUBSTR
// SUBSTRING
// TAN
// TANH
// TIME
// TIMESTAMP
// TIMESTAMP_ISO
// TIMESTAMPDIFF
// TRANSLATE
// TRIM
// TRUNCATE or TRUNC
// UCASE
// UPPER
// VALUE
// VARBINARY
// VARCHAR
// VARCHAR_FORMAT
// VARGRAPHIC
// WEEK
// WEEK_ISO
// XOR
// YEAR
// ZONED