Select to view content in your preferred language

Force batch to run processes sequentially

7028
18
10-24-2010 07:28 PM
JonathanBailey
Frequent Contributor

I have a model that I wish to run in a batch process. Within this model, I join an input table to another table, then calculate a value in the input table.

When running this model a single time, it works correctly. I can calculate the field value in the input table using the expression [%Join Table%].FieldName.

However, when I run this model in a batch process, it seems that each instance of the model is run in parallel, so that multiple joins are performed on the input table at the same time. As a result, I can't be sure of the names of the fields in the join table, and so the batch process fails.

Is there any way to force a batch to run each instance separately?

Thanks,

Jon.

18 Replies
LukeWebb
Frequent Contributor
I am still very interested in this topic! I would love to be able to choose every parameter in my model and run it in batch - sequentially!

The problem has been well described above, I dont have the model or time to hand but I describe a very simple model in this post with the same problem: http://forums.arcgis.com/threads/31135-ModelBuilder-in-Batch, it is easy to reproduce.

The problem with multivalue iterators is, unless I am mistaken, they only let you modify one model parameter per model iteration. The batch dialog lets you specify a different value for every model parameter for each iteration. What I need is the ability to specify each model parameter differently per iteration like with the batch dialog, but force the processes within the model to run sequentially like with an iterator.

Is there a way to get the best of both worlds (other than the aforementioned -- write a Python script to call the model)?
GraemeBrowning
Frequent Contributor
I've just encountered what I believe to be the same issue over at Stack Exchange GIS so I can confirm that it is still happening at ArcGIS 10.1.

Has anybody seen a bug number assigned to the issue?

If anyone from the Analysis and Geoprocessing team needs a simple test case that demonstrates this just let me know and I can email it.

- Graeme
0 Kudos
LukeWebb
Frequent Contributor
Still not happy with this feature!!!! Why cant my users use the batch window for my models like they can for every other tool!!!!!


I would be satisfied if ESRI can either:

Explain simply to me why it works like this?? And when it could possibly be useful so that I can try and implement this feature?

OR

Aknowledge and Fix the bad design.

Please??
RustyRex
Frequent Contributor
This is a major bummer.  I have no idea why a model in batch would behave this way.  It pretty much put the tool I was creating in a dead end.  Does anyone know if a script tool in batch behaves the same way?
0 Kudos
RHirner
Deactivated User
Still present in ArcGIS 10.2 �?�
0 Kudos
JohnDavies1
Deactivated User

Wow! I've been having this problem too!  So aggravating!  I'm running 10.2.2.  I guess this is still an issue, not workarounds yet?

0 Kudos
Osvaldo_JoséRibeiro_Pereira
Deactivated User

It seams that this discussion keeps going on without any solution. I've been having the same problem wit ArcGIS 10.3 and it would be really hard to use interactors given the size of my model. Any solution? Export Graphic.png

0 Kudos
curtvprice
MVP Esteemed Contributor

This is a long time issue with Model Builder​. I'm sure it has something to do with how Batch and Model Builder work or it would have been fixed.

I have found a workaround... create a Python script tool that calls the model, and batch that.

See: Re: Model Builder + Batch Creator do not work together​  for an example.

0 Kudos
OsvaldoJosé_Pereira
Deactivated User

I found a quite simple solution for this problem. You just have to follow three steps when building you rmodel and it will work perfectly. 1.) You have to create a Geodatabase (don't use the default geodatabase from ArcGIS). I've created one in the same folder named "Scratch"; 2.) You need to set all of your output data as non-intermediaries, cause they need to be saved in order to run the model; 3.) Finally, when defining the output of each operation in model builder you have to use the sentence %i%. This is useful to say the mode that it should generate individual intermediate data to each Input of my batch list. For example, if I have a map algebra operator in my model, I should set the name of the output data as Raster_Decli%i%. As a result I would have Raster_Decli0, Raster_Decli1, Raster_Decli2 (...).

0 Kudos