Select to view content in your preferred language

Create GUI usuing Python to edit Geodatabase

1337
10
11-01-2023 10:19 AM
GIS_GettingItSolved
Emerging Contributor

I'm new here and new to working with Python.  That said, I'm trying to create a GUI that includes dropdown menus that the user can use to edit a feature dataset.  I've been working with tkinter to create a GUI with the dropdown options but I'm running into a wall when I try to connect my GUI to my file geodatabase (fgdb).

My question is:  "Is it possible to create a GUI with dropdown menues' that can update a file geodatabase?

Thanks for any input/suggestions/comments!

Tags (1)
0 Kudos
10 Replies
AlfredBaldenweck
MVP Regular Contributor

Dumb question, but why not just edit in Pro?

GIS_GettingItSolved
Emerging Contributor

lol...not dumb at all!  I asked that same question but was asked to create a gui that can do this.

0 Kudos
BlakeTerhune
MVP Regular Contributor

Yeah, this sounds like it's going down a dark path. Maybe look into creating geoprocessing tools in a Python Toolbox? Or maybe Attribute Rules? Or a custom add-in, if you're willing to step away from Python development. Or heck, maybe you can publish some feature layers and create a web app to edit the data. Either a custom JS app or built with Experience Builder.

0 Kudos
GIS_GettingItSolved
Emerging Contributor

Agreed about the 'dark path' and many thanks for that suggestions!

0 Kudos
DanPatterson
MVP Esteemed Contributor

Make a project template to share with multiple users

Create a project template—ArcGIS Pro | Documentation

 

and see if the custom toolbars can be saved to it

Customize ArcGIS Pro with geoprocessing tools—ArcGIS Pro | Documentation

(put the tools you need on it or course)

 


... sort of retired...
0 Kudos
GIS_GettingItSolved
Emerging Contributor

Hi Dan.  Thanks for those suggestions.  I'll definitely consider looking into that as an option!

 

 

0 Kudos
HaydenWelch
Frequent Contributor

@GIS_GettingItSolved wrote:

I'm new here and new to working with Python.


This will require you to both build a custom GUI (TkInter) and find a way to manage the backend data. This will get really complex really fast especially if you're a solo dev with minimal Python experience (even if you have a small team with decent experience it's hard).

Ideally you will build python toolboxes using ArcPro's built in "GUI" editor that allows you to easily build GP interfaces.

Instead of moving Arc functionality outside Pro, try doing the opposite and writing tools that add non-Arc functionality to Pro.

Side Note: Remember, arcpy only works if ArcPro is installed on the users computer and they have a valid license, If they're asking you to build a separate GUI to avoid license restrictions they're gonna be pretty upset.

0 Kudos
GIS_GettingItSolved
Emerging Contributor

Hi Hayden.  Thanks for your reply!  Your comments are insightful and well-reasoned.  Yes, I agree with you regarding adding non-Arc functionality to Pro.  I'll look at my problem with that mindset.

0 Kudos
StaticK
MVP

I developed a couple standalone PyQt applications over the years so it is doable. These were designed for non-GIS users to consume and create GIS data for their department. They helped non-GIS users create and manage GIS data, generate inspection permits, and manage attachments within an sde. Pro or ArcMap is a bit intimidating to someone that just needs to enter an address and print a permit if one doesn't exist.

The stability of them were terrible and when I discovered the Core Host application, I migrated them to Core host applications.

There is also the ArcGIS Pro SDK, which extends the ability to create custom tools with Pro if you are familiar with C#.

 

0 Kudos