Converting a Classic Dashboard to a Kinetic App
By Bryan Spencer
Epicor has moved away from automated dashboard conversion because of the vast difference in WinForms-based classic dashboards and the Kinetic dashboards that are web containers. The conversion produced very poor results on any but the most basic dashboards. Epicor’s recommended approach now is to rebuild the dashboard in Kinetic rather than convert them. In this article I will briefly show building the kinetic version of the dashboard using the dashboard maintenance screen and then show a solution to one of the most asked for corrections to the converted dashboard, missing parameters.
Epicor has removed the dashboard conversion routine from conversion workbench in the later versions of Kinetic. We will open Dashboard maintenance and generate the kinetic app from there.
Once the Kinetic Dashboard app is generated, we can start the work. First off, find the generated app in Application Studio and open. Our example dashboard is a relatively simple dashboard built on JobOper and involves a few parameters including a start and end date range. More times than not the conversion will not create the controls for the second date range parameter
The wizard will create multiple dataviews. One to hold the data and one to hold your parameters for each Query/parameter set. My example was simple and only used one BAQ so 2 views were created along with the Transview. 0_0 is the main dataview and 0_1 is the parameter view.
You can verify the dataviews by looking at the databinding on the created parameters controls.
Once you have identified that correct dataview. Create any additional controls to collect the additional dates that you need and bind them to new fields in the dataview. Note that these fields are created on the fly and should not be added to the dataview designer. Just add them in the EpBinding on the control. Example “dataview.newfield”
Now that all your parameter controls are bound to their respective fields on the parameter dataview you need to create the event that adds a row to the parameter dataview. I normally name all my custom events as UD_xxxxx so that I can find them later. The event has no trigger and only one row-add node. Configure the row-add node for the parameter dataview. In the value field you need to add the fields and values in JSON format
Now that you have the event that adds a row. You need to inject the event into the form load event chain. Edit the window.onload event to include your newly created event. Normally the wizard creates an onload event very similar to this.
The last step is to wire up the grid provider model to use the new fields. In the grid/grid model/Provider model/baq options/where list you want to add an additional where that uses the additional date field.
If you have classic dashboards that need converted to kinetic apps let us help.