TabularEditor3 icon indicating copy to clipboard operation
TabularEditor3 copied to clipboard

BPA Rule "Avoid Division" in error in TE 3.16.1

Open edhans opened this issue 8 months ago • 4 comments

Description

The Avoid Division BPA rule is showing red in all of my models. image

The full error says "No property or field 'Type' exists in 'Int32'

I haven't updated my BPA rule file since April 24, 2024. The JSON for this rule is below, and I've never touched it to my knowledge

{
  "ID": "DAX_DIVISION_COLUMNS",
  "Name": "Avoid division (use DIVIDE function instead)",
  "Category": "DAX Expressions",
  "Description": "Calculated Columns, Measures or Calculated Tables should not use the division symbol in their expressions (/) unless the denominator is a constant value. Instead, it is advised to always use the DIVIDE(<numerator>,<denominator>) function.",
  "Severity": 3,
  "Scope": "Measure, CalculatedColumn, CalculatedTable, CalculationItem",
  "Expression": "Tokenize().Any(\n    Type = DIV and\n    Next.Type <> INTEGER_LITERAL and\n    Next.Type <> REAL_LITERAL\n)",
  "CompatibilityLevel": 1200
},

I have a few measures where I am using the divide operator for speed where I know it is impossible to have an invalid denominator, but those aren't showing. The rule is just red.

I don't know if this is new in 3.16.1 or I just didn't notice it in 3.16 over the last 2-3 days.

Tabular Editor 3 Version

3.16.1

Screenshots

No response

Steps to Reproduce

No response

Expected behavior

No response

Crash Report

No response

Windows Version

11

edhans avatar Jun 18 '24 11:06 edhans