Daily DAX : Day 462 ISINT64
DAX ISINT64 Function
ISINT64 checks whether a value is a whole number (integer) that fits in a 64-bit integer format.
It returns:
- TRUE → value is an integer (no decimal part)
- FALSE → value has decimal places, is text, blank, date, etc.
Important: ISINT64 is just another name (alias) for ISINTEGER.
Microsoft recommends using ISINTEGER in most cases.
Microsoft recommends using ISINTEGER in most cases.
Syntax
ISINT64 ( <value> )
| Parameter | Description |
|---|---|
| <value> | The value / expression / column to test |
Basic Examples
// Returns TRUE ISINT64( 42 ) ISINT64( -17 ) ISINT64( 0 ) // Returns FALSE ISINT64( 3.14 ) // decimal ISINT64( "123" ) // text ISINT64( BLANK() ) // blank ISINT64( TODAY() ) // date
Realistic Use Cases (2025–2026)
- Flexible User-Defined Functions (UDFs – Preview feature)
// Modern DAX UDF pattern (very common since 2025)
FUNCTION GetNameOrId =
( input ) =>
IF (
ISINT64 ( input ),
LOOKUPVALUE ( Dim[Name], Dim[ID], input ),
LOOKUPVALUE ( Dim[Name], Dim[Code], input )
)
This single function accepts both numeric IDs and text codes safely.
- Handle mixed / variant input in parameters
VAR CurrencyInput = SELECTEDVALUE ( Parameter[Value] )
RETURN
IF (
ISINT64 ( CurrencyInput ),
CALCULATE ( [Sales], 'Currency'[CurrencyKey] = CurrencyInput ),
CALCULATE ( [Sales], 'Currency'[Code] = CurrencyInput )
)
- Data validation in calculated columns
ValidInteger =
IF ( ISINT64 ( 'RawData'[MaybeNumber] ), "OK", "Has decimals / wrong type" )
Quick Summary Table
| Input Value | ISINT64 Result |
|---|---|
| 42 | TRUE |
| 3.0 | TRUE |
| 3.1 | FALSE |
| "45" | FALSE |
| BLANK() | FALSE |
| DATE(2026,1,17) | FALSE |
January 2026 • ISINT64 = ISINTEGER • Mainly used with modern DAX UDFs and flexible parameters
Comments
Post a Comment