question

Christian R. Houen avatar image
0 Likes"
Christian R. Houen asked Joerg Vogel commented

What's your best practice for extracting data for business intelligence?

I recently started using FlexSim as a working tool and I am currently exploring the best options for extracting data from large models. Currently, we have a few models of production facilities and I would like to extract data to visualize (potential) bottlenecks.

The way I thought of doing so, is:
1. for certain parts of the production lines (the ones that have a temporary storage) measure input and output per hour.

2. for Machinery, measure the State (Idle, working, Blocked) of the machinery in time.

3. For parts of the production line that do not have temporary storage measure thoughput time for illustration.

If you have any additions I would love for this to be a thread of thought and idea sharing. You don't necessarily need to have thoughts on more things to measure, but could also be a smart way to extract this data.

Hope to hear from you all.

Kind regards,

FlexSim 18.0.0
material flow model with different consumption rates of individual models but running on the same linebusiness intel
· 1
5 |100000

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

Joerg Vogel avatar image Joerg Vogel commented ·

It is a good idea to think about the data you want to gather before you start building large models. There are situations where you have to build zones or variables that collect data which haven't got any impact on your material flow. Or you see that the data you want to get needs a totally different model.

As a simple example there exists the utilization of a repair staff group. The group is responsible for a certain number of stations if they go into the state of a breakdown to fix the station. You can build all stations processing flowitems and let them change their state by statistical distributions and send operators to those processors in the case of oa breakdown. Or you let flowitems stands for the state going into a breakdown and let processors do the repairs on the tasks. Then stands each processor for a member of the repair group. The model looks visually different to the reality but you get the data much more faster. You must not build a 3D model at all, you build only a process flow.

A large 3D model would only be the animation of an easy question.

Sometimes you can visualize bottlenecks if you place queues parallel to objects in your material flow. Naturally you would check the content of the objects participating in the flow. A parallel placed queue would get content when there isn't any capacity left on the object in your model. If you want to know when a the process starts to get blocked you looks for the rise of the content in the queues. When you want to see the standard material flow, you stop or close the input of the additional parallel queues.

1 Like 1 ·

1 Answer

Jordan Johnson avatar image
1 Like"
Jordan Johnson answered

Basically, the best approach is to gather the data into either a Global Table, a Statistics Collector, or a Calculated Table. Once the data is in any of these three tools, you can use the exporttable() command to create a CSV file of the data they contain. The Statistics Collector and Calculated Table both have an "Export Table" button that will use the exporttable() command for you.

I would recommend exploring the Chart Templates. They may provide any easy interface for measuring what you want to measure. At the core, a Chart Template is really just a Statistics Collector or a Calculated Table. Once you have configured a Chart Template to produce the data/chart you want, you can "install" the template into your model, which reveals the Statistics Collector or Calculated Table in your Toolbox. From there, you can use the exporttable() command to get the data out.

We also have an API for connecting to Excel. The Excel tool can export Global Tables directly to an Excel sheet. You could also use the excel API to export data from a Statistics Collector or Calculated Table.

We also have script APIs for connecting to databases or sockets. If you are open to writing some scripts, you can have FlexSim send data directly, rather than dumping to a file.

If none of those options are quite what you're looking for, you can also write a C++ dll, and export data in any way that suits you from there.

If you know what tables you want to export, but need help configuring the export, or writing custom scripts, feel free to post another question. You can mark that question private if you only want to share it with us here at FlexSim.

5 |100000

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