As in allowed, yes.
As in from me? Absolutely not!

Iâll answer that one right now.
You donât. But you will have to rethink some of it. We gain some capabilities, and we lose some. Gotta think on your feet, and outside the box.
As @Mark_Wonsil would say, âWhat business problem are you trying to solve? Is there a better way than what you are doing now?â
Not everything, just half. (The client side). People have been preaching for years now to move your s*** to server side because itâs better for a bunch of reasons. If youâve done that, then a lot, if not most of the heavy hitting as far as code goes is still relevant. If you ignored the warning and put all your code on the client side, then, yeah, youâre in a hurt bag. But you canât say that you werenât warned. ![]()
In stead of Experts Corner, it could be Dummies Corner. Iâd bookmark that.
Whatâs the aversion to widgets? Isnât that what epicor âwantsâ us to use? Arenât they also less prone to breaking during upgrades?
I would like to see some more discussion around this. We are cloud DT, so I am never sure what is client and server side. I canât be the only one confused. What are the most common client side changes a company is likely to make? What are the best ways to migrate those kinds of changes to the server side? These questions are for the list. I am curious, but not curious enough to actually do some research. ![]()
Because the only complexity widgets abstract away is syntax, which is the easiest part of programming. Understanding the BO/API design, breaking down what you want to happen and what logic would achieve that and all the really hard parts remain. Once you have the skills to do these harder parts, widgets just make you less efficient at your work. Whats worse, is the widgets are unique to Epicor, whereas C# is more global in scope, so you can find resources and help for it much easier. Not only that, but you can find people who already have C# skills.
Because widgets are more restrictive, it was hoped that it would make upgrades easier, as you can change how a widget is implemented without the person who made it having to know anything. But it hasnât actually worked out that way in my experience, for both Widgets and code, the reason they have broken for me is the way the software works has changed, or the BO signature has changed, which broke the widgets and code equally.
BPMâs, Epicor functions, and BAQâs are server side.
UI customizations are client side.
I would say data validation and business logic (you can only do x after Y unless Z applies) are the most common thing people do in a UI customization that should be done at the BPM level.

To be honest, I will use what I am comfortable with.
They say so, but Iâve never had a bpm or function break.
I have had the opposite.
Definite interest, I have a coding background but when it comes to Epicor there are so many business objects, assemblies, and etc. that Iâm unfamiliar with. Itâs difficult finding how to properly use their methods and while there are amazing solutions to lots of questions, theyâre scattered in the many posts on this forum and can be hard to find sometimes. Thereâs some documentation Epicor provides, but when things donât work the documentation isnât always enough to solve the problem.
I feel your pain daily.
Itâs hard to remember that Epicor (and indeed all ERP systems) are somewhat generic packages that can work in almost any manufacturing environment, and that each of us is an individual business that does stuff that isnât cut straight from the âgeneric manufacturing environmentâ cloth. Having the wealth of tools to make it dance to our own unique tune is a blessing⌠and also a curse.

Here is the thread:
![]()
Certainly welcome to continue discussion here about how it works.
Might be as simple as curating some posts but I know it was a big breakthrough for me when I learned how to do a trace and how to turn on field help to see a binding.

Step one of the class, how to do a trace, and how to read it.
Too late, I chose one I could easily do in my time available!
Just make the bullet point for the place holder.

I donât think this has been established yet, so excuse me if it has.
Is it Kinetic Code Camp or Epicor Code Camp??