Thursday, January 13, 2011

Does VB6 no longer with ArcMAP?

VBA version 6.5 is required for ArcGIS 9.3 (installs with Microsoft Office 2007). This does not get installed automatically when installing ArcGIS using the setup.msi file. One of the more noticeable indicators that the correct version of VBA was not installed is when navigating to Tools > Macros > Visual Basic Editor will be grayed out. However, it can be installed after using the setup.msi file by installing the files referenced below or it can be automatically installed if you use the setup.exe instead of the setup.msi.

The ArcGIS Installation Guide > Installing ArcGIS Desktop silently, states the following: The installation of ArcGIS Desktop (setup.exe) serves as a single installer that integrates three separate installers required to run ArcGIS Desktop. If you are deploying ArcGIS Desktop or need to install using setup.msi directly, you will need to install the other setup programs as well. The setup.msi programs and installation order are:
The ArcGIS Desktop setup.msi (with custom installation information supplied below)
\VBA\VBAOF11.msi /qb (no installation parameters are required)
\VBA\1033\VBAOF11i.msi /qb (no installation parameters are required)
Additional Resources:
http://resources.esri.com/help/9.3/arcgisdesktop/installGuides/ArcGIS_Desktop/whnjs.htm
http://support.esri.com/index.cfm?fa=knowledgebase.techArticles.articleShow&d=17844

arcobject code for Projecting data from one coordinate system to another

Point point = new Point();point.setX(-100.00);
point.setY(40);
SpatialReferenceEnvironment sRefEnv = new SpatialReferenceEnvironment();
ISpatialReference incomingCoordSystem = sRefEnv.createGeographicCoordinateSystem(esriSRGeoCSType.esriSRGeoCS_NAD1927);
point.setSpatialReferenceByRef(incomingCoordSystem);

ISpatialReference outgoingCoordSystem = sRefEnv.createProjectedCoordinateSystem(esriSRProjCSType.esriSRProjCS_NAD1983UTM_13N);NADCONTransformation datumConversion = new NADCONTransformation(sRefEnv.createGeoTransformation(esriSRGeoTransformation2Type.esriSRGeoTransformation_NAD_1927_TO_NAD_1983_NADCON));
point.projectEx(outgoingCoordSystem, esriTransformDirection.esriTransformForward, datumConversion, false,0,0);

Friday, August 27, 2010

ArcGIS for AutoCAD

ArcGIS for AutoCAD is a free, downloadable tool that provides AutoCAD and ArcGIS interoperability. Within the AutoCAD environment, you gain easy access to enterprise GIS basemaps published by ArcGIS Server.

In addition, ArcGIS for AutoCAD gives you the ability to prepare CAD data for use with the ArcGIS platform while leveraging your existing CAD standards.

Use ArcGIS for AutoCAD to

Streamline information sharing between GIS and CAD groups.
View live GIS maps and display GIS symbology of underlying GIS data inside AutoCAD.
Include the results of GIS analysis in AutoCAD designs.
Create, manipulate, and define how CAD data is organized and attributed as GIS content so it can be used in ArcGIS Desktop or AutoCAD.

Visit ESRI Site to know more about this
http://vid01.esri.com/winmmedia/afabuild200final_2.wmv

Monday, October 19, 2009

COGO

When surveyors or civil engineers need to record the location of human-made features, such as land parcels, road centerlines, utility easements containing transmission lines, oil and gas leases, and so on, they typically provide the results on a survey plan that describes the location of features relative to each other. Below is an example survey plan that diagrammatically shows a road centerline and the edge of the land properties adjoining the road. The road centerline and parcel boundaries comprise a number of straight and curved lines. Each line has measurements that describe it. A straight line has a direction and distance, while a curved line has a radius, angle, arc length, direction, and so on. These measurements are coordinate geometry (COGO) descriptions. You can use these COGO descriptions to accurately re-create the features the surveyor captured. The survey plan also includes references to existing locations that help you to tie these new features into your GIS database. The reference could be the coordinates for a point or a measurement to a well known location such as a control point, a road intersection, or an existing parcel corner.
Building blocks for COGO
The basic building blocks for COGO are:
· Points—Survey plans can describe point features such as control points, section corners, monuments, and so on. You can use a simple point feature class to represent these features.
· Lines—You use a simple line feature class to represent these features. You can optionally add COGO fields to your line feature class, and measurements you enter are recorded on the features. There are three types of lines found on survey plans:
o Straight lines—Straight lines are the predominant type of lines on a survey plan, they are used to represent all types of features.
o Curved lines—A typical use for curved lines is to smoothly change direction on a road centerline. Parcel boundaries are usually parallel to the road centerline, so boundaries adjacent to a curved centerline are also curved. Curves are used in a number of other situations; in cul-de-sac parcels to provide a large turning circle for vehicles and on parcels at an intersection to provide greater visibility.
o Spirals—Spirals are not as common as the other types of lines. Spirals typically provide a transition to and from circular curves. Spirals are used in roadway and railroad design, where a high speed vehicle or train must be eased into or out of a circular path from or to a straight tangent. Creating and modifying spirals is not supported in ArcGIS 9.2.

· Polygons—Polygon features are used to represent the parcel areas formed by your COGO line features. You usually don't directly create polygons with the ArcMap COGO functionality, more typically you derive polygons from your lines. For example, you can use the Construct Features command on the Topology toolbar to creates polygons from selected lines.
· Traverses—Much of the data that is entered using COGO descriptions is entered from traverses. A traverse is simply an ordered collection of COGO descriptions that are used to create either a line or a polygon. Each individual line is referred to as a Course. Traverses are not stored in the GIS; however, you can save a traverse to a text file and recall it later.

Creating features from COGO descriptions
The commands and dialog boxes in the ArcMap editing environment for creating features from COGO descriptions are integrated into the editing experience. The common commands and dialog boxes you will use include:
· Traverse window—Create an edit sketch from a traverse description.
· 2-Point Line window—Quickly create a feature from a single COGO description.
· Offset Line window—Create an edit sketch from a strip description, a type of survey plan used for realigning road centerlines.
· Cul-de-sac command—Create a cul-de-sac from a selected road centerline.
These are just some of the commands and dialog boxes available for creating features in ArcGIS. Refer toCommon COGO workflows to understand how you can use these and other commands to build and maintain your land parcels.When you are creating features, you still need to set the target layer so ArcMap knows which layer you want to update. For the Traverse and Offset Line windows, you also need to set the edit task to either Create New Feature or Create 2-Point Line Features.
Correcting for differences between the survey plan and GIS data
When you are using the COGO descriptions from a survey plan, you are using measurements the surveyor took on the ground and possibly adjusted to some coordinate system. However, a GIS stores coordinates relative to a projections coordinate grid. You can use the ground to grid correction to adjust the geometry of the features you create.
Reporting COGO descriptions
Before you begin adding features from COGO descriptions, you may need to investigate and understand how the new features will fit compared to the existing features. You can use the COGO Report dialog box to measure directions and distances between points you click on the map as well as query the COGO descriptions for line feature in your database. You can also use the COGO Area command to calculate the legal area of selected line features, useful when deciding which approach to use when modifying features.
Storing COGO attributes on line features
In ArcMap, you can store the COGO values that you enter when creating features as an attribute of the line feature. One reason to do this is to keep a record of the original COGO description of the line features. This is useful if you need to research the original value when you are modifying the line feature in the future. Not every command and tool in ArcMap updates the COGO attributes of a line feature. The Traverse window, 2-Point Line window, Cul-de-sac command, and Proportion command are examples of those that do update. For a complete list, see About COGO descriptions. To get this behavior, you need a line feature class with the appropriate COGO attributes. You can use the Create COGO fields command in ArcCatalog to do this.
How is COGO in ArcGIS 9.2 different from other ESRI COGO capabilities?
The COGO functionality provided in ArcGIS 9.2 allows you to create and maintain your land parcels and other surveyed features in a geodatabase. There is other ESRI functionality that provides similar capabilities to ArcGIS 9.2 COGO such as the Survey Analyst extension to ArcGIS and the COGO extension to ArcInfo Workstation.
ArcGIS Survey Analyst and Cadastral Editor
ArcGIS Survey Analyst is an extension to ArcGIS that allows you to capture and maintain survey information collected from field notes, data collectors, and record information submitted by surveyors to public authorities. You can use this survey information to incrementally improve the accuracy of GIS feature geometry in the geodatabase. See the Survey Analyst documentation for more information. Survey Analyst is comprised of a Survey Editor and Cadastral Editor. The Cadastral Editor provides a new cadastral fabric dataset, job tracking, and workflow functionality for maintaining a land records database. How does this differ from COGO in ArcGIS 9.2?
· Availability of functionality—COGO in ArcGIS 9.2 is available with an ArcEditor or ArcInfo license. Similar to the COGO extension for ArcInfo Workstation, Survey Analyst requires an extension license. The Survey Analyst extension works with ArcView, ArcEditor, and ArcInfo.
· Maintaining your features over time—When you create line and polygon features with COGO functionality in ArcGIS 9.2. you cannot go back and change the measurements and re-adjust the features. For example, if you use the Traverse window to create a parcel boundary and realize later you made an error, you must delete the parcel boundaries and create them again. Using the Cadastral Editor, the parcel record information is stored in the cadastral fabric so you can reapply the measurements and adjust the fabric.
· Adjustment of the parcels—With COGO for ArcGIS 9.2, as new parcels are added, you need to decide how those new parcels integrate into the existing parcel layers. You may need to delete some lines or modify or re-create others. Cadastral Editor uses a least squares adjustment that defines a best fit for your new parcels. As you add new parcels, they are seamlessly integrated into the cadastral fabric. Old record information is not deleted, it is kept as a historical record and can continue to contribute to the coordinate accuracy of the fabric.
· Tracking history of parcels—The geodatabase allows you to archive data so you can model your parcel data over time. This works for the parcels created with COGO for ArcGIS 9.2. The Cadastral Editor provides additional functionality to geodatabase archiving where you can store incremental changes to the parcels in a cadastral fabric.

COGO extension for ArcInfo Workstation
The COGO extension for ArcInfo Workstation provides functionality for capturing and maintaining land records data in a coverage. How does this differ from COGO in ArcGIS 9.2?
· Availability of functionality—COGO in ArcGIS 9.2 is available with an ArcEditor or ArcInfo license. The COGO extension for ArcInfo Workstation requires an additional extension license.
· Similar functionality—COGO in ArcGIS 9.2 provides similar functionality to the COGO extension for ArcInfo Workstation. Refer to Common COGO workflows to understand what capabilities are available.
· No COGO point feature class—COGO for ArcGIS 9.2 doesn't have an explicit COGO point feature class
· Support for spiral curves—Creating and modifying spirals is not supported in ArcGIS 9.2.
· Stationing is not supported in ArcGIS 9.2.

What is COM?

1. What is IUnknown? What methods are provided by IUnknown? It is a generally good idea to have an answer for this question if you claim you know COM in your resume. Otherwise, you may consider your interview failed at this point. IUnknown is the base interface of COM. All other interfaces must derive directly or indirectly from IUnknown. There are three methods in that interface: AddRef, Release and QueryInterface.
2. What are the purposes of AddRef, Release and QueryInterface functions? AddRef increments reference count of the object, Release decrements reference counter of the object and QueryInterface obtains a pointer to the requested interface.
3. What should QueryInterface functions do if requested object was not found? Return E_NOINTERFACE and nullify its out parameter.
4. How can would you create an instance of the object in COM? Well, it all depends on your project. Start your answer from CoCreateInstance or CoCreateInstanceEx, explain the difference between them. If interviewer is still not satisfied, you’ll have to explain the whole kitchen behind the scenes, including a difference between local server and inproc server, meaning and mechanism of class factory, etc. You may also mention other methods of object creation like CoGetInstanceFromFile, but discussion will likely turn to discussion of monikers then.
5. What happens when client calls CoCreateInstance? Again, all depends on the level of detail and expertise of interviewer. Start with simple explanation of class object and class factory mechanism. Further details would depend on a specific situation.
6. What the limitations of CoCreateInstance? Well, the major problems with CoCreateInstance is that it is only able to create one object and only on local system. To create a remote object or to get several objects, based on single CLSID, at the same time, one should use CoCreateInstanceEx.
7. What is aggregation? How can we get an interface of the aggregated object? Aggregation is the reuse mechanism, in which the outer object exposes interfaces from the inner object as if they were implemented on the outer object itself. This is useful when the outer object would always delegate every call to one of its interfaces to the same interface in the inner object. Aggregation is actually a specialized case of containment/delegation, and is available as a convenience to avoid extra implementation overhead in the outer object in these cases. We can get a pointer to the inner interface, calling QueryInterface of the outer object with IID of the inner interface.
8. C is aggregated by B, which in turn aggregated by A. Our client requested C. What will happen? QueryInterface to A will delegate request to B which, in turn, will delegate request for the interface to C. This pointer will be returned to the client.
9. What is a moniker ? An object that implements the IMoniker interface. A moniker acts as a name that uniquely identifies a COM object. In the same way that a path identifies a file in the file system, a moniker identifies a COM object in the directory namespace.
10. What’s the difference, if any, between OLE and COM? OLE is build on top of COM. The question is not strict, because OLE was built over COM for years, while COM as a technology was presented by Microsoft a few years ago. You may mention also that COM is a specification, while OLE is a particular implementation of this specification, which in today’s world is not exactly true as well, because what people call COM today is likely implementation of COM spec by Microsoft.
11. What’s the difference between COM and DCOM? Again, the question does not require strict answer. Any DCOM object is yet a COM object (DCOM extends COM) and any COM object may participate in DCOM transactions. DCOM introduced several improvements/optimizations for distributed environment, such as MULTI_QI (multiple QueryInterface()), security contexts etc. DCOM demonstrated importance of surrogate process (you cannot run in-proc server on a remote machine. You need a surrogate process to do that.) DCOM introduced a load balancing.
12. What is a dual interface? Dual interface is one that supports both - IDispatch interface and vtbl-based interface. Therefore, it might be used in scripting environment like VBScript and yet to use power and speed of vtbl-based interface for non-scripting environment. Discussion then may easily transform into analyzing of dual interface problems - be prepared to this twist.
13. Can you have two dual interfaces in one class? Yes. You may have two dual interfaces in one class, but only one of them may be default. The bottom line is that you cannot work with two dual interfaces at the same time due to nature of dual interface! To support two dual interfaces in VB you would write something like:14. dim d1 as IDualInterface115. dim d2 as IDualInterface216. set d1 = new MyClassWithTwoDuals17. set d2 = d1
In ATL’s class you would have to use macro COM_INTERFACE_ENTRY2(IDispatch,IDualInterface1), to distinguish between different dual interfaces.
18. What is marshalling by value? Some objects can essentially be considered static: regardless of which methods are called, the state of the object does not change. Instead of accessing such an object remotely, it is possible to copy the static state of the object and create a new object with the same state information on the caller side. The caller won’t be able to notice the difference, but calls will be more efficient because they do not involve network round trips. This is called “marshaling by value”.
19. What is a multi-threaded apartment (MTA)? Single-threaded apartment (STA)? This is pretty difficult question to describe shortly. Anyway, apartments were introduced by Microsoft in NT 3.51 and late Windows 95 to isolate the problem of running legacy non-thread safe code into multithreaded environment. Each thread was “encapsulated” into so called single-threaded apartment. The reason to create an object in apartment is thread-safety. COM is responsible synchronize access to the object even if the object inside of the apartment is not thread-safe. Multithreaded apartments (MTA, or free threading apartment) were introduced in NT 4.0. Idea behind MTA is that COM is not responsible to synchronize object calls between threads. In MTA the developer is responsible for that. See “Professional DCOM Programming” of Dr. Grimes et al. or “Essential COM” of Don Box for the further discussion on this topic.
20. Let’s assume we have object B and aggregated object C (in-proc server), created by B. Can you access any interface of B from C? What’s the difference between aggregated and contained objects? Yes, you can. This is fundamental postulate of COM: “If you can get there from here, you can get there from anywhere”, i.e. QI’ing for IUnknown you may proceed and to get a pointer to any other interface, supported by the object. Aggregated object exposes its interface directly, without visible intervention of the object container. Contained object is created within the object container and its interfaces might be altered or filtered by the object container.
21. What is ROT ? GIT ? Count pros and cons of both. By definition, running object table (ROT) is a globally accessible table on each computer that keeps track of all COM objects in the running state that can be identified by a moniker. Moniker providers register an object in the table, which increments the object’s reference count. Before the object can be destroyed, its moniker must be released from the table. Global Interface Table (GIT) allows any apartment (either single- or multi-threaded) in a process to get access to an interface implemented on an object in any other apartment in the process.
22. If you have an object with two interfaces, can you custom marshal one of them? No! The decision to use custom marshaling is an all-or-nothing decision; an object has to custom marshal all its interfaces or none of them.
23. Is there a way to register in-proc server without regsvr32.exe? Yes. Call DllRegisterServer() from the client. Do not forget to call DLLUnregisterServer() from the same client. You may also use Registrar object for the same purpose or use direct manipulation of the windows registry.
24. What is VARIANT? Why and where would you use it? VARIANT is a huge union containing automation type. This allows easy conversion of one automation type to another. The biggest disadvantage of VARIANT is size of the union.
25. How can you guarantee that only remote server is ever created by a client? Create an object (call CoCreateObjectEx()) with CLSCTX_REMOTE_SERVER flag.
26. What is __declspec(novtable)? Why would you need this? __declspec(novtable) is a Microsoft’s compiler optimization. The main idea of this optimization is to strip the vtable initialization code from abstract class (for abstract class the vtable is empty, while it is initialized in contructor) MSDN has an article on this topic.
27. What is an IDL? IDL stands for Interface Definition Language. IDL is the language to describe COM interfaces.
28. What is In-proc? In-proc is in-process COM object, i.e. COM object that implemented as DLL and supposed to be hosted by a container. When you have to instantiate the in-proc object remotely, you may use DLLHost.exe application that was design specially for this purpose.
29. What is OLE? OLE is an object and embedding first implementation of COM spec available from MS before COM was officially named COM.
30. Give examples of OLE usage. The most famous examples are probably drag and drop and structured storage implementations.
31. What are 2 storage types for composite document? Storage and Stream.
32. Is .doc document a compound document? Is it a structured storage? Compound document is a document that contains information about other documents hosted in this document. All office documents _may_ be compound documents, but may be not. Word documents from version 6.0 and up are stored as structured storage.

ArcGIS Server coding practices

The ESRI dev summit was a great experience. Meeting fellow developers is always good - you talk the same language, exchange ideas, receive feedback, discuss how things can be made better,... I could go on and on.Ok, so I was asked quite a few server related questions at the summit: What should I keep in mind while coding against the server? Any do's and dont's? Any particular classes / methods I should read more about? etc... So here I'll talk about certain points you should keep in mind while working with the ArcGIS Server, particularly the MapServer:

Use the description objects: Sure the MapServer gives you access to the IMap but you don't have to go there. A lot can be accomplished by using the IMapDescription, ILayerDescription, et al.

Release the ServerContext: In a pooled environment you are sharing the server object with other users. So it's your responsibility to release the context once you have performed your set of operations. For web applications, this translates to releasing the context after every request. Of course, if you are using the ADF, the ADF does that for you so you need not worry. But even then it's good to keep this in mind.

Do not reference server objects after the context has been released: Do you continue to work with the Statement object once the JDBC Connection has been closed? NO. Why? Because aStatement can be executed only while the Connection is live. Similarly, you should not reference ANY server objects once you have released the IServerContext. If you want to persist the state of any server object, you should use the saveObject() method to get a serialized string representation of the object before releasing the context. You can once again rehydrate the object by using theloadObject() method once you have regained access to the context.

In case you had forgotten - use the description objects: Did you know you could add serializable custom graphics to the IMapDescription object?

Use methods exposed by the MapServer: Look at the javadoc for the MapServer and for all the interfaces that it implements. It can do a lot more than you might think - you can export maps, layouts, do queries, identifies, get feature info, handle SOAP requests, and a whole lot more.

Create server objects on the server: You don't create RMI objects on the client. You don't create EJBs on the client. Similarly, you don't create ArcGIS server objects on the client. ALWAYS use theIServerContext.createObject() method to create all and any ArcObject in a server application within your server context at the server.

BTW, use the description objects: Did you know you could change layer visibilities, select features, even set definition expressions with the ILayerDescription object?

This by no means is an exhaustive list but something which might help you when working with the server. Oh yeah, in parting, in case you had missed: use the description objects!
Posted by Keyur Shah
Labels: arcgisserver, bestpractices, esri, java
Are there inexpensive online training resources for ArcGIS Server?
Yes. ESRI provides free, self-paced online training for ArcGIS Server via our popular training seminars. Training seminars deliver focused lectures and demonstrations on the topics most asked for by our customers. Each recorded session lasts approximately 60 minutes.
Check out the top 10 ESRI Training Seminars for ArcGIS Server:
1. Building Mashups Using the ArcGIS APIs for JavaScript
2. Authoring and Publishing Optimized Map Services
3. Using ArcGIS Server Geoprocessing Services
4. Implementing and Optimizing ArcGIS Server Map Caches
5. Publishing KML Services with ArcGIS Server 9.3
6. Building Applications with ArcGIS Server Using the Java Platform
7. Implementing Security for ArcGIS Server 9.3 Java Solutions
8. Implementing Security for ArcGIS Server .NET Solutions
9. ArcGIS Server Setup and Administration
10. Imagery in an Enterprise GIS
How do I create a Web application with ArcGIS Server?
Watch this quick video: Creating a Web Application with ArcGIS Server Manager.
Are there free resources available to help me get started with ArcGIS Server?
Yes. ESRI provides Web help for both ArcGIS Server for the Microsoft .NET Framework and ArcGIS Server for the Java platform. These online documents are excellent resources for understanding important concepts and include valuable tutorials to help you get started quickly. At 9.3, the ArcGIS Server Resource Center provides you with access to online software developer kits (SDKs), sample GIS servers, and online content that you can include in your applications.
Other free resources include
·ArcGIS Server Resource Center
·ESRI Instructional Podcasts and Speaker Series Podcasts
·The ArcGIS Server Development Blog
·The ArcGIS Explorer Blog
·The EDN Web Site Blog
·Inside the Geodatabase
What is ArcGIS Explorer?
ArcGIS Explorer is an easy-to-use geobrowser client for mapping and 3D visualization. It provides a fast and simple way to access the rich functionality of ArcGIS Server. It is intuitive and free. This software is designed to work as a client to ArcGIS Server and can integrate other Web services including OGC WMS, ArcIMS, ArcWeb Services, and KML. ArcGIS Explorer can also read and display local data including shapefiles, file geodatabases, and a wide variety of image formats.
ArcGIS Explorer is not a stand-alone solution but rather an integrated part of the ArcGIS system. ESRI believes that ArcGIS Explorer will be very powerful for GIS organizations to make their GIS knowledge universally available.
Go to the ArcGIS Explorer blog to find out more.
Can you use ArcGIS Server to manage imagery?
Yes. At 9.3, ArcGIS Image Server is integrated with ArcGIS Server as an optional extension: ArcGIS Server Image Extension. For a good overview of ESRI's image management solution, read the ArcUser article, Visualizing an Enterprise Approach to Imagery.
Can I deploy the ArcGIS Web Mapping APIs locally?
Yes. DVD media for the ArcGIS Web Mapping APIs is available for customers with Standard or Advanced editions of ArcGIS Server 9.3 or above, as well as EDN subscribers or users of the Web Mapping APIs for commercial use. ESRI recommends that you use the ArcGIS Web Mapping API SDKs, hosted by ESRI. This will give you access to the latest samples and tutorials as well as additions to the API. If your organization runs on a restricted network with no access to the Internet, you can order any of the ArcGIS Web Mapping APIs from ESRI Customer Service.
Please note that the ArcGIS Web Mapping APIs have a release schedule different from ArcGIS. If you install the APIs locally, you will need to order a new DVD to obtain the latest copy.
What platforms are supported by ArcGIS Server?
See ArcGIS 9.3 System Requirements for details.
What licensing options are offered for ArcGIS Server?
Depending on what features you need and how many simultaneous connections to the multiuser geodatabase you plan to support, you can choose between three editions of ArcGIS Server (Advanced, Standard, and Basic). The functional editions of the product include
·Basic—This edition provides users with a comprehensive GIS server for spatial data management. It focuses on organizing and managing geographic datasets.
·Standard—This edition provides all the features of the Basic edition plus visualization (mapping) and spatial analysis. It also includes 2D mapping and 3D rendering (globe) services; browser-based editing capabilities; and a suite of related features such as geocoding, gazetteer, and routing.
·Advanced—This edition provides all the features of the Standard edition, along with advanced spatial analysis and modeling and a configurable mobile GIS application. The Advanced edition also includes four advanced analysis extensions (3D, Spatial, Network, and Geostatistical) at no additional cost.
Furthermore, each functional edition has levels that define capacity. These levels are
·Workgroup—This level is designed and limited to run on a single machine and includes a SQL Server Express database engine. The Workgroup level supports 10 simultaneous connections to a multiuser geodatabase and 4 GB of data storage on a multiuser geodatabase.
·Enterprise—This level is designed to run and optionally deploy on multiple machines and on a user-defined multiuser database (IBM DB2, Informix Dynamic Server, Microsoft SQL Server, Oracle, or PostgreSQL). The Enterprise level supports unlimited simultaneous connections to a multiuser geodatabase and unlimited storage capacity.
For more information about ArcGIS Server editions and levels, see the ArcGIS Server 9.3.1 Functionality Matrix.
Talk to your local ESRI representative to find which configuration of ArcGIS Server is right for your organization.
How is ArcGIS Server licensed in a virtualized environment?
ArcGIS Server has two licensing options. You can choose to license by the number of cores on either the physical or virtual servers (as described below), whichever is the smaller number.
Option 1: Licensed by the number of cores on the virtual server—When creating a virtual server, a specific hardware server emulation configuration is typically defined. For example, a virtual server could be configured to run on a 2-, 4-, 8-, or 16-core physical server (the physical server does not matter for this option) or could be configured to use the cores from multiple physical servers. If the virtual server is configured as a 4-core virtual server, the license (and the license fee for it) would be a 4-core license. If the virtual server is configured as an 8-core virtual server, then the license and license fee would be a 4-core license with 4 additional cores. In this license model, the number of cores for the virtual server configuration is used to determine the license fee. The number of cores on any physical servers that support the virtual server are notused to determine the license fee.
Option 2: Licensed by the number of cores on the physical servers on which the virtual server is defined—Customers can license the physical servers on which virtual servers are configured. Generally, this model requires that all cores on the physical servers supporting virtual server configurations must be licensed. However, some virtualization technology now supports hardware partitioning. If the customer can document that their virtualization technology supports hardware partitioning, ESRI allows licensing based on the specific hardware resources being utilized by the hardware partition. For example, if the virtualization software supports creating a virtual server that utilizes a particular socket, or specific cores on a socket, then licensing is based on the specific number of physical hardware cores specified. Note: fractional partitioning below the core level still requires that the entire core be counted for licensing purposes. When licensing by the physical server, customers are free to install and run any number of instances of ESRI server software in any virtual servers that they create without the need for additional software licenses, provided that the physical server they are using is properly licensed to run this server software.
In summary, customers can choose whichever option provides the least number of cores to be licensed.
Can an old ESRI Copy Protected (ECP) license registration code be used for licensing newer versions of ESRI software?
No. The ESRI products ArcGIS Server, ArcGIS Engine, and ArcIMS require a new ECP registration code for each released product version.Contact ESRI Customer Service for specific information on product registration, such as obtaining a new registration number or an authorization file.
Do I have to uninstall ArcGIS 9.3 to upgrade to ArcGIS 9.3.1?
Upgrading to ArcGIS 9.3.1 does not require uninstalling ArcGIS 9.3. You can work in mixed environments of ArcGIS 9.3 and ArcGIS 9.3.1 within the same organization since geodatabases, map documents, and APIs did not change between versions.
How do I upgrade my existing ArcGIS Server applications from 9.2 to 9.3?
See the help topic Moving to ArcGIS Server 9.3.
Is an additional license required to install components of ArcGIS Server on another machine (Distributed Setup)?
It depends. At 9.3.1, ArcGIS Server Enterprise users can deploy the following components on multiple machines without paying an additional deployment license fee: Web ADF—SDK or Runtime, Web Service Handlers, and Server Object Manager. If you have ArcGIS Server Workgroup, then yes, you will have to pay additional licensing fees. Talk to your local ESRI representative for more details.
Can I use the Windows XP or Vista operating system as a production environment for ArcGIS Server?
ArcGIS Server 9.3 supports Windows XP and Vista operating systems for basic testing and application development use only. They are not recommended for deployment in a production environment.For more information on Microsoft Vista support, see ESRI Support Center article 34020.
Does ArcGIS Server support 64-bit processors?
ArcGIS on Windows is supported on 64-bit processors with ArcGIS 9.2 Service Pack 3 and higher. Service Pack 3 supports Windows XP 64-bit and Windows 2003 Server 64-bit operating systems. ArcGIS 9.2 Service Pack 3 runs as a 32-bit application on these 64-bit Windows platforms, thereby taking advantage of some of the performance benefits of the 64-bit environment.
ArcGIS Server for .NET and Java and ArcIMS are native 32-bit applications. They are each certified running as a 32-bit application on 64-bit (x64) Microsoft Windows. Web server support is based on the Web server vendor's support of 64-bit Microsoft Windows. Check with a Web server vendor to see if the Web server is supported on 64-bit Microsoft Windows. In addition to Windows, ArcGIS Server for Java and ArcIMS are supported on Solaris and Linux. ArcGIS Server for Java and ArcIMS are both supported in a Solaris 64-bit environment. ArcGIS Server for Java and ArcIMS on 64-bit Linux are not supported.
For more information on 32- and 64-bit support, see ESRI Support Center article 29391.
Can ArcGIS Server and other ArcGIS products be installed on the same Linux or Solaris machine?
Yes, it is possible to install ArcGIS Server and other ArcGIS products on a single Linux/Solaris machine. To prohibit the applications from interfering with one another, ArcGIS Server must be installed with a different user account and in a separate location from the other ArcGIS products. The other ArcGIS products must also be installed in Single User mode, not Multiple User mode. Warning messages are displayed reminding the user of these requirements if conflicts are detected during installation.
What is the difference between the new image service available with ArcGIS Server 9.3 and the new ArcGIS Server Image extension?
An image service is one of the core services available in ArcGIS Server. This means that you can create image services out of the box with the Standard and Advanced editions of ArcGIS Server.
·Image services can be created from any raster dataset in any format.
·Image services provide advanced visualization. For example, ArcGIS Desktop users can connect to an image service and change the band combination of a multiband image.
·Image services provide optimized data transmission. You can adjust the image service for low bandwidth networks.
·Image services can be used as inputs to geoprocessing. For example, ArcGIS Desktop users can use image services with other geoprocessing tools to model geophysical phenomena, such as solar radiation or change detection.
However, to take advantage of all the capabilities an image service has to offer, you will need the ArcGIS Server Image extension, which is available for both Standard and Advanced editions of ArcGIS Server.The Image extension allows you to create a compiled image service definition file (.ISCDef). With ISCDef files, you can define which images are included in the image service; how they will be mosaicked; and other parameters like orthorectification, pan sharpening, and enhancements. This innovative approach to imagery publication reduces the time between imagery acquisition and exploitation.
·The Image extension simplifies image management. For example, not only can you directly publish images in their raw format (without preprocessing) but you can also create an image service from a large number of individual images that may be in different projections, pixel sizes, or locations.
·The Image extension improves the performance of your image services.
·The Image extension allows you to optimize imagery for multiple applications within a single service. For example, elevation data can be served with a range of different renderings.
·The Image extension includes technology that allows you to dynamically change the ordering of overlapping imagery, which is critical for temporal analysis.
·The Image extension also provides detailed metadata about the imagery being viewed.
Find out more about the ArcGIS Server Image extension.
Is there an overview of the enterprise geodatabase architecture?
For a concise overview of the enterprise geodatabase and a list of related resources, read the ArcUser article Enterprise Geodatabase 101. If you just need a basic understanding of the geodatabase, read the Geodatabase Essentials—Part I: What Is the Geodatabase? post on the Inside the Geodatabase blog.
What can I do with my database to improve performance?
Read the Five Best Practices for Maintaining an ArcSDE Geodatabase post on the Inside the Geodatabase blog.
Does ArcGIS Server support an open source enterprise database?
Yes—PostgreSQL. Read the PostgreSQL database support at ArcGIS 9.3 post on the Inside the Geodatabase blog.
How can I learn more about map caching to improve performance?
If you're new to map caching, start with Map caching for beginners and Updating your map caches automatically on theArcGIS Server Development blog. Next, read part 1 ofDeconstructing the map cache tiling scheme. Then read Part 2:Working with map caches programmatically.
You may also be interested in the Creating a 3D globe cache from a 2D map cache post.
Watch the free training seminar, Authoring and Publishing Optimized Map Services.
Tutorials can help you create a map cache and tiling scheme in the Web Help.
Can I have the .NET 2.0 framework and .NET 3.5 framework on the same machine?
Yes. ArcGIS Server for the .NET Framework at 9.3 requires a minimum of .NET Framework 2.0 to run applications, but 2.0 and 3.5 can coexist without issues.
What has ESRI done to improve the Web ADFs?
At 9.3, we have dramatically improved the performance of .NET Web ADF applications by reducing the number of callbacks to the server and optimizing different aspects of the application. We have also worked on improving the user experience while configuring applications with ArcGIS Manager, and while using the Web mapping applications as well.
A new out-of-the-box Print task has been created, and its source code is now part of the code galleries, available from the Developer Help at resources.esri.com. We will continue to post the source code of new tasks in the future.
Working from a developer's point of view, we have fully implemented MS AJAX, allowing developers to follow standard coding patterns in .NET. Java support to AJAX has also been improved. Also, Web ADF Java components are delivered to the NetBeans platform as NetBeans plug-ins that can be updated online in the same way that other standard NetBeans modules can be delivered/updated.
Finally, both the .NET and Java Web ADFs include more comprehensive developer documentation.
Does the Web ADF for .NET 9.3 support Microsoft AJAX 1.0?
At 9.3, ESRI plans to support Web ADF controls with ASP.NET AJAX. For a good discussion on this topic, read the Using ASP.NET AJAX with the Web ADF post on the ArcGIS Server Development blog.
Where can I learn more about best practices or tips and tricks for developing with ArcGIS Server?
For lists of free resources, visit Creating Effective Web Maps. In addition, visit the ArcGIS Server Resource Center for detailed documentation, samples, and code galleries. Subscribe to the ArcGIS Server blog for excellent posts about development tips and tricks and best practices.
Can Bing Maps (formerly Microsoft Virtual Earth) be used in Web mapping applications built on top of ArcGIS Server 9.3.1?
Yes. ArcGIS Server users can access a free 90-day watermarked evaluation of Microsoft Bing Maps that can be leveraged with the .NET ADF as well as JavaScript, Flex, and Silverlight APIs. After the evaluation period, ArcGIS users can purchase an annual subscription.
ArcGIS Server seems oriented to large, integrated systems. Can it be used by small organizations or workgroups?
Yes. ArcGIS Server Standard Workgroup is specifically designed for smaller organizations. For more information about ArcGIS Server editions and levels, see the ArcGIS Server 9.3.1 Functionality Matrix.
Talk to your local ESRI representative to find which configuration of ArcGIS Server is right for your organization.
How can ArcGIS content be exported for visualization in Google Earth?
At 9.3, you can publish your GIS content as Keyhole Markup Language (KML), an XML-based file format used to represent geographic features in applications such as Google Earth and ArcGIS Explorer. If you haven't tried it yet, download ArcGIS Explorer, a free, Google Earth-like application that handles KML easily.
For ArcGIS Desktop, there two new tools in ArcToolbox: Map To KML and Layer To KML. These tools will allow you to publish your GIS content and add it to Google Earth and ArcGIS Explorer. You will literally be able to drag and drop the KML files on those applications to visualize the information. This means you won't have to include basemap information in your map or create a basemap layer, because you'll be using Google Maps or ArcGIS Explorer basemaps.
For ArcGIS Server, any service you create is automatically output as KML as well. Keep in mind that ArcGIS Server services are available to a variety of client applications, including ArcMap, ArcGIS Explorer, Google Earth, Google Maps, and Microsoft Virtual Earth. Check out the services directory Web site for the Portland service hosted on ArcGIS Online. Here, you get metadata about the service, and you can preview the ArcGIS Server service (Portland/Portland_ESRI_LandBase_AGO (MapServer)) that's open to the public in any of those client applications. If you choose Google Earth, you can download the KMZ file for the service, then drop it onto Google Earth or ArcGIS Explorer. If you choose ArcGIS Explorer, you can download the NMF file for the service, then drop it onto ArcGIS Explorer. If you choose ArcGIS JavaScript, you see an interactive map of the service. With ArcGIS Server 9.3, a services directory Web site is automatically generated for every service you create.
Does ESRI support ArcGIS Server in virtualized environments?
Yes. For details, read ArcGIS Server and Virtualization [PDF].
Is there compatibility between ArcGIS Server and ArcIMS products and versions?
Yes. For more information, see the FAQs for compatibility among ArcGIS Server and ArcIMS products and versions. [PDF]
What versions of AutoCAD does ArcGIS for AutoCAD work with?
ArcGIS for AutoCAD requires the .NET API implemented in AutoCAD 2007 and newer versions. AutoCAD 2007, 2008, and 2009 are supported. This includes all AutoCAD-based products that support the AutoCAD .NET 2.0 APIs such as AutoCAD 2007, 2008, and 2009. AutoCAD versions prior to 2007 and AutoCAD LT do not support these APIs required by ArcGIS for AutoCAD.
Can the ArcGIS Mobile SDK connect to ArcGIS Server for Java running on UNIX or Linux?
Yes, the ArcGIS Mobile SDK in ArcGIS Server can be used to connect to ArcGIS Server Advanced editions. The type of Web ADF, .NET, or Java installed on the server does not matter.The server object container (SOC) must be installed on a Windows machine. SOCs installed on Linux and Solaris machines do not work with the ArcGIS Mobile SDK.
Are there instructions for securing ArcGIS Server using a reverse proxy system?
For the complete discussion of using reverse proxy with ArcGIS Server, see ESRI Support Center article 32634.

An overview of disconnected editing

ArcInfo or ArcEditor is required to check data in and out and to edit an ArcSDE check-out geodatabase. You can edit a personal check-out geodatabase with ArcView.
Disconnected editing is supported by two principal mechanisms: checking out andchecking in data. Checking out data from a geodatabase involves taking a copy of some data from one geodatabase, the master geodatabase, and transferring it to another geodatabase, the check-out geodatabase. This copy is undertaken within a framework that allows the data to be reintegrated with the master geodatabase at a later time. Checking in the data from a check-out geodatabase involves establishing whether any changes have been made to the data in the check-out geodatabase and transferring those changes back to the master geodatabase.
OTE: ArcInfo or ArcEditor is required to check data in and out and to edit an ArcSDE check-out geodatabase. You can edit a personal check-out geodatabase with ArcView.
Having identified the data to check out, the check-out process itself involves a number of automated steps. The selected data, along with any related objects, is copied to the designated check-out geodatabase. A new version of the data, the master check-out version, will be created in the master geodatabase as a child of the version to which you are currently connected. This will be created as a public version, accessible to all users in the master geodatabase. This version may be set to private, or hidden from general access, if required. For example, if you are connected to the DEFAULT version, a new version with the same name as the check-out will be created as a child of DEFAULT. This version will receive the changes from a check-out geodatabase when the data is checked in.
If the check-out geodatabase is an ArcSDE geodatabase, then two new versions are created in the check-out geodatabase. The first version, the synchronization version, will be created as a child of the DEFAULT version. This synchronization version will reflect the state of the data at the time the check-out was created and should not be edited. The second version, the check-out version, will be created as a child of the synchronization version. Only the edits made to this version can be checked back into the master geodatabase. Once data has been checked out to an ArcSDE geodatabase, it is automatically registered as versioned. If the check-out geodatabase is a personal geodatabase that does not support versioning, changes to the data are maintained in a separate DBMS table. The check-out process concludes by adding information that describes each check-out to both the master and check-out geodatabases. This information includes the name of the user who created the check-out, the data that has been checked out, the time the check-out was created, and the name of the new check-out version in the master geodatabase.Details about the source of the data, the master geodatabase, are also recorded. This involves storing partial ArcSDE connection information, which will be used during the check-in process. Usernames and passwords are not stored in the check-out geodatabase.
Restrictions
There are some important restrictions to remember when checking out data. First, the version created in the master geodatabase should not be edited while the data it represents is still checked out. Because this check-out version in the master geodatabase is public and, therefore, editable when created, any changes made to this version may be overwritten during the check-in process, since no conflict reconciliation is undertaken at this point.Second, it is not possible to append data to or refresh an existing check-out. You cannot check out an updated version of the same data to a check-out geodatabase while it contains a check-out. You must first check in the original check-out and make a second check-out. Once data has been checked back in, the check-out geodatabase no longer participates in any check-out or check-in relationship with a master geodatabase. However, it is possible to reuse a geodatabase for a new check-out. You can reuse the existing schema in a geodatabase to form a template for a second check-out. If the data to be checked out is complex, reusing the schema in a geodatabase will afford some performance improvements. When creating the new check-out, if the geodatabase to be reused contains an older copy of the data, this will be deleted in preparation for receiving the latest copy of the data from the master geodatabase. If required, additional objects may be included to augment the check-out. Finally, the check-out model does not support schema modifications to data that has been checked out. If the schema is altered in any way, either in the master or check-out geodatabase, for example, by adding a field to a table or feature class, the check-out is rendered invalid, and any attempts to check in the modified schema and data will fail. If a new table has been created in the check-out geodatabase, it will be ignored when the rest of the data is checked in.
Managing check-outs
Once a check-out has been created, any subsequent modifications to the properties of the check-out are made asynchronously. This means that changes made to the properties of a check-out in a master geodatabase are independent of the associated check-out in the check-out geodatabase and vice versa. For example, if a check-out is unregistered in the master geodatabase, this will not unregister the associated check-out in the check-out geodatabase. Similarly, if a check-out is renamed in the master geodatabase, that operation does not rename the check-out in the check-out geodatabase. The name of a check-out in a master geodatabase does not have to match the name of the check-out in the corresponding check-out geodatabase. If a check-out is renamed in the master but not the check-out geodatabase, the data can still be checked in.
OTE: This functionality is not available with ArcView.
As with checking out data, the check-in process involves a number of automated steps. This process begins by establishing what changes have been made to the data in the check-out geodatabase; only these changes will be checked back in to the master geodatabase. If the check-out geodatabase is an ArcSDE geodatabase, a comparison is made between the edited check-out version and the static synchronization version to identify what is different. If the check-out geodatabase is a personal geodatabase, the changes are recorded in a separate DBMS table. The changes are then transferred directly to the check-out version in the master geodatabase; there is no version reconciliation at this point with the check-out version. If the check-out version has been modified since the data was checked out, these changes may be overwritten. Once the data has been checked back in to the master geodatabase, all associated check-out information will be removed, such as the list of datasets checked out, from both the master and the check-out geodatabases. Any versions created in an ArcSDE check-out geodatabase will also be removed. However, the copy of data that was checked out is not removed from the check-out geodatabase. The responsibility for deleting any residual copies of the data once check-in has completed remains with the user or data administrator.The check-in process may optionally involve an additional step of reconciling and posting the changes from the check-out version to its parent version in the master geodatabase. If any conflicts are detected at this stage, they must be resolved using standard geodatabase version reconciliation tools. If no conflicts were detected, the check

ArcCommunity

About Me

Kanpur/Almora, Uttar Pradesh, India