Available with Business Analyst license.
Summary
Assigns customers to stores based on an existing store ID field in the customer table.
Usage
If you already have a field in your layer that contains the assignment of a store ID to each customer, this method alerts Business Analyst to make use of that field for the assignment.
This tool can be used if you have coded each customer record in the database based on the store they actually visited.
When assigning customers by ID, the assignment can be alphanumeric or numeric.
Syntax
AssignCustomersByID(CustomerLayer, LinkField, {CreateNewFeatureClass}, {OutputFeatureClass})
Parameter | Explanation | Data Type |
CustomerLayer | The customer layer used to make the customer assignments to each store. | Feature Layer |
LinkField | The store ID field that will be used to assign customers. | Field |
CreateNewFeatureClass (Optional) | Generates a new feature class based on the existing layer or uses the existing layer.
| Boolean |
OutputFeatureClass (Optional) | The feature class that will contain the customer features. | Feature Class |
Code sample
AssignCustomersByID example (stand-alone script)
# Name: AssignCustomersByID.py
# Description: Assigns customers in the San Francisco area to their designated store by a corresponding ID field in both layers.
# Author: Esri
# Import system modules
import arcview
import arcpy
arcpy.ImportToolbox(r"C:\Program Files (x86)\ArcGIS\Desktop10.8\Business Analyst\ArcToolbox\Toolboxes\Business Analyst Tools.tbx")
try:
# Acquire extension license
arcpy.CheckOutExtension("Business")
# Defines the parameters for the Assign Customers by ID tool
CustPath = "C:/temp/sf_cust.shp"
StoreId = "STORE_ID"
CreateFC = "false"
# Assign Customers by ID
arcpy.AssignCustomersByID_ba(CustPath,
StoreId,
CreateFC)
# Release extension license
arcpy.CheckInExtension("Business")
except:
print arcpy.GetMessages(2)
Environments
This tool does not use any geoprocessing environments.
Licensing information
- Basic: Requires Business Analyst
- Standard: Requires Business Analyst
- Advanced: Requires Business Analyst