ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / ParcelFabricExtensions Class / SetActiveRecordAsync Method / SetActiveRecordAsync(ParcelLayer,Int64) Method
The parcel layer.
The object Id of the parcel record feature to be set as the current record.
Example Version

SetActiveRecordAsync(ParcelLayer,Int64) Method
Sets the active record.
Syntax
public static Task<bool> SetActiveRecordAsync( 
   ParcelLayer parcelLayer,
   long oid
)

Parameters

parcelLayer
The parcel layer.
oid
The object Id of the parcel record feature to be set as the current record.

Return Value

A Task to a bool indicating if the active record is set.
Exceptions
ExceptionDescription
Insufficient license. This method requires a standard license.
Remarks
All clients, including the parcel heads-up-display on the active map, will be notified and use the values given. Values for the parcel record must be set correctly to match the underlying data.
Example
Create a new record
string errorMessage = await QueuedTask.Run(async () =>
{
  Dictionary<string, object> RecordAttributes = new Dictionary<string, object>();
  string sNewRecord = "MyRecordName";
  try
  {
    var myParcelFabricLayer = MapView.Active.Map.GetLayersAsFlattenedList().OfType<ParcelLayer>().FirstOrDefault();
    //if there is no fabric in the map then bail
    if (myParcelFabricLayer == null)
      return "There is no fabric in the map.";
    var recordsLayer = await myParcelFabricLayer.GetRecordsLayerAsync();
    var editOper = new EditOperation()
    {
      Name = "Create Parcel Fabric Record",
      ProgressMessage = "Create Parcel Fabric Record...",
      ShowModalMessageAfterFailure = true,
      SelectNewFeatures = false,
      SelectModifiedFeatures = false
    };
    RecordAttributes.Add("Name", sNewRecord);
    var editRowToken = editOper.Create(recordsLayer.FirstOrDefault(), RecordAttributes);
    if (!editOper.Execute())
      return editOper.ErrorMessage;

    var defOID = -1;
    var lOid = editRowToken.ObjectID.HasValue ? editRowToken.ObjectID.Value : defOID;
    await myParcelFabricLayer.SetActiveRecordAsync(lOid);
  }
  catch (Exception ex)
  {
    return ex.Message;
  }
  return "";
});
if (!string.IsNullOrEmpty(errorMessage))
  MessageBox.Show(errorMessage, "Create New Record.");
Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also