Tuesday, September 27, 2011

In Epicor, I needed to customize the Sales Order Pick List report screen so it defaults to a wider From and To Ship By date range. In customization, this means updating the ReportParam value when the form loads:

Normally, to access the text field for a control in a customization you use csm.GetNativeControlReference. But, in this case, I needed to change the ReportParam, which is accessed through oTrans.EpiDataViews["ReportParam"] dataset.

Friday, September 23, 2011

One of the easiest, and fastest ways to get data out of Epicor is to use C# and the Epicor client library assemblies. This article provides sample code to export the results of a business activity query created using the BAQ Designer into a C# .Net framework dataset.

Step 1 - Add ReferencesIn you project, at a minimum you will need to reference the following assemblies:-Epicor.Mfg.BO.DynamicQuery-Epicor.Mfg.IF.IDynamicQuery-Epicor.Mfg.Core.BLConnectionPool-Epicor.Mfg.Lib.ISessionMod-Epicor.Mfg.Lib.SessionMod

DynamicQuery is the business object to manage BAQs (it replaces QueryDesignDataSet in Vantage). BLConnectionPool & SessionMod are necessary to explicitly set the company for the session. This is important, because otherwise the company will be whatever company was last selected for the user account used to create the session, which can yield unpredictable results.

Step 2 - Add class to create business objectThe following is my class to create Epicor business objects for me:

About Me

I currently work at Intranet Connections, which produces intranet software. I graduated from UBC with a BSc in Computer Science in 1998, and an MOT MBA from SFU in 2013. I've worked in information security, e-commerce, ERP development, and now intranets. I've lived and worked in Singapore, Manhattan, Calgary, and now back in my hometown of Vancouver.