Label Does not Exist Task Error & Process Flow Source Downtime

Label Does not Exist Task Error & Process Flow Source Downtime

osama_rawwagah
Explorer Explorer
287 Views
5 Replies
Message 1 of 6

Label Does not Exist Task Error & Process Flow Source Downtime

osama_rawwagah
Explorer
Explorer

Hi,

I've built a model for a consolidation warehouse using only process flow (used one connection in the model for the sink) where I built logic for inbound and outbound operations, as well as for the initial inventory of the warehouse.

1. I faced a task error in the outbound logic when I ran the simulation. It is shown in the attached picture below. I'm not sure what causes the label not to be found. Could it by any chance be related to the Find Slot (in Initial Inventory and Inbound Logic) and Find Item (in Outbound logic) queries? As I had some instances where the tokens could get stuck there in some previous runs of the model.

 

2. I used a timetable to set the working hours and added all task executors and queues. However, the sources couldn't be added as they are not in the 3D model and were added via the process flow. So I wonder if the sources would still be able to generate items in the model during the downtime intervals I set that included the queues to which the sources are linked.

 

Any help is much appreciated!

You can find the model file attached as well.

Task Error - Label Doesn't Exist.png

 

0 Likes
Accepted solutions (2)
288 Views
5 Replies
Replies (5)
Message 2 of 6

xavier_low
Contributor
Contributor
Accepted solution

Hi,

 

1) The error is in the 'Local Outbound' logic, where you are trying to load 'token.Box', but the item is on the 'item' label in the token.

The 'item' label is set in Find Item Activity (in Outbound logic), so either change the label in Find Item, or change the loading item from 'token.Box' to 'token.item'.

xavier_low_0-1749525711089.png

 

2) Yes, the sources in the Process Flow would still be able to generate items in the model during the downtime. If you want to stop creating the items during downtime, you can probably add a Decision to check if it is at the downtime.

 

0 Likes
Message 3 of 6

osama_rawwagah
Explorer
Explorer

Thanks for your reply, Xavier
Regarding the first point, I have tried your suggestions and unfortunately both of them returned errors. However, I believe they already are incompatible with the way of outbound logic I set in the model, which implements a series of labels through subflows to reference the number and SKU type of the items for each token generated by the source, which originally represents an order.

For the second point, I figured I didn't need downtime at all.

0 Likes
Message 4 of 6

osama_rawwagah
Explorer
Explorer

@xavier_low After revisiting the model, I found out that I had missed that the 'Box' label is created at the Subflow prior to the said loading activity (which is outside the subflow) thus it couldn't recognize the Box label. However, even after dealing with this, there was still something wrong with the Find Item activities in my outbound logic flows. The tokens would get stuck there and only a few get released in large intervals of the run. So, I tried adding Breathe (0) time delays after each Find Item activity and weirdly enough, this has caused the error "exception: FlexScript exception: Invalid down cast. Object is not an instance of the target type". I searched for it on the forum and didn't find anything helpful. Do you have any idea what might have caused it? I have attached the updated model. Thanks in advance!

0 Likes
Message 5 of 6

moehlmann_fe
Advocate
Advocate
Accepted solution

The Run Sub Flow activity has the option "Label Access On Parent Only" checked. This means that the "item" label that the found item gets assigned to is created on the parent token and thus shared between all subflow tokens. Previously this didn't cause an issue because without the Breathe, appending the item to the "OrderItems" array happens before the next token evaluates the Find Item activity.

moehlmann_fe_0-1749709088146.png

With the Breathe, each token finishes looking for an item, overwriting the item from the previous token, before they get added to the array. So you end up with each entry in the array pointing to the same item.

moehlmann_fe_1-1749709291937.png

You either want to only grant Read-Access on the parent token, so that each subflow token creates its own "item" label. Adding the item to the parent array still works, as you specify that the label is to be created on the "grand-parent" token.

moehlmann_fe_2-1749709505237.png

Or you create an empty "item" label for the subflow tokens. If they have their own label, they will write to that, even if "Label Access On Parent Only" is active.

moehlmann_fe_3-1749709577784.png

 

Tokens getting "stuck" in the Find Item activity is normal behaviour when no item matching the query can be found. They create back orders and will continue as soon as a matching item is available. If you want to skip missing items, activate the "Use Max Wait Timer" option and release the tokens through a second connector that skips adding a value to the parent array.

moehlmann_fe_4-1749709738959.png

 

 

0 Likes
Message 6 of 6

osama_rawwagah
Explorer
Explorer

Thanks a lot for your help, @xavier_low and @moehlmann_fe !

0 Likes