I need to transfer data from source layer to target layer, but the source layer and target layer schema is different, field name is different. As you can see from below screen.
Option 1. create a new empty layer but with same schema as target layer, then use append tool, mapping the fields, to transfer data.
Option 1.1
Option 1.2
Option 1.3 I want to copy all field name from existing last time old point layer, so I click import, to import all fields from old layer
Option 1.4
Option 2. use append tool, mapping all fields, to transfer data.
Option 2.1 open append tool, must manually mapping field, for example, incident year
Option 2.2 run into error, fix error, run again
The error is field unit response in city, in source, it is string, yes or no, however, in target table, it is interger type, 1 or 0. Warning, it actually using BooleanDomain, yes, for 1, no for 0.This is tricky part.
Option 2.3 Target table use domain, 1 for yes, 0 for no, domain field is short integer. However in source table, it is string text field, with just YES, NO. My idea is in source table to create extra column, translate from YES to 1, NO to 0. Use calculate field function. Use python inline code is here:
use Arcade, recommend because you can do YES, NO at 1 time,
if ($feature.Unit_Response_in_City_ == "YES"){
return 1
} else if ($feature.Unit_Response_in_City_ == "NO"){
return 0;
}
Option 2.4 re-run append tool, re-map those 2 domain fields to new created column which translate YES, NO into 1,0. This fixed the error.
Option 2.5 this warning is fine, I can ignore it. It just complaining insert empty string into a Date type field. Instead insert a empty string, it just insert null, the other fields convert to date value correctly.
Option 2.6 successfully done the schema transfer
Option 3. Save the append tool, will save all fields mapping. Next time re-open arcgis pro, click analysis tab on top, click history, re-open this append tool, you don't have to re-mapping all 30 fields again, just reset the source layer, click run