Summary
TABLES, INFO, and Map LIBRARIAN modules can be accessed using the Pushstring method of ODE's Arc object.
Procedure
- In the VB or VBA editor Tools menu, click References.
- Check the "ESRI Arc automation server" and "ESRIutil automation server".
- Use the Pushstring method to load all module commands into a buffer.
'This code demonstrates use of TABLES through the ODE Arc object.
Dim Sev As Byte
Dim Arc As New ESRI.Arc
Sev = Arc.Command("&workspace c:\data", Nothing)
'Use PushString to place in the buffer all the commands
'you want to execute in Tables
Arc.PushString "select soil.pat "
Arc.PushString "ITEMS"
Arc.PushString "&SV NUMSEL = [SHOW NUMBER SELECT]"
Arc.PushString "Q"
'Issue the TABLES command
Sev = Arc.Command("TABLES", Nothing)
'With the Arcedit OCX use:
'Sev = Arcedit.Command("APC ARC TABLES", Nothing)
'Retrieve Variable values
Dim varstring As String
varstring = Arc.GetVariable("NUMSEL")
MsgBox "The value of variable NUMSEL: " & varstring
This coding method can be added to a subroutine in the Visual Basic Editor of ArcMap or ArcCatalog. It can also be used through ODE from Visual Basic without using ArcInfo Desktop modules.
ODE code cannot open a session of a different ArcInfo module. However, the commands of the module can be stored in a buffer and accessed as a group from the current module. Pushstring stores a string in a buffer. The string is then read into the next command that requires string input. When the ArcInfo module is accessed, all strings in the buffer are sent to the module in the order they were added to the buffer.