Recently, I was able to get my hands on a beta build of Acumatica 6. I’ve been looking forward to this ever since I saw some of the new Acumatica 6 features being demoed at the Acumatica Summit this past February.
One of the new features is Pivot Tables.
And this post is dedicated to Pivot Tables in Acumatica 6.
Now, for those Excel fans out there (I’m one of them), you know that Pivot Tables are a powerful weapon in the Excel professional’s arsenal. They are an essential tool for anyone tasked with making sense of data. I personally like Pivot Tables because of the combination of power and flexibility, two things that don’t come packaged together very often.
My Personal Pivot Table Discovery
I first discovered pivot tables back in 2012 when I was working for a manufacturing company in Cleveland, Ohio. Before that, I had always scoffed at Excel as being a “remedial” reporting tool, something for amateurs, something that no “smart” professional would condescend to use.
At the time, I was using SQL, SSRS, and Crystal Reports to make sense of data in my company’s ERP system. Sometimes I’d do an ad-hoc SQL query, other times I’d feed a SQL View or SQL Stored Procedure to SSRS or Crystal Reports.
All three tools were great, but I found that they were difficult to work with when someone changed their mind. Inevitably, a report request was never accurate in its initial form. After fulfilling the request, I would always get something like, “this is what I asked for, but it’s not what I need”. And then we would proceed to change the report.
Working with SQL, SSRS, and Crystal Reports began to feel a bit like working with concrete. Once the concrete was set, you had to take a jackhammer to it in order to make changes.
That’s when I discovered the power of the lowly Pivot Table.
With a Pivot Tables, it’s very easy to change your mind. You can drag fields on and off, you can nest fields underneath each other, and you can even drill-into details.
Working with Pivot Tables feels more like working with clay than with concrete.
And sometimes, after you have settled on what the report needs to look like and the customer is satisfied, you can then go and cast it in “concrete” by sending it to SSRS, Crystal Reports, etc.
Pivot Tables in Acumatica 6
So, needless to say, I’ve been looking forward to playing with Pivot Tables in Acumatica 6.
First, let’s take a look at how to get started.
We get started by opening the Pivot Tables (SM208010) screen, which is a brand-new screen on the Acumatica menu.
To create a new Pivot Table, just choose an existing Generic Inquiry in the Screen ID field. I’m not positive, but it looks to me like it has to be a Generic Inquiry that was defined using the Generic Inquiry (SM208000) screen, not one of the out-of-the-box screens that look like generic inquiries, but were really created by a programmer’s tool (which is above my head).
I’m going to use the Invoiced Items generic inquiry that comes available in the SalesDemo data set that can be installed with a new company in Acumatica.
After you put something in the Screen ID field, then you need to give your Pivot Table a name in the Name field. After that, you can click the Save Icon and you have the beginnings of a Pivot Table.
Now we need to decide what to put in the Pivot Table.
I know, it’s not as easy as Pivot Tables in Excel because you have two different screens (one for defining the Pivot Table and another for viewing the Pivot Table), but at least the format is familiar to Excel Pivot Table users and you can drag-and-drop fields which “feels” really nice as an end-user. And how something “feels” in software is very important. There is a way to drag-and-drop fields in one screen (not two different screens), but it’s a little buggy right now (scroll down to the More Excel-Like Pivot Tables section to read more).
I find it’s easier to show an example rather than try to explain the theory, so let’s throw some fields in there and then talk about them.
I’m going to put some sample fields in all four areas: Filters, Rows, Columns, and Values
Then click the VIEW PIVOT button highlighted above to see what the Pivot Table looks like and where our fields got placed on the Pivot Table.
Filters: You can see that these get placed on the top. You can click the little filter icon on the field and then apply some kind of filter. The filter then gets applied to the entire Pivot Table.
Rows: As the name implies, the fields that we put in the Rows area become rows in the Pivot Table (go figure huh?). One thing though that is very powerful is the way you can nest multiple rows inside of each other like we’re doing in the example above with the Customer Class and Account Name fields. In our example above, this allows us to see groups of customers, including the group totals, while still being able to see the numbers for the individual customers.
Columns: More rocket science here. The fields that we put in the Columns area become columns in the Pivot Table (amazing isn’t it?). We aren’t doing this in the example above because we only have one column, Type, but we could nest columns in the same way that we nested rows, including the totals per field.
Values: Last but not least, we need to define the values that will appear in the Pivot Table grid. These are all of the numbers. You could even list more than one field here (lots of possibilities), although we’re only showing one field, Ext. Amount, in our example above.
Now for some fine tuning.
The first thing I notice is that the numbers are displayed as decimals. Let’s say I want to show them as whole numbers, but still show the comma separators for every group of 3 digits.
All I need to do is set the format on the Ext. Amount field in the Values area. Now, granted, the format codes aren’t very intuitive (I’ve been meaning to make a post on format codes), but, for now, trust me that the code pictured in the screenshot below is what we want.
One of the nice things about designing Pivot Tables in Acumatica 6 is that you don’t have to keep clicking the VIEW PIVOT button. You can leave your Pivot Table preview window open and just keep refreshing it after making changes to the Pivot Table definition. So that’s what I’m going to do.
And now I have numbers in the format that I wanted, without the decimals, but still with the comma separators.
Another thing I might want to change is the totals. Maybe I don’t want that Total row after every Customer Class. If that’s the case, I can just uncheck Show Total for the Account Name field. Honestly, I’m not sure why this isn’t set at the Customer Class field instead of the Account Name field, but that’s what I had to do in order to get it to work. Maybe it’s an undocumented feature in the beta version of Acumatica 6 that I’m using.
If I do that, then the Total row will go away on the bottom of every Customer Class.
And if I wanted to turn totals back on, but spice up the label to say something other than just the word Total, I could do that too.
But I’ll go ahead and leave the Row Totals off for now.
Pay Attention! Sorting on Aggregates
This gets its own section because it’s very important, very cool, and deserves a big highlight.
One thing pivot tables are really good at is showing things like Top 5 Customers, Top 10 Products, or other Top things. You could also do things like Bottom 5 Customers, but most people aren’t interested in that.
Now, granted, I can’t see a way to do Top 5 Customers with Pivot Tables in Acumatica 6, but maybe I’m missing something. If you see what I’m missing, please point it out in the comments and I’ll come back and update this post.
But, even if we can’t do Top 5 Customers, at least we can do Top Customers. The only downside is that we will see the full list of customers, not just the Top 5.
The important thing though is that Pivot Tables in Acumatica 6 allow us to sort on the summarized values.
This is currently a limitation with Generic Inquiries in Acumatica 5. You can use the Grouping tab to group on a field, but you can’t then sort on the summarized value. Pivot Tables in Acumatica 6 solve this problem which is awesome.
When I say “summarized values”, the formal word for this is “aggregation” which basically means a calculation that is going across multiple rows. The expression editor (pencil icon) on the Results Grid tab of the Generic Inquiry (SM208000) screen allows you to define calculations that go across columns on a specific row, but not across multiple rows.
So Pivot Tables are good at aggregations.
The aggregations that you can do with Pivot Tables in Acumatica 6 are:
If you’re a statistician, you can make a customization that relabels “Average” to “Mean” 🙂
Ok, now back to our example. This is a long winded explanation, but the application is very simple.
It’s worth pointing out in the screenshot above that this is actually just sorting customers (Account Name) within each Customers Class. So the sort starts over again when it reaches a new customer class.
If I wanted a true Top Customers list, then I would just need to remove Customer Class from the Rows area.
If I did that, then I would get the picture below which now shows me my top customers. Note that FDIQVIK wasn’t in the screenshot above because it’s a member of a customer class that’s further down the list.
Defining and Navigating between Pivot Tables
To create a Pivot Table on a Generic Inquiry, a user doesn’t even have to browse to the Pivot Tables (SM208010) screen because they can get to it quickly off of whatever Generic Inquiry screen they happen to be on by clicking CUSTOMIZATION -> Pivot Tables like pictured below.
You can see what Pivot Tables have been created for a particular Generic Inquiry screen also without leaving the screen.
Just navigate to PIVOT TABLES which is right next to CUSTOMIZATION
You can see in the screenshot above that, in addition the A Test Pivot example that we were working on earlier in the post, I also created Another Pivot just as a sample second pivot.
It’s nice that you can define multiple Pivot Tables on a Generic Inquiry.
What’s also nice is that, when you are viewing a Pivot Table, you can quickly toggle between all the Pivot Tables that have been defined for that Generic Inquiry.
Since I have now added Another Pivot, you can see it as a new tab when going back to the Pivot Table screen from an earlier screenshot.
Personal vs. Shared Pivot Tables
Up until now, all of the Pivot Tables that we have been creating have been Personal, only available to the user that we are logged in under.
This is great, but what if we want to share our Pivot Table creation with all users.
Or, even better, what if we want to put our Pivot Table creation on the Acumatica menu rather than having to browse to it from a Generic Inquiry screen.
This is where we need to make a Pivot Table a Shared Pivot Table by checking the Is Shared box. This will make it available to everyone.
If we want to put it on the menu, then we also need to pick a location using the Site Map Location field.
More Excel-Like Pivot Tables
Something that I haven’t pointed out yet is the SAVE AS and SAVE buttons on the Pivot Tables themselves.
At first I thought, “this is great, but there aren’t too many changes that I can make which I would then want to save”.
I mean, sure, I could apply some sorts and filters, but I don’t know how often I would want to save my work so it appears as a new tab on the top of the screen.
Then it dawned on me.
I can make Acumatica Pivot Tables function like Excel Pivot Tables with drag-and-drop!!!!
The trick is to add all of your unused fields to the Filters area (keep clicking the + icon in the Filters area to do this quickly).
Once you do that, your fields will appear on the Pivot Table like this.
And now you can drag the fields around without having to keep going back to the Pivot Tables (SM208010) screen to make changes.
Then of course you can use the SAVE AS and SAVE buttons to save your creations.
Bug Alert: Dragging fields around doesn’t always work so great in the first beta version of Acumatica 6 that I’m working with. Also, the Filters fields that are displayed on the top don’t have a scrollbar so you’re limited by how much room your monitor has to display them. But I imagine that these will get fixed in future versions of Acumatica 6.
Sorry for the long post, but hopefully you can tell that I’m excited about Pivot Tables in Acumatica 6.
There are more things to look at. One big thing that I haven’t looked at yet is security. Like, if you can enable users to save Personal Pivot Tables, but not Shared Pivot Tables.
But, all in all, I’m happy with what I see.
And I think that Pivot Tables will become a very popular feature in Acumatica in the years to come.