I have a model within a model. Each model has an iterator. The sub model has a iterate feature class instance and the main model has an iterate row selection. I need for each feature class a field calculated based on the individual polygon locations within the area of the selected row.

I have tried to pass the sub model to a Collect Values tool and use that as a parameter for the main model but "make feature layer" does not allow that as an input.

How do I get each instance of the iterate sub model into the make feature layer command to create my selection?

enter image description here

I will elaborate a bit about what is happening in the proxy_background that is causing me trouble before I try the suggestions. The iterate inside of the sub-model is running completely before passing each individual feature class to the main model. Essentially, if my file location has 20 feature classes, it iterates 20 times, not once, before it moves to the main model. This is why I put the Collect Values tool thinking I will at least have the paths to move forward. Alas, it did not want to connect to my main model.


2 Answers 2


You can run the output of the Proxy_Background through the copy features tool with the output called in_memory\temp then connect it to your make feature layer tool.


If you want your feature class from your sub model to connect to the Make Feature Layer tool just drop the Collect values tool and expose the MKey_MUL3 output as a parameter in your sub model. Then that should connect in the master model.

  • This is how I originally had my model when i found out it doesn't work. See above edit to my question.
    – D_C
    Nov 25, 2014 at 15:36
  • Ha well in that case your proxy model should be the master model and the other should be the sub-model. Make sure you expose make feature layer as a parameter so you can connect to it.
    – Hornbydd
    Nov 25, 2014 at 21:53
  • Hmmm, I will have to think on that one. Will let you know how it goes. Thanks
    – D_C
    Nov 26, 2014 at 19:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.