¿Cambiar las propiedades de campo predeterminadas para el formato de número en ArcMap?

8

Cualquiera que haya trabajado con números que tengan más de 14 dígitos se ha encontrado con el maravilloso hábito de ArcMap de convertir cualquier número de tal longitud a notación electrónica. Si bien cambiar esto es una simple cuestión de ir a las Propiedades del campo y establecer el formato de número, hacer esto repetidamente para cada campo en cada tabla se vuelve agotador. ¿Existe alguna configuración o método de entorno secreto para hacer que los formatos de número sean predeterminados para algo además de "Numérico"?

Nathanus
fuente
¿Estás buscando una solución programática ?
Kirk Kuykendall
Solo estoy buscando una solución. Sin embargo, lo más probable es que un ArcObjects uno esté fuera de mi alcance, a menos que sea un complemento ya construido.
Nathanus
@Kirk Después de la excavación en ArcObjects un poco en la última semana, parece que la interfaz INumberFormat sólo es útil para cambiar la forma en que las pantallas de campo cuando se utiliza valuetostringy stringtovaluemétodos. ¿Es este el caso, o realmente ajustará la forma en que se ve en la tabla en ArcMap?
Nathanus
Lo sentimos, deberías poder enviarlo a INumericFormat .
Kirk Kuykendall
Esto generalmente es una limitación de la base de datos (15) y no es específica de ArcGIS, dejando esto de lado, ¿es Corto, Largo, Doble o Flotante?
CDBrown

Respuestas:

4

Lo mejor que puedo decir es que la respuesta es no, uno no puede establecer el formato de número predeterminado, no sin programación (y para eso comenzaría con INumericFormat como lo señaló Kirk. Vea el ejemplo para el ángulo decimal en radianes y el formato de moneda ) .

Además, la propiedad de visualización numérica se almacena en el mapa (.mxd) o el archivo de capa (.lyr) y no es una propiedad de la tabla en sí, por lo que los cambios realizados de forma interactiva o mediante la programación como la anterior no se aplicarán a los datos nuevos. Cambiar el tipo numérico de campo en el momento de la creación a doublem, float, etc. tampoco ayudará, por la misma razón (no es una propiedad de campo o tabla).

Presumiblemente, esto significa que el único camino a seguir es esperar que alguien construya y comparta un botón de "cambiar el formato numérico para todas las capas seleccionadas" en Arcmap, y / o publicar una solicitud de entidad en http://ideas.arcgis.com y esperar los poderes que decida que vale la pena implementarlo como preferencia del usuario.

wilkie mate
fuente
2

Encontré la siguiente solución:

Carto.FeatureLayerImplementos de clase Geodatabase.ITableFieldse Geodatabase.ILayerFieldsinterfaces. A través de una de estas dos interfaces puede acceder FieldInfoal tipo de propiedad de Geodatabase.IFieldInfo. Luego usa la IFieldInfo.NumberFormatpropiedad.

Igor Cheremushkin
fuente