com.esri.arcgis.geodatabasedistributed
Interface ITableDataChangesInfo

All Superinterfaces:
Serializable
All Known Implementing Classes:
TableDataChangesInfo

public interface ITableDataChangesInfo
extends Serializable

Provides access to members that initialize a TableDataChanges object.

Remarks

The ITableDataChangesInfo interface provides methods to define edits to be applied to a target feature class or table. See the TablesDataChangesInfo coclass for more information.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 void getDeletedIDs(ILongArray[] deletedIDs, IStringArray[] deletedGIDs)
          The deleted ids.
 ITable getDeletes()
          The delete changes table.
 IQueryFilter getFilter(int changeType)
          The filter for the inserts table.
 ITable getInserts()
          The insert changes table.
 String getTargetName()
          The changes target name.
 ITable getUpdates()
          The updates changes table.
 void init(String targetName, ITable inserts, ITable updates, ITable deletes)
          Initializes the class by setting the inserts, updates, and deletes table.
 void setDeletedIDs(ILongArray deletedIDs, IStringArray deletedGIDs)
          The deleted ids.
 void setFilter(int changeType, IQueryFilter filter)
          The filter for the inserts table.
 

Method Detail

init

void init(String targetName,
          ITable inserts,
          ITable updates,
          ITable deletes)
          throws IOException,
                 AutomationException
Initializes the class by setting the inserts, updates, and deletes table.

Remarks

This method is used to initialize the TableDataChangesInfo coclass. This method defines edits based on geodatabase feature classes and tables. The TableDataChangesInfo coclass is used in conjunction with the TablesDataChanges coclass to define a delta file which contains edits. See DataChangesExporter for information on delta files.

The Init method takes the name of the target feature class or table, and up to 3 tables that define the inserts, updates, and deletes.

The TargetName is the string name of the feature class or table that will receive the changes. For example if you want to define edits to the "Buildings" feature class, the value for this parameter would be "Buildings".

The edits to be applied can be specified using geodatabase feature classes or tables.

The Inserts parameter is a table that contains all the inserted records to be applied. If there are no inserts to be applied, you may pass nothing for this parameter.

The Updates paramter is a table that contains all the updates to be applied. If there are no inserts to be applied, you may pass nothing for this parameter.

The Deletes parameter is a table that conatins all the deletes to be applied. Nothing may be passed if there are no deletes specified in a table. Alternatively, IDs to be deleted may also be set using the SetDeletedIDs property after calling the Init method.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
targetName - The targetName (in)
inserts - A reference to a com.esri.arcgis.geodatabase.ITable (in)
updates - A reference to a com.esri.arcgis.geodatabase.ITable (in)
deletes - A reference to a com.esri.arcgis.geodatabase.ITable (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setFilter

void setFilter(int changeType,
               IQueryFilter filter)
               throws IOException,
                      AutomationException
The filter for the inserts table.

Remarks

The SetFilter method allows you to specify a query filter to be applied to the edits specified for the TableDataChangesInfo object. The edits that will be filtered are those specified in the Init method and also any deleted records specified with the SetDeletedIDs method.

The changeType parameter takes a member of the esriDataChangeType enumeration to determine whether the filter will be applied to the updates, inserts, or deletes. The Filter takes a reference to a QueryFilter which defines the filter to be applied to the change type specified by the changeType parameter.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
changeType - A com.esri.arcgis.geodatabasedistributed.esriDataChangeType constant (in)
filter - A reference to a com.esri.arcgis.geodatabase.IQueryFilter (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFilter

IQueryFilter getFilter(int changeType)
                       throws IOException,
                              AutomationException
The filter for the inserts table.

Remarks

This method returns the filter, if any, that was set for the specified data change type. See the SetFilter method for more information.

The changeType parameter takes a member of the esriDataChangeType enumeration to determine which filter will be returned.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
changeType - A com.esri.arcgis.geodatabasedistributed.esriDataChangeType constant (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IQueryFilter
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTargetName

String getTargetName()
                     throws IOException,
                            AutomationException
The changes target name.

Remarks

Returns the string name for the feature class or table that is the target of the changes. This is the target name that was set with the ITableDataChangesInfo::Init method.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The targetName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getInserts

ITable getInserts()
                  throws IOException,
                         AutomationException
The insert changes table.

Remarks

Returns a reference to an object that implements ITable. This table contains all the inserts that were defined (if any) when the TableDataChangesInfo object was initialized. See the ITableDataChangesInfo::Init method for more information.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A reference to a com.esri.arcgis.geodatabase.ITable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getUpdates

ITable getUpdates()
                  throws IOException,
                         AutomationException
The updates changes table.

Remarks

Returns a reference to an object that implements ITable. This table contains all the updates that were defined (if any) when the TableDataChangesInfo object was initialized. See the ITableDataChangesInfo::Init method for more information.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A reference to a com.esri.arcgis.geodatabase.ITable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDeletes

ITable getDeletes()
                  throws IOException,
                         AutomationException
The delete changes table.

Remarks

Returns a reference to an object that implements ITable. This table contains all the deletes that are defined (if any) on the TableDataChangesInfo object. See the Init and SetDeletedIDs methods for more information on how deletes can be defined.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A reference to a com.esri.arcgis.geodatabase.ITable
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDeletedIDs

void setDeletedIDs(ILongArray deletedIDs,
                   IStringArray deletedGIDs)
                   throws IOException,
                          AutomationException
The deleted ids.

Remarks

The SetDeletedIDs method is a way to define the deletes based on an array of IDs and/or GlobalIDs.

Before using this method, the TableDataChangesInfo coclass must be initialized with the ITableDataChangesInfo::Init method, otherwise an error will be returned.

If the deletes are specified using the SetDeletedIDs method, any deletes previously defined by a table using the Init method will be ignored. The source of deletes may only come from either the Init method, or the SetDeletedIDs method.

The DeletedIDs parameter takes a long array of IDs of the records to delete.

The DeletedGIDs parameter takes a string array of Global ID values for the records to delete.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
deletedIDs - A reference to a com.esri.arcgis.system.ILongArray (in)
deletedGIDs - A reference to a com.esri.arcgis.system.IStringArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDeletedIDs

void getDeletedIDs(ILongArray[] deletedIDs,
                   IStringArray[] deletedGIDs)
                   throws IOException,
                          AutomationException
The deleted ids.

Remarks

This method can be used to return a list of IDs and/or Global IDs corresponding to those that were set to be deleted with the SetDeletedIDs method.

The GetDeletedIDs method takes an empty long array (DeletedIDs parameter) and/or an empty string array (DeletedGIDs parameter). These arrays will be populated, respectively, with the IDs and the global IDs of the records to delete.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
deletedIDs - A reference to a com.esri.arcgis.system.ILongArray (out: use single element array)
deletedGIDs - A reference to a com.esri.arcgis.system.IStringArray (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.