Forum Discussion
Error: circular dependency
- 10 years ago
I assume these are calc columns, is that correct? I am aware of a circular dependency "issue" when you write multiple calc columns, and their incrementally refer to all columns in a table. It is very complex and I don't think I can explain it based on what I see. But my suggestion is that you don't write calc columns at all, but instead write measures. Read my article about the difference here. http://exceleratorbi.com.au/calculated-columns-vs-measures-dax/
Hi Matt
Appreciate this is an old thread however I am facing the same issue - I am trying to calculate the maximum date in another table (that has been linked by a unique ID) - specifically, I have a table of Material Requests and a table of Purchase Orders - I want to know when was the last date that a Purchase Order was raised against this particular Material Request.
The formula I am trying to use is as follows:
Column = CALCULATE(MAX(PO[PO Date]),FILTER(PO,PO[UID]=EARLIER(MR[UID]))
this is giving me a circular dependancy error. I have tried taking your advice and using a measure but (at least at the auto complete level), this does not allow me to compare the UID in the PO table to the UID in the MR table.
I hope this is clear - any guidance or advice would be hugely appreciated.
Gratefully,
Tim
well it looks to me like there is nothing wrong with your calc column. The issue is likely to be that you have other calc columns already. If your table doesn't have a primary key, you can't create multiple calc columns. Does this data need to be in your fact table? could you instead create a new calculated table that has this information? That should solve the problem
- bhrdrms9 years agoFrequent Visitor
Hi MattAllington,
I found you today and ı read your blog. Nice to meet you :) I would want to come your course but I live in Turkey.
ı have a problem that ı take"circular depency error", when ı have multiple calculated columns thay you say.But ı must do some calculate. can you give me advice.
I have two tables, 1) invoices 2) exchange rate (for USD value) ( this table has "usd banknote selling value" for everyday)
I want to take baknote seeling from secondly table according to date. I can it below, it works.
CurrenciesBanknoteSelling_grandtotalprice =
IF(invoices[Currency_code_from_manuel_original]="TRY";
invoices[new_invoice_grandtotalprice] / LOOKUPVALUE(currency_value[Column1.Currencies.BanknoteSelling];
currency_value[Date_wholenumber];
invoices[invoicedate_wholenumber]);
invoices[new_invoice_grandtotalprice])But ı want to do same formula for grandtotalprofit. And ı give "circular depency error". :(
Can you give me advice,
Thank you,
Best regards,
- MattAllington9 years agoCommunity Champion
It's hard for me to understand what is going on here from the description. Any chance you can produce a sample workbook with non sensitive data and post a link here so I can take a look? And also try to explain how you want to use what you are trying to build. Chances are you are not doing it the best way, but unless I know what you are trying to do this for (ie how you will use it) then I can't really comment.