Warehouse utilization

Good day,
maybe someone can help me is it possible to summarize a warehouse utilization, if I use the statistics function I have to add each shelf individually, then it looks like this:

But I would like to have my whole warehouse as one and would then only see one utilization value.


You mean the average of all shelfs’ utilization? Or show every shelf’s utilization(Line shape) on 1 chart?

1 Like

Average of all shelfs.

i have ca. 6400 places I when 640 are filled i should show 10%

Thank you

I see, could you upload the layout

1 Like

Warehouse_example.vcmx (707.1 KB)

For this situation, I would suggest to write a simple code for it.

from __future__ import division
from vcScript import *

app = getApplication()

def OnRun():
  while True:
    shelfs = [shelf for shelf in app.Components if shelf.getProperty("Tiers") and shelf.getProperty("Bays")]
    cells = sum([shelf.Tiers * shelf.Bays for shelf in shelfs])
    containers = [shelf.findBehavioursByType(VC_COMPONENTCONTAINER)[0] for shelf in shelfs]
    partsCount = sum([container.ComponentCount for container in containers])
    print "Average Utilization: %.2f %" % ((partsCount / cells) * 100.0)
    # You can assign to a property, then let statistics show it


Thank you very much, but I haven’t had any contact with scripts in VC yet.
Where do I have to save it, how do I load it in?

i`ve added the python concole from the add on store? is this right?

You can create a component, create a PythonScript for it, then you would need Professional or Premium version. Anyway, here is the updated file, by the way, the data update for every second, but your feed speed is too fast, so I slow down the feed speed.

Warehouse_example_v2.vcmx (626.6 KB)

1 Like

Ok, I didn’t know that Python only works with Professional and premium.

Thank you for your version, unfortunately it doesn’t work for me.
I am using VC 4.5 Essentials, I thought there might be a solution within the statistics dashboard directly.

Your file shows the following errors in my VC:

Traceback (most recent call last):
File “Warehouse Shelf #14::Buffer”, line 52, in OnStatementExecute
File “Warehouse Shelf #14::Buffer”, line 260, in create_transport_items
NameError: Attribute or method ‘AcceptAllProductTypes’ not found.
Warehouse Shelf #14::ProcessExecutor__HIDE__ Error: The processes in this executor are not consuming simulation time, causing the simulation to hang. Stop the executor.
Warehouse Shelf::ProcessExecutor__HIDE__ Error: The processes in this executor are not consuming simulation time, causing the simulation to hang. Stop the executor.

Python works with all versions, but you could create a new component or create a new python script when you’re using Professional or Premium version. The error message is from PM system, I am using 4.8, so 4.5 load 4.8 would cause error, but it’s from PM. You can just load his component.

AverageUtilization.vcmx (26.3 KB)

1 Like

All right, thank you very much so far.

So I load your component into my layout and then connect it to the statistics dashboard?

Check the component, there is a property AverageUtilization, that property shows the average utilization.

1 Like

Yes perfect, it works.
I still think it’s a sad thing that VC doesn’t directly offer the option of connecting storage shelves or merging areas statistically.

You can make a requests to VC, let VC knows about it, when many users request the same feature, I think it will be on the table.