Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!

Reply
MattReckoner111
New Member

tabular editor Loop through Calculated Columns

Hi

im writing a C# script in Tabular Editor to loop through the model and change the naming convention of measures and calculated columns (inherited several reports from business and its a bit messy) the Measure part works perfectly - code adds "Msr" abbreviation to each measure and moves it to Calculations. The problem appears with calculated columns - seems like the check of columnType.Calculated doesnt work. Does anyone know how to check the columntype properly?

Thank you:)

 

 

var calcTable = Model.Tables.FirstOrDefault(t => t.Name == "Calculations");

Func<string, string, string> FormatName = (name, prefix) => {
    string formattedName = name.Replace(" ", "_");
    if (!formattedName.StartsWith(prefix)) {
        formattedName = prefix + formattedName;
    }
    return formattedName;
};

foreach (var table in Model.Tables) {
    foreach (var measure in table.Measures.ToList()) {
        measure.Name = FormatName(measure.Name, "Msr");
        measure.MoveTo(calcTable);
    }
foreach (var column in table.Columns.ToList()) {
     if (column.ColumnType== ColumnType.Calculated) {
          if (!column.Name.StartsWith("CC")) {
              column.Name = FormatName(column.Name, "CC");
            }
        }
    }
}

 

 

 

1 REPLY 1
lbendlin
Super User
Super User

The documentation seems to indicate that the type exists.

Enum ColumnType | Tabular Editor Documentation

 

What does "doesn't work"  mean?

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! It's time to submit your entry.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.