Skip to main content

ActiveX Gantt Chart control in Dynamics Ax

This article exposes the very less used but two very important features; Gantt Chart Reporting (data analysis based on different kind of scheduling jobs) and use of ActiveX controls in Dynamics Ax. I hope you all understand what we can achieve through Gantt Charts. And ActiveX controls are small programs that provide add-on functionality to your application, usually it provides a GUI which can be placed on your forms / reports.

Note: This article is for advance Dynamics Ax users.

Dynamics Ax uses a third party ActiveX control to implement Gantt Charts. The ActiveX control is from NETRONIC, called VARCHART XGantt version 4.1.



So, for our Gantt Chart we will use this ActiveX, this way you will also understand "How to use third party ActiveX controls in Dynamics Ax?".

For reference, see below to know where this Gantt Chart ActiveX control is used in Dynamics Ax...
Open Project--Project Details form, click Activities button, on Hierarchy form click Inquiry--Gantt



Open Production Order--Gantt form





In this article, instead of writing my own code sample, I will refer Standard Dynamics Ax Shared Project Area for our understanding.



To use this Gantt Activex control, Dynamics Ax provides you some wrapper API classes. Search AOT--Classes for Gantt* classes. By seeing these class names you should be able to understand what they do.

How to use ActiveX control in Ax?

Create Ax form and add your Netronic ActiveX control from the ActiveX browser window.





How to change ActiveX control properties?


  • Open form in Visual Form Designer.


  • Select ActiveX control.

  • In properties window, select Custom property and click on browse button. This will open ActiveX control's property window.



  • To setup temp data tables (contains data to be displayed on the control), filters, calendars, layer colors, date-time lines etc check Objects tab.
  • To setup data tables you created in above step check Node tab.
That's it, just play with ActiveX properties and the project area I mentioned at the starting of this article. You are ready to use your newly added ActiveX control in Dynamics Ax.


Errors you might face while using Gantt ActiveX

1) When you are placing Gantt ActiveX on the form and you see error "Loading the interface... failed.".





Solution: It means you have not installed the ActiveX on your system yet. Install the required ActiveX and you should be good to go.

Feel free to post your feedback / comments / queries here.

Popular posts from this blog

What does this mean: "The form datasource query object does not support changing its AllowCrossCompany property after the form has executed the query."?

I have made a form with datasources vendtable and vendtrans. Inside vendtable_ds.executequery() looks like this: QueryBuildDataSource queryBuildDatasource ,queryBDS_VendTrans_Invoice; ; queryBuildDatasource = this.query().dataSourceTable(tablenum(vendtable)); queryBDS_VendTrans_Invoice = this.query().dataSourceTable(tablenum(vendtrans)); if (curext() == "MASTERCOMP") { this.query().allowCrossCompany(true); } else { this.query().allowCrossCompany(false); } //FilterVendorName = stringedit control on form if (FilterVendorName.text()) { queryBuildDatasource.addRange(fieldNum(VendTable,Name)).value(strfmt("*%1*", FilterVendorName.text())); } else { queryBuildDatasource.clearRange(fieldNum(VendTable,Name)); } //FilterInvoiceNumber = stringedit control on form if (FilterInvoiceNumber.valueStr() == "") { queryBDS_VendTrans_Invoice.enabled(false); } else { queryBDS_VendTrans_Invoice.enabled(true); queryBDS_VendTrans_In...

Credit Note [Dynamics AX] using X++

This post will help to create credit note for a sales order based on the invent lot id. All the invoices raised for a particular sales line – Lot Id will be raised back as a credit note. Information on Credit Note: A credit note or credit memorandum (memo) is a commercial document issued by a seller to a buyer. The seller usually issues a Credit Memo for the same or lower amount than the invoice, and then repays the money to the buyer or sets it off against a balance due from other transactions Below Code will help to create credit note for all the invoices raised against the sales line -lot id. Please note: This code can be customized as per your requirements. This is just a template to help creating credit note using X++ code. Please test the code before use. static void SR_CreateCreditNote_Sales(Args _args) { // Coded by Sreenath Reddy CustInvoiceTrans custInvoiceTrans; Dialog dialog = new Dialog(“Create credit note – for sales.”); DialogField dfInv...