Visual Studio 2017-2019 (Community, Professional, Enterprise and Standard) Extension for Epicor 10 Customization

Hi,
I got a strange issue, When i load my customizaition (BAQReportRSG_Test), Epicor tool can not load.

But when i load another customization (CallBOMExtractReport), it ok.

@josecgomez I followed all the instructions. got everything downloaded and installed (using Visual studio 2019 pro) and when i try to open a customization it spins then shuts down VS then opens it back up with no project loaded.
any ideas why?
we are trying to understand some code that @Chris_Conn made for us when we went live with E10 in 2019.

Can you open other customizations?
There’s a log in the Epicor Client Directory what does it say?

no, other customizations cause the crash too.

Fix was the download folder for the customizations needs to have more than read only permissions.

1 Like

I know a guy.

1 Like

I don’t know… I suspect when you wrote that only God and you knew how it worked… Now only God knows :joy::joy::joy::joy:

What’s 700 lines of (non-code completion) code among friends?

Also a steak dinner to the first person who says “you can do that in a BAQ” and does just that following the required spec…

3 Likes

Don’t tempt me! What’s the spec?

The original request to @Chris_Conn was to get a multi-level bom picking the part and rev and then using the latest revs for all the child parts (to mirror what MRP will do) and list out all the parts and their level on that top Part / Rev. after that it return part master info

What Im trying to do is understand how he got the full indented BOM so i can get a Max LeadTime of the full structure so we can put a ship by date on the sales order. So of all the parts it takes to make this Top level part , the max lead time of the purchased parts is X , then my ship by date should be (Today + X). id like to have a button on the order entry Line tab for them to press and it calculate.
Its what capable to promise should do but it doesn’t.

Well, you didnt ask me (surprisingly), but I figure you’d appreciate my input either way. In simplest terms (certainly ignoring complexity and specifics), the whole solution leverages BOMSearchAdapter. First it doesnt contain the top level, so theres a separate bit to grab all of that. The core bit of the logic works by using a stack to crawl the BOM - this is what generates the indented data. Obviously there is a ton of additional information that was requested that involves a slew of other adapters and logic that gets injected at every level of the BOM. Now, reuse - not ideal. You could possibly call the form underneath and run the logic, but I wouldnt suggest it. Best bet for my money (assuming you arent rewriting the entire thing) - would be to convert that form logic to server side code (function would work great here, or UBAQ), and make it run ALL of your active\approved MFG’d parts, and also write the highest value back to a UD on the PartRev or similar. Then you can schedule that once a week at 2am and then your PartRev always has latest pur part date for use.

2 Likes

Asking you was next on the list. we were seeing if we could figure it out. :grin:
I was thinking going the function route but we are new to .700 and new to functions so I’m not entirely sure how to do that.

Functions arent too bad. Slight learning curve about how they work\the nuance. Other than that they kind of work how you expect.

You can define the inputs and outputs - which is cool and flexible, just note that you have to use only types from their list (which has been limiting for me before - or at least requiring changing some things).

You can schedule a function - which makes this a power tool for automation.

Step one, make sure you have all of the Function roles in your User Account Maintenance. Then create a library to hold this group of Functions. Also, make sure when you create a function to click “Use Code Widget” (or something like that) - dummy me spent an hour in the past trying to figure out why I couldnt write code in the damn function.

Good new is there isnt very much logic change here. Mostly just converting Adapter code to BO code - which can be daunting if you arent familiar with BO syntax, implementing BO’s in BPMs (which is essentially how it behaves in a Function), and all the includes.

Good luck!

1 Like

Will this extension be available for Visual Studio 2022?

Hello @josecgomez , thank you very much for providing this tool! I seem to be running into a problem when I try to debug a customization (I have DNSpy installed, and the extension setting for this is pointing at the folder where DNSpy resides). The helper libraries for my Epicor version are installed into the Epicor client directory as well. When trying to debug (via “debug” option in the Toolbox) I get a “value cannot be null…parameter name: path” error:

image

Any idea what might be causing this? I’ve checked the log in the Epicor client folder but didn’t see anything of interest there…

I also did try with a couple different customizations just to make sure it wasn’t a problem with one. I have a feeling I’m just missing something simple…any help is much appreciated!

EDIT: Almost forgot to mention - I’m running VS 2017 (v15.9.11) and Epicor 10.2.700.9.

I have to check I haven’t looked at the debug option in quite a while particularly because Epicor let’s you debug nativelly.

Does it not work in 2022?

I couldn’t find it in the extensions list to download it.

1 Like

When I download the extension from the internet and try to install it, it asks what product to install it to and 2022 is not one of them.

image

We have been using E11 since February - version 11.1.200.7

I have downloaded the 2021.2 helper files and put them in the Epicor client directory on my PC

Inside my installation of VS 2019 Pro (16.4.5) i have removed the old vs extension and then re-installed. version is now 1.16

I can open a customisation, but when I click on ‘ToolBox’ nothing happens.

How can I debug this?