Modifying Part Where Used to join additional table

I’m trying to add a field in the Part Where Used screen to help me determine whether or not the returned parts are parts that are sold or if they are used as components in other parts.

To do this I need to look at two fields. One is Part.WebPart which I can get and the other is from a UD table that holds customer specific parts which obviously aren’t generally available and thus can’t be shown on the web.

I have turned on tracing when I run the where-used and get a lot of XML data which I converted to JSON and I am able to call the API via Ice.BO.DynamicQuerySvc/Execute to replicate the results returned by the screen. In this XML code I see a SQL SELECT statement, but it does not appear that I can just modify the SQL to join the new table as it completely ignores the addition. The remaining structure of the XML seems to need to be modified to encode it, but it’s way too complicated. So my next thought was to make a copy of Part Where Used and modify it, but it appears that it is not a BAQ or dashboard and instead is a “Tracker” using program “Ice.UI.App.WhereUsed.dll”. Is this something I can copy and modify somehow? If not, is there some other way to accomplish what I’m trying to do?

it might be easier to create your own BAQ and Dashboard, especially if you only want to have a SINGLE LEVEL where used… (Multi-level requires a CTE Query).
The PartMtl table has the where used info… you can filter on the material part number, and find all the parent parts, their revisions, etc. Then you can link that data to the part table to get descriptions, and any other table you wish. Then turn this into a dashboard that you put onto the menu, and even into a context menu.

1 Like

I have a similar topic/challenge on “Part Where Used”. We are seeking someone that can give us some advice on “how to”

We are going live very soon with EPICOR version 10.2.700 or possibly upgrade to latest 2021 version

We are interested in finding out if anyone has the same challenge we have in adding the ‘Part Where Used” highest level parent part. Currently, EPICOR’s “Part Where Used” lookup function only goes 1 level up and we need to go to the highest level and return the partID.

We have a job Traveller that we print for our production team members to produce manufactured parts and this highest level, parent PartID needs to be shown on the Traveller.

To give a simple example of our multi level bill of material:

Level 1: 722512 - Dresser (Finished Good product that we sell to our customers)

  • Level 2: SA05245 - Case Assembly
    • Level 3: M00525 - Top
    • Level 3: M00526 - Gables
    • Level 3: M00527 - Bottom

When we create a job and print the Traveller for M00527, it needs to return the highest level part part in a field on the SSRS report. In this example above it should show the “722512” partID

Very often the manufactured parts we engineer and produce are common parts used on many Finished Good Products or Parts as EPICOR defines them. We need to return the multiple highest level parents in this field shown on our Traveller.

So far I have not been able to find a way to create this customization simply through a BAQ or other method. We are new to EPICOR and hoping we don’t have to pay a developer for such customization or if we do that it is something that can be done quickly and at a reasonable cost.