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

Try your skills in the Power BI Dataviz World Championship! Round one ends June 26. Join now

Reply
P108
Frequent Visitor

DirectQuery + TMDL: Column type changes to double after refresh

Hi,

 

I’m using DirectQuery to SQL Server.

In the source, the column is already defined as "decimal(38,3)". However, in Power BI it appears as "double".

 

        column exampleNumber
            dataType: double
            sourceProviderType: decimal(38, 3)
            lineageTag: 
            summarizeBy: sum
            sourceColumn: exampleNumber

            annotation SummarizationSetBy = User
 

When I change it to "decimal" in TMDL and apply, it works initially. After refresh, it reverts back to "double".

 

Is there any way to persist the correct "decimal" type in the model?

 

Thanks!

1 ACCEPTED SOLUTION
MFelix
Super User
Super User

Hi @P108 ,

 

When using TMDL to update DQ or DL there may be the need to use a changedproperty option to apply the changes due to the DQ format. after the specific column add the following code:

 

		column exampleNumber
			dataType: decimal
			sourceProviderType: decimal(38, 3)
			lineageTag: 
			summarizeBy: sum
			sourceColumn: exampleNumber

		changedProperty = DataType

		annotation SummarizationSetBy = User

 

This should make the proper change to the semantic model and make it persistent be aware that the DataType is case sensitive so do it exactly has is.

 

If you need to update other type of information that comes from the DQ table you need to add a changedProperty per each property and at the level you need.

 

 


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português





View solution in original post

1 REPLY 1
MFelix
Super User
Super User

Hi @P108 ,

 

When using TMDL to update DQ or DL there may be the need to use a changedproperty option to apply the changes due to the DQ format. after the specific column add the following code:

 

		column exampleNumber
			dataType: decimal
			sourceProviderType: decimal(38, 3)
			lineageTag: 
			summarizeBy: sum
			sourceColumn: exampleNumber

		changedProperty = DataType

		annotation SummarizationSetBy = User

 

This should make the proper change to the semantic model and make it persistent be aware that the DataType is case sensitive so do it exactly has is.

 

If you need to update other type of information that comes from the DQ table you need to add a changedProperty per each property and at the level you need.

 

 


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português





Helpful resources

Announcements
Fabric Data Days is here Carousel

Data Days 2026

Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.