Epicor code editorS - RANT

After switching between different projects today, I noticed there is a lack of consistency in code editors within Epicor and it was starting to drive me crazy! Does one software program really need to have 3 different C# code editors, that all work differently?

Screen Customizations - has line number and a bunch of other options

BPM Custom Code - syntax check results are nice, and when you double click them it takes you to the line.

Product Configurator - actually has quasi intellisense, oh and UD Methods!

Could we take the benefits of each and combine them into one really nice editor? PLEASE?!? In the meantime, Iā€™ll continue to code in Notepad ++ and Copy & Paste I guessā€¦

Okay, rant over, time to go homeā€¦

5 Likes

You missed a bit, the code wizards are also different :slight_smile:

Have you tried using the ECE and linqpad? I know they are not native, but certainly an good way to get things happening.

I donā€™t have any experience on the Configurator Editor so I canā€™t comment there.

Apologies if you have already looked at those tools. I do understand where you are coming from, but I think from an Epicor perspective, itā€™s going to be all about development priorities, and perspective.

Ask the Tools team and they will say yet thatā€™s important. Ask the Marketing team and they will say iOT, EVA and Data Analytics. Sometimes the guy who is acting as the conduit between the end users and the vendor gets the short end of the stick.

and if you use Ctrl+space you get code completion!

Ask the Tools team and they will say yet thatā€™s important. Ask the Marketing team and they will say iOT, EVA and Data Analytics. Sometimes the guy who is acting as the conduit between the end users and the vendor gets the short end of the stick.

I wonder what the response would be is they ask the Epicor CUSTOMERS?

For us the value in Epicor is the ability to adapt it to our needs to make us more efficient. That means all the ICE tools & customisations represent HUGE value to us. The better the ICE & customisation tools are the better our Epicor system is and that makes our company better.

In my opinion Joseā€™s Visual studio extensions also make a big difference as it makes creating customisations easier (hence cheaper) which then makes more customisations viable.

Brett

5 Likes

I am sure and Epicor person will chime in here and explain the decision process.

Competing priorities was really what I was really trying to get across.

Cheers.

Note that I feel your pain (and your rant)ā€¦ I did a similar rant when I found out that BPMs supported the ā€œnewā€ String interpolation command for formatting stringsā€¦ but the Configurator does notā€¦
Turns out that BPMs have been converted to use a Roslyn platform for C# code, but the Configurator is still using CSharpCodeProvider to generate code, and that doesnt support C# 6 (yet?)ā€¦ I was told that the tools team is looking into this, but it will take some work to make the code platforms unified.
I had been doing a bunch of BPMs, when i found the string interpolation optionā€¦ then I went back to Configurator, and was disappointedā€¦ it is really much more readable: (which do you like best?):

//OLD Style:
string st = String.Format("part: {0}, Description: {1}",MyPart,MyDescription);
//NEW IMPROVED style:
string st = $"part: {MyPart}, Description: {MyDescription}";
3 Likes

Sheesh whatā€™s going on with c# 8 then???

If i remember correctly, Microsoft stopped supporting CSharpCodeProvider because Roslyn (open source ) was deemed a better service.

I feel your pain, For what its worth, you can click the tab on the errors window of customization editor and double click those errors to get to the offending line.

2 Likes

wow, I learned something! Not as nice/easy as automatic, but a step in the right direction. Any other hidden features?

Thanks @timshuwy, itā€™s at least nice to know itā€™s on someones radar!

I approve this rant. I brought my pitchfork.

image

7 Likes

The coding is not the only place needing uniformityā€¦ the interface as wellā€¦

This shows that those tools were designed by different teams without a global design templateā€¦ (my assumption here) Just look at the difference between BAQ, and dashboard modules.

Search:
DB will show a last date saved (nice)ā€¦not available in BAQ. But BAQ will allow search by name starting byā€¦while in the DBā€¦ wellā€¦ the search using starting at does not workā€¦ ??

BAQ has a last accessed list (while your session is active) but this is not available in DB ā€¦where it would be super nice to have.

Export: BAQ by default exports into ā€œMy documentsā€ folderā€¦ while DB exports under a shared folder in the Epicor spaceā€¦ argggā€¦

etcā€¦

and i am sure there is moreā€¦

I would have hope that going from 9 to 10 would have changed this ā€¦ just food for thought for a future ā€œbigā€ version change ?

Nice to know about the shortcutsā€¦ thanks Chrisā€¦

Pierre

This is the focus of Kinetic. The goal of Kinetic is less about using a particular technology (like Angular) but to create a common UI and UX for Epicor AND third party apps. You see the same with Googleā€™s Material Design or Microsoftā€™s Fluid Design.

Mark W.

2 Likes

String interpolation also does not work in the Customization Tools Dialog editor :frowning:

2 Likes

Part of the reason for non-uniformity is because of WHEN these were developedā€¦ some of the items you mention were developed in the dark ages (before SQL, before Dot Net)ā€¦ so for exampleā€¦ BAQs have been around for a very very long timeā€¦ Not sure, but they may be over two decades oldā€¦ but BPMs are a relative newcomerā€¦ Data BPMs are even newer, and replaced the former ā€œBAMā€ (Business Activity Manager) functionality found before Epicor 9.
But yes, as each module/feature is added, it is sometimes done by a different team, with different ideasā€¦ The latest was the rewrite of the Product Configurator. When they rewrote it for E10, they KNEW it was only going to work in C#, so they took a totally different approach than was done with the ā€œconvertedā€ systems (BPM/BAQ/UI Customs)ā€¦ they took a fresh approach so the interface is different.

2 Likes

Letā€™s all just be thankful that we arenā€™t still coding in Progress 4GL!

3 Likes

On the plus side, I learned how to write C# on the Epicor forms code editor, so it helped to understand why and why not code works rather than autofilling out my code for me :slight_smile:

4 Likes

Fo Real? I was wondering why my intellisense never works in BPM Editor anymore, it used to work fine in 10.1.500.

2 Likes