Refresh a specific grid with a button

At this point it’s getting a little tough. First thought is you could get a ref to the click event handler of the grid in question and call it manually but that requires reflection.

Second thought is probably smarter but also requires reflection, luckily it’s all bundled up for you. Get yourself a decompiler like ILSpy, DotPeek, Reflector, etc. Open your dashboard DLL. Browse in it to find what code is being called by the click events. This will show you how they are refreshing those grids.

so I downloaded ILspy portable, and opened one of the DLL’s that it in the stored DLL’s on my computer. What would I be looking for? I can search for refresh, but, there’s a lot of them…

This one looks promising, but how would I make the work on a specific grid?

the DLL is gonna be your dashboard assembly (so it will be listed in your menu item). It will be found in your client dir.

I don’t think it’s in there. It’s stored on the server isn’t it? Then just brought down into the cache when used right?

Or did you mean in the client directory on the server?

I can’t find it on the server anywhere. On my computer I get these. Should be one them right?

image

Oh yea, sorry. You can find it in (locally):
C:\ProgramData\Epicor\urserver\UrVersion\urCompany\shared\CustomDLLs

OK, now that I have it open, how do I find anything? This is like reading a foreign language to me.

I’m looking for a method right? When I search for refresh, there are a lot of things pop up. How do I narrow it down?

Somewhere in here right? The refresh is on the MainController right?

Aren’t you glad you opened up this can of worms? haha.

easiest place to start is probably top level, find the definition of your grid - from there you can find all references to it

yeah, still don’t know what I’m looking for.

I’ll have to put this on the list of things I’ll learn at a later date probably.

This is friggin brilliant.