Material queue on Handheld Change order

I am beginning to use handhelds and Our pickers want to organize the handheld material queue by part number. I see the queue sequence is a key field so I can’t change it in an updatable BAQ. Anyone have any Ideas? we are planning to release all jobs for an order at the same time and only for that order.

Thanks
Matt

Does anyone have any experience with fulfillment workbench? I am releasing jobs using an allocation template. Everything works well but It is not putting it in order by part number. The pickers queue is making them move to a location then to another and back to the original location.

Example. This is the order (my material Queue) in handheld shows. I need it to be sorted by part. All parts are pulled in and released at the same time but it does not release the parts in order.

What is happening
Job 1
partx
party
job2
partx
party

What I expected
Job1 -partx
job2 - partx
job1 - party
job2 - party

thanks for any help

Which Part Number?
Job Part, Job Asm Part or Job Material Part?
I assume Job Material Part Number?

Job material part. I am using the job fulfillment tab

The easiest way I accomplished my own sort was with my own Report Style. I used the same RDD, but I copied the original Report (RDL or Crystal) and named it according to my sort. Then in the RDL or Crystal Report I manually set the sort on the Group.

Some have had some success with hijacking the Combo with a Customization and then created another Report Style like above but then used the appropriate Report Parameter with thier own value to set the Group sort.

One case, was for Sales Order Picking where we needed to pick by bin order (so the picker can sequentially walk through the warehouse by bin). In that case we sorted by Bin, and grouped the sales Orders by a new level called ‘Cart’ in which each Cart only contained 5 Sales Orders. When printing it then first printed by Cart # then by Bin. This was all done IN the report.
I suspect that in the future Epicor may allow additional Sort and Group Definitions in the RDD for System RDDs.
I had forgotten about wanting this so I just added it to Epicor Ideas, give it a vote if you’d like:
https://epicor-manufacturing.ideas.aha.io/ideas/ERP-I-184

I am not using a report I am using the Handheld menu for My Material queue.

I didn’t realize that.
In that case if you are just using the Mtl Queue option on the Handheld, the dirty way would be to create a Pre-Processing Method Directive on MaterialQueue.GetRows and using the ‘Set Argument/Variable’ widget, set the ‘whereClauseMtlQueue’ to something like this:

"Plant = 'MfgSys' and (SelectedByEmpID = '') and Lock = false and TranStatus <> 'Hold' by PartNum by SysDate by SysTime"

This just takes the system provided value for the Parameter of

Plant = 'MfgSys' and (SelectedByEmpID = '007' OR SelectedByEmpID = '') and Lock = false and TranStatus <> 'Hold' by SysDate by SysTime

and removes the Current Employee ID filter (if you want to keep that then you will need additional widgets before this to lookup the Employee ID) and we add 'by PartNum ’ in front of the existing sort of ‘by SysDate by SysTime.’
Be careful with this, since this is a GetRows and is used by other Material Queue programs in Epicor. So you will probably want to add a condition to check for Call Context to make sure this only applies when you want it to (on Handhelds for instance). (Like callContext.ClientType, ProcessID, AssemblyName, etc) Just run a Trace to determine what the callContext values are.
If you have multiple plants you will probably want to set that in the whereClause too.
The idea is to rebuild the whereClause to what you need.
Be careful!

@Rick_Bird . Yes. I have used similar with BPM only for handheld.
BpmFunc.Replace(whereClauseMtlQueue,“by SysDate by SysTime” ,“by Priority by FromBinNum by SysDate by SysTime” )

1 Like

Hello @MattSpotts
May be you can check the sort transaction by priority (as a workaround).
While allocating parts in fulfillment workbench specify the transaction priority.

image