We often hear from someone who needs to log changes to data in his business system. Perhaps a production supervisor wants to know when the description of a part was changed or a human resources manager wants a record of everyone's pay rate changes. Maybe the human resources manager also wants to be notified by e-mail every time the pay rate gets updated. Using Epicor, logging table changes is as easy as pie. This week, we show you how to use the Business Activity Manager (BAM) to meet this requirement.
First, the BAM is found on the menu under Executive Analysis >> Business Activity Management >> Setup.

In the BAM tool, on the first tab, we simply choose the table and the columns in that table that we want to be logged.

On the second tab, we choose the action or actions we want to take to accomplish the logging. We can have a log created. Simply check the "Create Log" box.
![Select [Create Log].](http://deftflux.com/wp-content/uploads/2014/10/BAM-3-150x150.png)
![Select [Send Alert].](http://deftflux.com/wp-content/uploads/2014/10/BAM-4-150x150.png)

The log simply tells you the date and time of the change, the old value, and the update value, which can be quite valuable.

Now, the BAM can also automatically kick of a report whenever some key thing is updated. That, however, is another story for another day.
If you need help setting up your logging, or any other business process, give us a call. We are here to help.
On occasion, an Epicor ERP user will want to write a report that requires a hierarchical view of a part's multi-level bill of material. In Epicor, we would prefer to do this using a Business Activity Query (BAQ). The Epicor 10 BAQ tool is much more powerful than the tool from version 9, so it comes close to being able to do this, but just misses the mark. In order to query a hierarchical BOM, we must write the SQL and create a view in the database. Once we create the view, we can use a BAQ to access it (in version 9 or version 10 as long as we're using SQL Server), or we can query it directly using an SSRS report. Herewith, we provide the SQL:
We have recently benefited from using knockout.js to add richness to some of our web application forms. Once our view model is bound, the library allows us to update text on the form dynamically and easily. Naturally, it wasn't long before someone asked, "How do I format money using knockout.js?" Some folks had some partial answers and some folks had some answers that didn't work. It was particularly challenging to deal with users selecting partial fields, negative amounts, and what not, so we rolled our own knockout extension. We wouldn't say our answer is perfect, but we think it is a fair compromise that works with the major browsers. Behold, the jsFiddle for money formatting in knockout.
In the world of Epicor, most customer modifications (Dashboards, BAQs, Customizations, etc.) can be individually exported to a file and thus imported one at a time. This is a convenient way to make a quick modification and move it from Pilot or Test up to Live. Not all modifications are created equal, however. A Dashboard cannot be imported to update an existing Dashboard with the same name. The dashboard must be renamed. Report Data Definitions cannot be directly exported at all.
“So,” you ask, “How can I export a Report Data Definition?” (more…)
At Deft Flux, we are curing business information headaches, and we are doing it because we care. Here is an example.
Epicor has several different paths whereby one may create a customization. So far, we have found the Business Process Management (BPM) method directive to be the most useful. Why? (more…)
We have yet another JDEdwards Enterprise One curiosity. This one is a rare manifestation of the remarkable recursive log.

As we have stated previously, Epicor has provided customers with a simple method for building business rules into the ERP workflow without the usual upgrade headaches that go along with customizations. They call it Business Process Management (BPM). BPM comes in two flavors, Method Directives and Data Directives. Data Directives are fired by updates to a table. Method Directives are called before, during, or after a Business Object Method executes. Today we want to demonstrate how to perform a common validation using a BPM Method Directive.
Deft Flux is jump-starting the movement to return to elegant information design. You are saying to yourself, How? So, here we have an example.
Recently, an Epicor client asked us whether, on his traveler, it would be possible to print the color of the part being produced. We responded with the standard questions: What is the real reason for the change? Since the raw materials are already listed, is it worth the effort? Is it even possible? (more…)