Alterar as propriedades do campo padrão para o formato numérico no ArcMap?

8

Qualquer pessoa que tenha trabalhado com números com mais de 14 dígitos adquire o maravilhoso hábito do ArcMap de converter qualquer número desse tamanho em notação eletrônica. Embora alterar isso seja uma simples questão de acessar as Propriedades do campo e definir o formato do número, fazer isso repetidamente para todos os campos de todas as tabelas que se torna cansativo. Existe alguma configuração ou método de ambiente secreto para tornar os formatos numéricos padrão para algo além de "Numérico"?

Nathanus
fonte
Você está procurando uma solução programática ?
Kirk Kuykendall
Só estou procurando uma solução. As chances são de que um ArcObjects esteja fora do meu escopo, a menos que seja um AddIn já construído.
Nathanus
@Kirk Depois de cavar para ArcObjects um pouco na semana passada, parece que a interface INumberFormat só é útil para mudar a forma como o campo exibe quando você usa valuetostringe stringtovaluemétodos. É esse o caso ou realmente ajustará a maneira como é vista na tabela no ArcMap?
Nathanus
Desculpe, você deve poder convertê -lo para INumericFormat .
Kirk Kuykendall
Isso geralmente é uma limitação do banco de dados (15) e não é específico do ArcGIS, deixando isso de lado, é curto, longo, duplo ou flutuante?
CDBrown 22/09/11

Respostas:

4

O melhor que posso dizer é que a resposta é não, não é possível definir o formato de número padrão, não sem programação (e, para isso, começaria com INumericFormat, conforme observado por Kirk. Veja o exemplo em radial de ângulo decimal e formato de moeda ) .

Além disso, a propriedade de exibição numérica é armazenada no arquivo de mapa (.mxd) ou de camada (.lyr) e não uma propriedade na própria tabela, portanto, quaisquer alterações feitas de maneira interativa ou através da programação como a acima não se aplicarão a novos dados. Alterar o tipo numérico do campo no momento da criação para dobrar, flutuar etc. também não ajudará, pelo mesmo motivo (não é uma propriedade de campo ou tabela).

Presumivelmente, isso significa que o único caminho a seguir é esperar que alguém construa e compartilhe um botão "alterar formato numérico para todas as camadas selecionadas" no Arcmap e / ou publique uma solicitação de recurso em http://ideas.arcgis.com e espere os poderes que decida que vale a pena implementar como preferência do usuário.

Matt Wilson
fonte
2

Encontrei a próxima solução:

Carto.FeatureLayerimplementos Geodatabase.ITableFieldse Geodatabase.ILayerFieldsinterfaces de classe . Através de uma dessas duas interfaces, você pode acessar o FieldInfotipo de propriedade Geodatabase.IFieldInfo. Então use a IFieldInfo.NumberFormatpropriedade

Igor Cheremushkin
fonte