ArcGIS Pro: Add Multi - field Batch Geoprocessing ability such as in ArcGIS Desktop

2154
7
09-16-2018 10:50 PM
Status: Open
Labels (1)
RTPL_AU
New Contributor III

In ArcGIS Desktop (Map & Catalog) you can right click on a geoprocessing tool and select "Batch"

This allows you to run the same tool with multiple custom inputs & outputs, parameters, etc. and even use FILL to autocomplete fields with similar parameters.

There is a Batch option in Pro but it does not replicate the existing functionality.

There are a few new options but most of old functionality is lost.

A good example is importing multiple Domains using multiple input tables as well as / or a table with multiple columns defining Domians into one or more FGDB.

Using a Batched version of the Desktop "Table to Domain" tool you can use DRAG & DROP or COPY & PASTE to add multiple Input Tables, add non-standard Code/Description Fields, expand rows with FILL, customize a few DOMAINS and then run the tool.

This does not appear to be possible to do in Pro.

7 Comments
MattNash

Right, also being to specify separate outputs for each input in a batch tool, as in batch clip in ArcMap.  

GrantSmith

Definitely hoping Pro came integrate this process. I commonly use this practice in ArcCatalog/Map to batch the Feature Compare tool to compare "old" versions of data to "new" versions and detect changes between them (row counts, attribution changes, etc.).

DrewFlater

If you need to have multiple parameters be different in the batch operation, I suggest to simply use the normal version of the tool, and use the geoprocessing queuing system to accomplish running this sequence of operations. Since you are modifying multiple sets it does not seem like there is much to be gained by interacting with a grid of parameters vs the tool dialog.

Grant Smith‌ brought up a case of picking multiple pairs of base feature and compare feature. In the normal Feature Compare tool, select a base, select a comparison layer, name the output, click Run, and immediately repeat to add the next tool to run when the first one finishes. The parameters from the first one are maintained so if only one or a few things need to be changed that can be done efficiently (similarly to "filling" a batch column in the ArcMap batch grid). 

RTPL_AU

Hi Drew,
The suggestion is akin to me suggesting Esri should license music from Otis or KONE to play while using Pro in order to distract users from the delays while trying to get work done. :)

There are many ways to accomplish tasks in Pro that result in the same outcome as with Desktop/Map/Catalog. The aspect of step execution time however, seems to not feature high in the KPIs of the developers & UI/UX designers. 

The simple tabular view of the batch process allows you to easily and quickly set up a task with the ability to visually adapt individual rows after auto filling the entire stack. Accomplishing the same outcome in Pro requires a linear workflow without most of the concurrent setup optimisations possible in a Batch. 
Yes, the execution is run linearly but you can move on to other things in ArcMap while it is executing in Catalog......

Again - Yes, I know you can have multiple instances of Pro open but it sill does not match having a few Catalogs and a handful of ArcMaps open without having to choose projects & favourites every time you run it.. 

This idea does not matter as much in a GIS "factory assembly line" where you can have to automate and code work segments but affects us that work in a task & data-random bureau service or consultancy where time counts. 

However, if you then need to run the batch task multiple times the tabular batch view (to me) makes it easier to progress to Model Builder as I can see the various inputs & outputs in one view 

OliviaDeSimone

I agree that the tabular functionality of batch tools in ArcMap was fantastic -- particularly the fill functionality.

In my case, I'm trying to add multiple fields to a feature class, normally a pretty simile task.  In Pro, it looks like they added a new tool call Add Fields (plural) which is what you are supposed to use to add multiple fields to a feature class.  It is a huge pain.  Most the fields I am adding are the same length and use the same domain, but for each field, I have to manually enter the length and the domain whereas in the old batch functionality of ArcMap, I would have just been able to use fill.

I initially tried using batch on the Add Field tool before I noticed the new Add Fields tool.  I was able to add fields of multiple names, but the batch tool only accepted one set of parameters, so I ended up with differently named fields that all had the same alias, field type, domain, etc.  I don't even see why that's an option.  It seems like batch Add Field did not support the same functionality it did in ArcMap, so they created Add Fields as an ulterior option, but it is still insufficient compared to the functionality offered in ArcMap.

It seems like Esri shifted the focus of batch tools towards doing the same thing or nearly the same thing on multiple input datasets -- but what about when you want to execute the same tool on the same dataset multiple times with different parameters?  Furthermore, even with that functionality in place, as we have in the Add Fields tool, we don't have the same auto-fill functionality that made batch tools in ArcMap so easy.

Below is the picture of the issue.

Another particularly annoying feature of the Add Fields tool is that you can't add multiple blank fields -- you can only do one at a time, so you have to scroll to the top time every time you need to add a new field to hit the plus button and then scroll back down to fill in the field information.  Rinse and repeat.  Ten times.  You can click the plus button multiple times to  add multiple fields, but then it just deletes the extras once you start entering the parameters of the first blank field.  You were definitely able to add multiple rows to the batch tool table in ArcMap, and it was less difficult in the first place because all the information for your batch tool runs was laid out right in front of you in the batch tool table.

An image of ArcGIS Pro

AdamEversole1

Hello All,

We had a issue come up in support similar to this conversations about using the "Iterate Multivalue" model builder tool. Essentially, For the input it's best practice to create a variable and apply the multiple values option. This allows a single input to be a variety of data types, like a Featureclass/Layer/Featurelayer ect. The other option when creating a variable is a Table of Values: unfortunately Its not suggested, but it looks very similar to the batch interface we use in ArcMap. Support logged this enhancement to allow this model builder: 

ENH-000133415 : Allow variables created with a Table of values to be used in  Iterate Multivalue model builder tool.

My hope is this helps in the discussion and if you like this idea please feel free to also Contact Support and we can get your account attached to this request.

Cheers,

Adam

Esri Support

Oliver_Burdekin

@AdamEversole1I've been trying the multivalue approach as well as the table of values. I cannot find any reference to "table of values" in the documentation and have not had any success with this.

Using the buffer tool as an example I've created a multivalue variable for input layers and created a batch tool on the distance parameter.
%Value% = layer name
%Name%=distance (e.g. '1000_meters')

With the following settings the batch tool runs but only for the first distance setting. 

Oliver_Burdekin_0-1613476123924.png

 

The outputs from this are

Test_Rivers_1000_meters

Test_Roads_1000_meters

I could not find the support ticket ENH-000133415 through searching support but have emailed to attach my account to this ticket.