Hi,
In v2006, we have a screen called Send Msg to RF User. I've been trying to dig into it to figure out how it works in the background, because I'd like to be able to re-purpose some of the functionality if possible. I'm wondering if it can be used to send a message to a Vocollect user - if so, I was considering writing a database trigger to do stuff like:
-
When a picker picks up a task, have Vocollect tell them something like “This task has 2 emergency picks”.
-
When a picker completes a pick (not the whole task – just a single pick on a task), have Vocollect check the next pick and potentially say “The next pick is for an emergency order”.
-
Also when a picker completes a pick, have Vocollect check the status of the carton the pick was for. If it’s stat code 20 (packed), have Vocollect say “close container”.
Using the database trigger method, I can write the code myself without needing Manhattan. I just did that for a different piece of functionality, which saved us the $100K that Manhattan quoted for the mod.
Also, I was looking in the documentation we have for Vocollect messages, specifically prTaskLUTGetPicks – apparently in the response to that, there’s a field “PICKMESSAGE”, which is always blank, at least according to our document. I’m trying to figure out how to populate it so that when it directs a user to a location, and finally says “pick 1”, it would end up saying “pick 1 – emergency” instead. We'd like to have the "close container" command working as well - apparently Vocollect does have the command, but it's turned off in our Voice Console because our task package doesn't handle it.
Finally, does anyone have any documentation about how to create a Vocollect task package? Or modify one? I was able to successfully modify our existing task package, basically through some dumb luck. Here's a snippet of our task package:
:N RepeatLastPickAllowed
:AP 0
:D 0
:O 7800 858840
L 1926
:N 1251
:L 0 0
:E 0
L 1927
:N 1260
:L 0 0
:C INTERNALVARS[].SEQUENCE=0
:E 0
N 1253
:N SpeakPreviousPick
:Q Last pick was {if(REGION[].SPEAKSLOTDESCRIPTION="0","Location " + PICKS[].PREAISLE + " " + PICKS[].AISLE + " " + PICKS[].POSTAISLE + " " + PICKS[].SLOT, if(REGION[].SPEAKSLOTDESCRIPTION="1","Location " + PICKS[].PREAISLE + " " + PICKS[].AISLE + " " + PICKS[].POSTAISLE + " " + PICKS[].SLOT + ", Item Number <Spell>" + PICKS[].ITEMNUMBER + "</Spell>, Description " + PICKS[].DESCRIPTION,"Item Number <Spell>" + PICKS[].ITEMNUMBER + "</Spell>, Description " + PICKS[].DESCRIPTION))}, , picked {INTERNALVARS[].SAVEQUANTITYPICKED} of {INTERNALVARS[].SAVEQUANTITYTOPICK}, , {if(REGION[].SPEAKWORKID="1","work ID <Spell>"+PICKS[].WORKID+"</Spell>",)}
Does anyone have any documentation about what any of that means?