I read your response - and to be honest I don't understand it. I mean I understand you are frustrated with Dax and all that, but to me you went out to the garage, grabbed a pneumatic nailer, and are now really frustrated it is lousy at pounding nails because you don’t know how to operate it. And you're mad at the nailer for that. Dax is a different tool developed to solve problems differently. I think we can both agree no one tool is the best for all situations. I agree that whatever data modelling you can do in SQL ahead of Dax, the better off you are. But again, SQL can't solve problems like Dax can. Of course the opposite is true. You shouldn't try to solve data modeling issues with Dax. It is lousy at that.
If a human can figure out what I want to do, they can implement the behind the scenes logic to do stuff like this. Yes, I can go learn the row context and filter context logic of power pivots, but why should I have to?
So are you saying you just woke up one day, opened up Visual Studio and just started slamming out some c++ code? You intuitively and innately understood pointers, pointers to pointers, pointer arithmetic, operator overloading, function overloading, heap vs stack allocation, memory management, garbage collection, inheritance, polymorphism and a host of others things I don't remember any more? I doubt it. I'm sure you had to spend some time to read, study and learn it. So why is Dax any different? Again, it’s a new tool/new way to solve a problem. To learn how to use the new tool you must invest the time to learn it - just like with c++.
Did you even read the Definitive Guide to DAX?
Absolutely I have. No self-respecting Dax practitioner doesn't have a copy. And in my opinion it is the single best, most complete reference out there. But you do have to read it carefully because of the new way of thinking in Dax. And I do find it ironic that you labelled it "super basic" yet also indicate you didn't understand its content.
There's a reason why there are currently 600 people reading the excel forum and 5 people reading this one...when there are 100 times more people voting for prettier graphs and cooler chart actions, you can bet your desires will never be met.
I had a C.S. professor once that said the Unix command line was horrible and never should have been invented. Too hard. I was like "Um, what the hell? Are you serious???" I was astounded he would say such an idiotic thing. The unix command line is a thing of brilliance. Yes, the vast majority of people know how to drive a car, but get in the ****pit of an airplane and they have no idea what to do. But some car drivers are also pilots that can operate it. And I don't see airplanes going away anytime soon. For sure Power Pivot doesn’t have the same number of users as regular Excel and nor would I expect it to. Still a relatively new feature and power user only skill. I'm also sure a lot more people post to an Excel forum that say a c++ forum. Orders of magnitude larger user base. Excel/ Power Pivot is not where they are focusing their charting/graphing/dashboarding efforts. That energy is going into Power BI Desktop & their Power BI service. And more people post on Microsoft’s Power BI forum than over here.
I have no clue what an expression is, because it could be anything. My favorite was bullet point 3 The expression cannot use any function that scans a table or returns a table, including aggregation functions.
CALCULATE function reference doesn't specify a return type because that depends on the type returned by 'expression'. An 'expression' can return string, the various number types, boolean, datetime, and blank. CALCULATE has to return a scalar value which is why it says 'expression' cannot scan or return a table - because then it wouldn't. I agree saying "including aggregation functions" is confusing though. CALCULATETABLE returns a table but otherwise operates the same as CALCULATE.
I'm now operating in the business side of things, and for the problems I am faced with Power Query/Power Pivot/Dax is hands down the best reporting stack I have ever used. Financial statements, gl reconciliations, depreciation allocation, intercompany eliminations, benefit reconciliations, cost pool analysis, equipment charge rate generation, etc. It has made an incredible difference. Development is very quick, very flexible and extensible. But I still on occasion reach for things like Crystal Reports when it is the better tool for a respective problem.
I'm not angry at the people on this forum.
I hope not. Everyone on this forum is super nice and helpful. anvg responded to my earlier post pointing out a potential issue which I appreciate. I think I have learned just as much from the various forums and comment sections as I have from the books I have read. And my reply here is not to try and convert you or try to offend. Just to provide a different point of view. Good luck.