|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.esri.arcgis.interop.Dispatch com.esri.arcgis.geodatabase.IRelQueryTableInfoProxy
public class IRelQueryTableInfoProxy
Provides access to members that provide information about joins.
The IRelQueryTableInfo interface provides properties and methods that return information about a RelQueryTable after it has been created.
Field Summary | |
---|---|
boolean |
noncastable
|
Fields inherited from class com.esri.arcgis.interop.Dispatch |
---|
DISPATCH_METHOD, DISPATCH_PROPERTYGET, DISPATCH_PROPERTYPUT, DISPATCH_PROPERTYPUTREF, objRef |
Constructor Summary | |
---|---|
|
IRelQueryTableInfoProxy()
|
|
IRelQueryTableInfoProxy(Object obj)
|
protected |
IRelQueryTableInfoProxy(Object obj,
String iid)
|
Method Summary | |
---|---|
void |
addListener(String iidStr,
Object theListener,
Object theSource)
|
ITable |
getBaseTableOfField(String column)
Returns the base table for a particular field. |
int |
getJoinType()
Type of table join. |
IQueryDef |
getQueryDef()
QueryDef used to create the join. |
boolean |
isHasDirectAccessLookup()
Indicates if direct access lookup is used by a RelQueryTable to match records between the source and destination tables. |
void |
removeListener(String iidStr,
Object theListener)
|
Methods inherited from class com.esri.arcgis.interop.Dispatch |
---|
bindUsingMoniker, constructVtblPosTable, convertToNative, cookieForListener, createDispatch, createObjrefMonikerDisplayName, equals, getActiveObject, getActiveObject, getDefaultProperty, getDispatchIdOfName, getLastErrorCode, getMtsObjectContext, getObjRef, getPropertyByName, getPropertyByName, getVtblPos, hashCode, initDispatch, invoke, invokeMethodByName, invokeMethodByName, invokeMethodByName, invokePropertyGetByName, invokePropertyPutByName, invokePropertyPutByRefByName, isNativeMode, isObjRef, optimizedVtblInvoke, queryInterface, readExternal, release, setNativeMode, setPropertyByName, toString, vtblInvoke, writeExternal |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public boolean noncastable
Constructor Detail |
---|
public IRelQueryTableInfoProxy()
public IRelQueryTableInfoProxy(Object obj) throws IOException
IOException
protected IRelQueryTableInfoProxy(Object obj, String iid) throws IOException
IOException
Method Detail |
---|
public void addListener(String iidStr, Object theListener, Object theSource) throws IOException
addListener
in class com.esri.arcgis.interop.Dispatch
IOException
public void removeListener(String iidStr, Object theListener) throws IOException
removeListener
in class com.esri.arcgis.interop.Dispatch
IOException
public int getJoinType() throws IOException, AutomationException
The JoinType can be either esriLeftInnerJoin or esriLeftOuterJoin. A left outer join ensures that all records in the source are returned. A left inner join will only return rows that have matching key field values. The diagram below illustrates the difference.
When using ArcMap's user interface to join data, you can choose between either type of join. Clicking the advanced button on the join data dialog box will display a dialog box that allows you to choose the join type. Here, the "Keep all records" option refers to a left outer join when the "Keep only matching records" option specifies a left inner join.
getJoinType
in interface IRelQueryTableInfo
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public IQueryDef getQueryDef() throws IOException, AutomationException
The QueryDef property returns the query that is used to retrieve the joined data when processing is done on the server. If the join is processed on the client as apposed to a server, the QueryDef property returns a null value.
If all tables involved are stored on the same ArcSDE, Personal or File Geodatabase, the processing can be performed by the server, which is normally faster. The JoinType must also be esriLeftInnerJoin in order for processing to occur on the server. In any other case, processing occurs on the client.
getQueryDef
in interface IRelQueryTableInfo
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public ITable getBaseTableOfField(String column) throws IOException, AutomationException
The GetBaseTableofField method will return the underlying Table object that is associated with a field in a RelQueryTable. To ensure that the column will be found, provide a fully qualified field name when executing this method.
getBaseTableOfField
in interface IRelQueryTableInfo
column
- The column (in)
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.public boolean isHasDirectAccessLookup() throws IOException, AutomationException
The HasDirectAccessLookup property returns true if the destination table supports the IRandomAccessCursor interface and the source table has an ObjectID field. This interface allows for faster data access and therefore better join performance. Tables from shapefile and ArcGIS for Desktop Advanced workspace factories support this interface.
isHasDirectAccessLookup
in interface IRelQueryTableInfo
IOException
- If there are interop problems.
AutomationException
- If the ArcObject component throws an exception.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |