Esri / military-symbology

A user-focused add-in for searching, creating, and editing military symbols in ArcGIS Pro.
Apache License 2.0
39 stars 10 forks source link

Select Tool in the Modify Tab crashes Pro #214

Closed kgonzago closed 6 years ago

kgonzago commented 6 years ago

Chris McGuire from Defense Services reported the select tool in the Modify Tab crashed pro.

Given: ArcGIS Pro 2.1.1, Military Tools says 2.0 (date created says 6/28/2017 on AddinX file)

Here are the steps he took to repro his issue:

  1. Using the Military Overlay schema, he imported close to 1000 features (points) into the Land/Units feature class. He used the Append GP tool in Pro for the import process.
  2. He enabled the select tool in the Modify tab and selected a single point to start the process of changing symbols.
  3. Pro crashes immediately

(ADDED - more detailed steps):

  1. Start with/open the test project : Test-2525Bc2-Append.ppkx * --> https://esri.box.com/s/s9wefqejrrju2wofzhb79rmi3nj06ttt (note: requires Esri box login)

  2. Open the Military Symbol Editor

  3. Use the Select Tool on the Modify tabe to select on off the symbols with the "?" on the map

  4. Results: Pro Crash

  5. Expected Results: Can select the symbol and modify

step4-mse-modifyunit

* This Pro Project was created using the steps:

  1. Start Pro with New Map Project

  2. Launch Military Symbol Editor

  3. Create a 2525B Military Overlay project a. On Military Symbol Editor Search Tab b. Search for a symbol, click on symbol c. Click yes to add Military Overlay datamodel d. Save project

  4. Add non-military overlay test data to the project - from ConvexHullPoints.gdb --> https://esri.box.com/s/w8q3gdfh96igq8hw29r1ncki41ihvntz (note: requires Esri box login)

step1-addnonmopoints

  1. Run the Append GP Tool to append the ConvexHullPoints data to the Units Layer/FV:

step2-append

  1. Appended units not show up in Military Overlay units layer as "?" symbols

step3-afterappendpointstounits

  1. Save the Project

  2. Return to the steps to select the data from the Units Layer on the map in the repro steps above (at *)

kgonzago commented 6 years ago

Here is the data Chris was using: CmacConvexHullPoints.gdb.zip

csmoore commented 6 years ago

@kgonzago - I see what is happening in this scenario - by adding data to the Military Info Database with the append GP tool - some of the fields, but most importantly SymbolSet (2525D) or ExtendedFunctionCode (2525C), are unexpected null. Looks like we never planned for this scenario.

Fixing the crash would be simple, but getting things to fully work in this scenario might be more involved.

For now, the workaround would be to run CalculateField with a valid value on this required field. Example of the workaround:

image

(Added) We should probably also change the data model so that all of the feature classes have a good default value for this field - that will fix this scenario and make the overall solution more robust

csmoore commented 6 years ago

The crash that occurs when the symbol set (2525D) or Function Code (2525C/B) is fixed in this branch: https://github.com/Esri/military-symbol-editor-addin-wpf/tree/csm/%23214-null-symbolset-crash

However this does uncover some missing functionality in 2525D to fully support the workflow above. This workflow is: (1) import/append a table of existing data that lacks symbol information into the military overlay datamodel (2) use the military symbol editor to set the military symbol for the feature

Because in 2525D you can't change the symbol type (entity code) for a symbol you are modifying.

2525C/B2 does allow you to change the symbol type (function code):

image

csmoore commented 6 years ago

Moving into to Sprint 10

csmoore commented 6 years ago

Addressed crash in PR #221 + #223

Also updated original issue to add more steps and pro 2.1 project with test data.

I will also create a few additional issues with some things noticed while testing this (2525D can't change/modify the features entity field -#222, 2525B HQ/TF/FD modifier no longer working)

topowright-zz commented 6 years ago

I have been able to verify this issue using the test data provided above and the outlined steps:

image