I have created three modelbuilder tools that must be run in sequence. After running each tool, the user must examine several shapefiles and potentially change the input parameters of the next tool.

Each tool works fine, but I am unsure what the best method is to pass variables between tools.

I tried combining the tools as nested models, but could not figure out how to get user input and change model parameters after each submodel runs.

I also tried combining the tools into one python script. The input window popped up for the first tool, I set the parameters, and it ran, but the second tool did not run. No error code was returned so I do not know why the script did not finish running.

I am considering creating an intermediate table in the scratch workspace and using it as an array. Is this the only way to pass variables between tools in modelbuilder if I need user input after running each tool?

  • I think you should break this question into two parts because, while I think passing variables between tools is not too hard, I think the other part of accepting user input while a model runs is not possible. For that you may need to get into Python and tkinter to do something like this: gis.stackexchange.com/questions/59328/…
    – PolyGeo
    Sep 25 '14 at 6:10
  • Thanks for your comment. I"m thinking about how to rephrase my question and am trying to implement my tools with tkinter.
    – jgm_GIS
    Sep 25 '14 at 21:57