What “tool” should I use for GUI in ArcMap 10.3

1474
2
07-13-2016 07:49 AM
BogdanMorosanu1
New Contributor II

I’m trying to find the best solution for adding/update a new/old record in a feature class in ArcMap 10.3 environment using a GUI. I’ve done some research for the last couple of days trying to identify the solution that will best fit my needs but because I haven’t got experience with developing for ArcMap I’ve ended up on this forum. My experience in programming is related to using VBA with Excel and AutoCAD and some Java and Python codding.

The main structure of the input is described in the picture bellow.

Basically it should collect some data based on a user input, get some additional input based on the initial input and add a new record in a polygon feature class.

Considering what I’ve understood so far it looks like I can use ArcObjects or a combination between Custom Script Tool and Python with a possibility of including PyQT as well . I’ve spent some time in trying to see if ArcObjects for .Net is the proper tool and looks like I will be able to get what I need but I was wondering if there is a better approach or if I can do it without ArcObjects. I am most worried about the select/create feature from the drawing with snapping capabilities and branching functionalities.

I would also much appreciate answers that can help in how or what NOT to use to achieve my goal.

add record GUI.png

Tags (1)
0 Kudos
2 Replies
RebeccaStrauch__GISP
MVP Emeritus

(I hate when my iPad eats my response before I send....non recoverable...ugh...so I'll try again)

Do you need this to be al in one tools? Or can you have it in a series of scripts/tools/butoons

I prefer is the use Python addin/tool, but that is because I like Python over .net/Java, for a few reason including

  • Geonet community very active, probably more active than the others. Not that there aren't a lot of people using it, but here you will typically get python questions answered right away
  • most help docs have Python samples that can be modifies or even used as-is in your tools
  • supported for developement by esri
  • i find it easy to learn, and they are many free resources for learning (several posts here listing many of them)

i use Python addins and have a few tips Tip: Python Addin - getting custom tools/toolbox to work - GPToolDialog

the things addin are not great for OTB are pop up dialog boxes and Pro will not be able to handle the toolbars. You will want to check out some of the blog posts re Coming to Python.... preparation and anticipation​ and best practices for Python Path Confusion​ for example before you start.

edit another link I was looking for The ...py... links

im going to close this comment before it crashes again.  If you don't want to go the Python route, speak up now or the thread may be dominated by Python.  

0 Kudos
BogdanMorosanu1
New Contributor II

No, I don’t mind splitting this into separate script/tools.

In fact, this GUI has only one purpose: to collect valid input for a new record in a polygon feature class. So to be able to replicate this with scripts/tools I guess that eventually I will run a master tool (that groups all the other ones) to get the same result: add a new record to a polygon feature class. Do you think that I will be able to get all the aforementioned functionality with (Python) scripts and tools only?

Functionality list:

  • Input Criteria:
    • Allow/Disallow users for input based on a previous input
  • Input ID:
    • Allow the user to edit a list that was previously built based on a search in a specified location. I think this one can be easily solved by adding another input for manual entries so the final result will be a merged list between found files and user specified files.
  • Input Geometry:
    • Allow the user to select a feature on the map or to draw it using the built in functionality that comes with ArcMap and then get the Spatial Related Input.

Without having a good understanding of how (Python) scripts/tools work I do believe that for this approach the way of getting the input must be simplified. I was thinking to start from an already drawn feature that has an attribute for the ID (the one used to search for the files). This way it will be possible for a tool to solve the ID related Input and Spatial Related Input.

0 Kudos