Jump to content
Simio Forum


  • Content Count

  • Joined

  • Last visited

  • Days Won


DHouck last won the day on August 22

DHouck had the most liked content!

Community Reputation

1 Neutral


About DHouck

  • Rank
    Senior Software Developer
  • Birthday February 20


    Senior Software Developer

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. This Design-Time Add-In allows the user to create a directed graph diagram from a Simio Sequence Table (for example, routing). It employs MSAGL to create graphs that can be examined, exported (to JPEG or SVG), or printed. Two videos are included to (1) explain the usage and (2) to explain the code. package-runtime.zip package-code.zip SimioGraphSequenceAddIn-Video1.mp4 SimioGraphSequenceAddIn-Video2.mp4
  2. DHouck

    Simio Drawing Exchange - Visio

    Hi Jeff. I'm looking at it. I'll try and split it into smaller files. Give me a day. Thanks... - dan
  3. SimioVisio.mp4 Simio is developing a common exchange mechanism for importing drawings from Visio and other apps. This Topic describes how drawings are imported from Visio (.VSDX files; Visio 2013 or later). This is a run-time release (with code to soon follow). It has a *lot* of bug fixes, plus the addition of a preview tab in the Visio2018 Add-In. The included video has been updated along with the addition of a source-code package. Contained are: 1. A document that describes the procedure and the architecture. 2. A simple example which includes an Add-In (VisioAddIn2018) that imports Visio files (package-runtime.zip) 3. Stencils to use for creating Visio documents for importing to a Simio Facility view. 4. All Source code (package-code.zip) 5. Short video on how to edit Visio stencils package-runtime.zip package-code.zip VisioStencils.mp4
  4. DHouck

    Help integrating simio step with python

    Hi Faunooo, Please take a look at this link to StackOverflow. It sounds exactly what you are experiencing. Let me know if this does not fix the issue, or if you have questions about what it is describing. https://stackoverflow.com/questions/3902059/calling-ironpython-object-from-c-sharp-with-mono - Dan
  5. Another technique that might be useful is described in the API Forum: Entity Data Handling - Using the API to allow complex data, logic, and long-running I/O operations Basically, it shows how you can Associate any amount or type of data with any Entity. It does by recognizing the fact that each Entity in a simulation has a unique name, and also using the Singleton pattern to create a block of memory that is available to all run-time steps. - Dan
  6. Hi Benjamin, I apologize for taking so long to get back to you, but the fact of the matter is that I have not found a good solution yet. Apparently, this is not something Mathworks gives a very high priority. At this point, I think the simplest (but kludgy) solution would be to call a MathWorks executable (MEX?) that outputs the result to files or database, and then set up polling/FileWatch to wait for these results. I haven't given up, but I just don't have the time to properly pursue this. If you even find a hint of an answer, let me know and I'll help you implement/try it out. - Dan
  7. DHouck

    get data from SQL server

    Yes, it is possible. To give you a better answer, can you describe a bit about how you would use the data? For example, what type of data and what would it be changing?
  8. DHouck

    Simio API Helper

    Hi jzhou, I have just re-posted with two new packages: one with source, and the other without. Cheers, Dan
  9. Hi Benjamin, I think, my friend, that we have come to a (hopefully temporary) dead end. Simio does not use COM (which is what the CLSID is) so I suspect there is a missing file on the Matlab side of things. I cannot test it here, since we do not possess a MatLab license. My recommendation is to find another way (a more recent way) to interface with MatLab, preferably with a .NET DLL and the source code. If either of us can find such a thing, I can help you with the interface. I have sent a request to MatLab to see if they will send a trial copy for helping with these interface issues. At this point it appears that they will, so I will keep you posted on what I find. - Dan
  10. Hi Benjamin, Question: where did you get this CallMatlab.dll file, and what is its date? Also, do you have the source for it? - Dan
  11. DHouck

    Simio API Helper

    We have built (and attached here) a Simio API Helper to help resolve issues when building user defined steps and add-ins. It is a simple EXE that should locate the Simio folders and allow you to examine the DLLs. It will likely not solve problems that you encounter, but should help us reduce the number of variables. Refer to the included PDF file for basic instructions. Update: I have updated with two new packages: one with source, the other without. - Dan SimioApiHelper Package.zip SimioApiHelper Package - WithSource.zip SimioApiHelper Package.zip
  12. Hi Benjamin, You should not create that entry in the registry. It (that long class id that is called a "GUID") is really a reference to a class that your program cannot find (and hence the error). Leaving that manually-created number in your registry will only cause havoc. So, find that fellow in the registry that you created and delete it (always be extra careful when mucking around in the registry). And then: yes, definitely get the 32 bit DLL from Matlab and replace the 64 bit version that you have in your SimioUserExtension folder, and keep me posted. Also, send me a screenshot of where you make the call to the MatLab function. And finally, I am about to post (within the hour) a utility up here (on the API Forum) that you can run and get information about DLLs (you aren't the first, or last, to have DLL issues - Dan
  13. Hi Benjamin, From the dump, it looks like a security/licensing/missing DLL/32-64 bit issue with Simio calling your Matlab. So, a few thoughts (you may already have done these) 1. Make sure your DLL is the same wordsize as your Matlab (32 vs 64 bit). 2. Check your registry for the missing component (the CLSID {8E2104BA-0c2a...}). Perhaps this will give you some clues. Here is a post in StackOverflow that may help: https://stackoverflow.com/questions/7197506/how-to-repair-comexception-error-80040154 3. Try to write a small test console program that interfaces to your Matlab DLL. Make sure that your test program runs against the DLL in the same folder that Simio uses (e.g. your Users > {user} > Documents > SimioUserExtensions). 4. If this doesn't work, check that you have the correct files and licensing for Matlab. For example, sometimes DLLs look for a license file in the same folder from which they run. Or sometimes they require other Dlls to be in the same folder. There is a website for Matlab that describes similar issues. For example, here is a link to an article on runtime Matlab files: http://www.mathworks.com/help/compiler/magic-square-example-c-c-developer-tasks.html?searchHighlight=using%20the%20matlab%20DLL&s_tid=doc_srchtitle Please let me know what you find, or if you need more assistance. Thanks, Dan
  14. DHouck

    Passing Expression to Custom Step

    So, one way to do this is to have an Assign step ahead of your Custom step and assign your expression to a State variable (say, StringState1) (so it is evaluated). Then, your custom step can define a reference to that State variable (say MyStateVariable) , and retrieve the result: IStateProperty _stateProperty = (IStateProperty) _properties.GetProperty("MyStateVariable"); IState _state = (IState)_stateProperty.GetState(context); // Or do it all at once _state = (IState)((IStateProperty)_properties.GetProperty("MyStateVariable")).GetState(context); I'm still looking for a more direct way to do this. - Dan
  15. DHouck

    Passing Expression to Custom Step

    Excellent question. May I ask for your specific example (e.g. the type of object and the expression that is being evaluated), and I will investigate. Thanks.