This is similar to Using If precondition is false, continue iterating next input in ModelBuilder? but I want the iterate tool to run to collect all the values and only then continue to the merge. Any ideas? Currently it just runs the whole process for each file (which works but takes much longer than if the merge is done only once) or I have to manually break the collect-merge link, run the iterate, reconnect the collect-merge link and then continue running the model which is a pain as it is a lot of towers that need processing and this collect values-finish getting all values and then continue will be required in other models as well.

enter image description here

I tried the "Select Data" tool as well but this doesn't allow for wildcard searches like the Iterate does -my Iterate has the "_Graded*" as the search param as the gdb included many other files related to each tower chunk.

My STOP is set to "True" (tried false as well). I also tried to connect the Stop to the Iterate instead of Collect values but same result.


I just created a python tool for this and it collects all the values but it passes them back to the model as a long list -how can I get it to output in a proper format?

    import sys, os, arcpy



arcpy.env.workspace = GDB
for item in arcpy.ListFeatureClasses('*'+Search+'*',Type):
    #arcpy.SetParameterAsText(3, item)

arcpy.SetParameterAsText(3, List)
arcpy.AddMessage("List: "+str(List))

enter image description here

enter image description here


1 Answer 1


You need to create a submodel and connect that to the Merge tool. For example:

The submodel (SubModel1)

enter image description here

The full model

enter image description here

Your Answer

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

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