Part II: Publishing a Dynamics AX 2012 R3 Default Entity

By Josh Lee | April 21, 2017

This blog is a continuation from Configuring the Dynamics AX 2-12 R3 Entity Store.  This is part 2 of a 3-part series:

Part 1 - Setting up and Configuring the Dynamics AX 2012 R3 Entity Store

Part 2Publishing a Dynamics AX 2012 R3 default entity

Part 3 – Creating and publishing a custom Dynamics AX 2012 R3 entity

When we last left off we had configured the Entity Store but hadn’t published an Entity due to challenges with some of the default entities fields (namely the memo field). For this blog, I’ll be publishing the SalesTable entity since it does not contain the memo field. To do this, I selected the SalesTable entity and clicked Publish:

PublishingDynamicsAX2012DefaultEntity_JoshLee1

Then I selected my source and clicked publish . . . .DRATS! Foiled again!

PublishingDynamicsAX2012DefaultEntity_JoshLee2

Apparently, some of the tables that are referenced by the DMFSalesTableTargetEntity query (tables referenced in the data sources) do not have the ModifiedBy property set to Yes.  This means I’ll have to locate all the tables in all the data sources and verify that ModifiedBy is set to Yes.  To do this I did the following on the SalesTable and PriceDiscChangePolicy table.

  1. In the AOT go to Data Dictionary, Tables, [Table]
  2. Right click on table (if properties pane does not appear on the right) and select Properties
  3. Find the Modifiedby property and change it to Yes
  4. Click the Save button in the AOT
  5. Synchronize
  6. Restart the AOS (I found this was required for it to pick up the changes, your mileage may vary)

PublishingDynamicsAX2012DefaultEntity_JoshLee3

PublishingDynamicsAX2012DefaultEntity_JoshLee4

Once the SalesTable and PriceDiscChangePolicy reflected the change I went back and attempted to republish the SalesTable entity.

PublishingDynamicsAX2012DefaultEntity_JoshLee5

Success! Now to check I opened up SQL Server Management Studio and queried the table that was published (DMFSalesTableEntity).  As you can see there is no data because this only published the definition (schema) of the entity to the database but did not push the data over.

PublishingDynamicsAX2012DefaultEntity_JoshLee6

To populate the table with data, go back to AX, open the Data import export framework Area page and click on Manage refresh schedule.

PublishingDynamicsAX2012DefaultEntity_JoshLee7

Click New.

PublishingDynamicsAX2012DefaultEntity_JoshLee8

Create a group to hold the entities that you will sync.

PublishingDynamicsAX2012DefaultEntity_JoshLee9

Once a group is created, select it and then click Entities.

PublishingDynamicsAX2012DefaultEntity_JoshLee10

Select the SalesTable Entity we created before (ignore the other one, that will be in a later post on creating a custom entity)

PublishingDynamicsAX2012DefaultEntity_JoshLee11

Select the source

PublishingDynamicsAX2012DefaultEntity_JoshLee12

Click New schedule

PublishingDynamicsAX2012DefaultEntity_JoshLee13

Within the schedule form you have 2 ways to get data:

  1. On a schedule
  2. Ad-hoc

PublishingDynamicsAX2012DefaultEntity_JoshLee14

If you simply click OK, the dialog will close and the population process will kick off.  You can also schedule this to run on a batch server and on a set schedule (click Recurrence) for an automatic incremental refresh.  For now, I’m going to click OK. When the processing is complete you will see something like this:

PublishingDynamicsAX2012DefaultEntity_JoshLee15

Back in management studio I now see data!

PublishingDynamicsAX2012DefaultEntity_JoshLee16

And that completes publishing a default entity. For the final post, I will cover how to modify the existing entities that contain memo fields that are incompatible with SQL.  For now, you can hook up PowerBI to the table that was created and start reporting!

Start the Conversation

It’s our mission to help clients win. We’d love to talk to you about the right business solutions to help you achieve your goals.

Subscribe To Our Blog

Sign up to get periodic updates on the latest posts.

Thank you for subscribing!

X