Add Columns in Sales Order Entry line list grid

I am needing to add two columns to Sales Order Entry.
We are constantly discontinuing items in our warehouse and our customers usually are never up to date.

I copy and paste all orders directly into Epicor, so I get an error with “part is being phased out” “part is inactive”. By the time the order finishes, I am at a loss as to which parts were discontinued without going into part maintenance. I would like to delete these part numbers (inactive) from the order once the lines are completed entry and notify our customers of inactive parts and limited stock (run out) instead of warehouse getting our pick ticket and seeing this unnecessary part on it or it messing with jobs/purchasing side?

I would like to add the inactive and the run out columns as a true /false or radio button thats checked/unchecked to the grid in sales order entry lines list.

I have checked the below and there is not an option for it.
Is there a way to add it and it stays as default?
If this is do-able, please walk me through the steps.

thank you!


Are you looking for these two columns to be readonly?

i) add the additional column to your grid view
ii) do a lookup on the part on the onpartchange event, get the appropriate data (ProcessCaller with a filter is usally the quickest way to do this)
iii) add the field value to your grid view into your new column
iv) go crazy and add a row rule that colours the line when the value is inactive / out of stock

Making columns readonly would be a straight forward edv.dataView.Table.Columns[“ColumnName”].ExtendedProperties[“ReadOnly”] = true or a row rule…


@Jim I have E9 not E10. I don’t think it will work.

These steps are too advanced to me…

read only? If this means it’s not able to “open with” then yes. readonly.

@shetay29 Are you allowed to do bpms in you system. If you are with a small bpm and using CheckBox01 and CheckBox02 as runout and inactive this will not be too hard to do.

Make a personalization to unhide CheckBox01 and 02 on the line. It would be best to eventually do this as a customization, but this will do for now.

I have to go to a meeting, but will tweak a bpm that grabs info from Part and sets it on orderdtl and post it here.

1 Like

I do have access to BPM’s :grinning:

I will give this a try if you could get that information for me when you are free.

Thank you!

Use Directive Import and this should be good to go.

Long term it would be better to unhide the columns as a customization and maybe even throw in row rules to color them.

I am still amazed at how fast you can paste insert, but did you check if your company was licensed for DMT? It could cut your processing time substantially.

Check Run Out.bpm (19.5 KB)


I always forget about using DMT for every day processing. I only think of using it for one-off updates.

E9 DMT is no after flexible as E10. Paste insert is no where near as fast in E9 as 10… Got 100 lines, go get a coffee and come back :grin:

I’m getting this error

Our company has had a lot of trouble with Epicor support.
We have Demand Management on our test version but it has been over 9 months and no one can figure out how to get it onto our live version (not us, Epicor) .
This is for EDI orders to direct import orders into Epicor.

Our company has seperated from the company we use to be merged with and we took Epicor with us and when it was set up initially (several years ago) the owner did not care whatsoever to set it up right. He wanted the cheapest way possible and he was careless of anything financial or any other benefits and we know we can get a lot more use out of Epicor but Epicor wants an arm and leg and like stated they never seem to be of any help. We’re actually thinking of either switching to a different ERP or upgrading to the newest version in hopes we get better customer service and set it up the correct way this time.

Epicor has been so painful in terms of getting stuff done. Lol
We are having bugs too, we are battling getting things posted because we can’t get it to post and something to do with commissions and our GL accounts are screwed up and after 6 months of this Epicor has told us “they don’t know and can’t help” . So to even try and get DMT would be trying to pull teeth I’m sure haha. I use to hand type these 100-300 line orders and we get on average of 300 orders a week. So to be able and find this “faster” way, I will take it! Anything beats hand typing each part number and qty. :joy: and I also run two sessions at once to do orders in terms quicker. Then I do something else while waiting, but I usually set the pace by entering one order on one session and waiting till its half way done and then start the second and usually I’m not waiiting long by the time I paste insert the second session the first one has maybe 3-5 lines left and I get prepared to paste insert. It works wonderful for me :slight_smile:

Sorry, I thought about that last night after I had posted the baq that I should just send the code. It is method directive post processing on SalesOrder.ChangePartNumber
No condition. Action execute ABL code. change the radio button to execute code below and paste in the code below. Click validate and ok then enable it.


/* set info  from part */

for Each ttOrderDtl where = cur-comp.

	For First Part fields (Inactive RunOut) where Part.PartNum = ttOrderDtl.PartNum.
		Assign ttOrderDtl.CheckBox01 = Part.Inactive
					 ttOrderDtl.CheckBox02 = Part.RunOut.


I have had a lot off issues getting traction with the process, but we are gaining an appreciation of how it can help in daily processing. I have a CSR that would only use it on the “big” orders. I sat with him and his boss and had him do a two line order with new parts. The new parts were 10 seconds each and the order was done in 45 seconds. We agreed that if he can enter two new parts and the sales order in under two minutes that he can do them manually. Six months later he is the biggest fan of the process.

I am so clueless on where to go to input this code.:thinking:

We were preparing for go live on 700 and found several show stoppers that were fixed in 701 and 702 and have had few issues. I went from 700C to 702 in a weekend and nothing broke along the way. It might be worth getting some consultant quotes on moving to 702A which is the jumping point to E10.

System Management > Business Process management > Method Directive.
Click search. fill out as below pick change partnummaster

in the tree click on post process then click new post proccessing.

give it a name and group, so you can transfer to live as I assume you are doing this in test and will need to move it.

leave conditions blank.
click actions, pick execute ABL code
then execute code below

right click edit … paste in the code, click validate, click ok. click ok to close actions.
Check the enabled checkbox
click save.

Test it. If it looks good, then export from test and import into live.

1 Like

Those steps really helped!

This worked great in test version but when I switched and created this in live it didnt work…
Am I doing something wrong?