question

Zixuan Xiong avatar image
3 Likes"
Zixuan Xiong asked Logan Gold commented

ProcessFlow - List Content

How to obtain the entries and back orders number in a list?

FlexSim 7.7.4
process flowlistlist entrieslist back orders
· 4
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Sachin T avatar image Sachin T commented ·

i want to do the same but just for process flow list. this is internal list and not connected to any global list. @Matthew Gillespie @Logan Gold

0 Likes 0 ·
Jacob W2 avatar image Jacob W2 ♦ Sachin T commented ·
@Sachin T,

Your question has been answered already in two of the answers below.

0 Likes 0 ·
Sachin T avatar image Sachin T Jacob W2 ♦ commented ·

thank you. But this is not working.

TrackedVariable("ReCircCounter").value=getstat(getactivity(processFlow, "List"), "Content", STAT_CURRENT, current);


I am doing something wrong.


0 Likes 0 ·
Logan Gold avatar image Logan Gold ♦♦ Sachin T commented ·

@Sachin T, you can still use the answers that were given by Anthony and Zixuan. In fact, Zixuan's answer uses similar code to the Activity Stat dropdown option from Anthony's answer. Even with an internal list, you still have access to the list's stats using that option/code.

There's probably still a way to do it like in Matthew's answer, except content(), listentries(), and listbackorders() are deprecated now. You would instead use treenode.subnodes.length, List.entries(), and List.backOrders(), respectively. The tricky part would be getting a reference to the internal list in the List resource's tree. It's possible, but using getstat() and getactivity() are easier.

0 Likes 0 ·
Matthew Gillespie avatar image
0 Likes"
Matthew Gillespie answered Matthew Gillespie commented

In Process Flow, the List block will draw a green circle that displays how many entries it has and a red circle that displays how many back orders it has.

Outside of Process Flow you can use the listentries() and listbackorders() commands to get a reference to the entries or back orders node of the specified list. You would then just need to use the content() command to find out how many there are.

content(listentries(globallist("List1")))

content(listbackorders(globallist("List1")))

· 2
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Zixuan Xiong avatar image Zixuan Xiong commented ·

listentries and listbackorders are what I want! Thank you!

0 Likes 0 ·
Matthew Gillespie avatar image Matthew Gillespie ♦♦ Zixuan Xiong commented ·

Note: Those commands really only work for global lists. If you are using a Process Flow List activity that uses an internal list you'll need to use your solution since the actual list is buried deep in the process flow structure.

1 Like 1 ·
anthony.johnson avatar image
2 Likes"
anthony.johnson answered

If you need to get the number of entries or back orders on a list in process flow, you can use the Assign Labels activity, and use the pick option: Activity Stat. Choose the list as the object, and then either Content, or Back Order Content as the stat to get.

5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Zixuan Xiong avatar image
2 Likes"
Zixuan Xiong answered Zixuan Xiong edited

Also solved as follow:

treenode current = param(1);
treenode activity = param(2);
treenode token = param(3);
treenode createdToken = param(4);
treenode assignTo = createdToken;
int creationRank = param(5);
string labelName = param(6);
treenode processFlow = ownerobject(activity);

return getstat(getactivity(processFlow, "Inventory"), "BackOrderContent", STAT_CURRENT, current);
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.