[QGIS-Developer] Drill-down (cascading) forms in QGIS Value Relation Widgets crowdfunding

Régis Haubourg regis.haubourg at gmail.com
Mon Apr 16 01:02:05 PDT 2018


jHi all,

to go in the same direction as Andreas, my opinion is that the three
relational widgets (value relation, relation reference, and 0-n/n-m one)
need some love and I was about to start redacting a global QEP for that.

There are a lot of features missing and glitches we would like to adress,
and drill down between fields is one of them.

Merging and coordinating efforts would be great!

I'm off the office right nown, but here are the requirements I had,
according to our experience at building business applications with QGIS:


# widgets naming

A common issue is that the names are not very self explaining on what use
case they adress.
In training sessions, I use this simplification :

 - value relation widget are best used to affect value list (also named
sometimes domains) codes when displaying other values like clear or short
names
 - reference relation is the "Foreign key" chooser between real features
(some are choosable on a map, others not)
 - the relation widget is the opposite of the reference relation widget,
displaying the "n" part in 1-n relations

# common features needed for all widgets

 We need the same options in both value relation and relation reference
widgets.

- chained / unchained filters with consolidated tests (we have a lot of
regressions in ther behavior)

- a common "search tool" to find features to relate when it's not possible
to click on it, and when the list is long.
- A KNN search filter for spatial objects would be a massive win there to
efficiently limit the list. Alternatively filtering in extent, and by any
configurable expression would be nice

We prob

# Value relation specific issues

- This tool substitutes codes by value almost everywhere in QGIS. We
however miss the ability to display that value in some parts of the UI,
like layer symbology or identify result dialog. That is a real trick for
users and being able to display both real and translated values would solve
that

# relation reference speficic issue

- This tool load a sub form when not in " readonly" mode. This is quite
expensive and if we merge both widgets, we should pay attention to be as
lite as possible.

# Performance issues

We found in 2.18.15 that there were hard coded thresholds changing how
relation reference widget was requestion sub features when entering in edit
mode. This led to a sudden massive freeze when having more than 100 000
potential related features. SQL request suddenly fetched data by blocks of
2000 from 1 per 1 fetches using classical selects.
When raised the threshold and switched sub form preloading to readonly.
Matthias improved a lot of things recently, IIRC like multi threaded loading

Globally, this raise the issue that current situation might not scale up
for big databases and we need to put that requirement in the scope.



So, maybe this work could be helped by grant applications and customer
direct funding. Anyway, we need to coordinate there.

My two cents,



Régis




Le 16 avr. 2018 08:21, "Andreas Neumann" <a.neumann at carto.net> a écrit :

Hi Nyall,

Interesting campaign and definitely some needed feature that will help
further improve forms in QGIS.

However, I wonder why you chose the "value relation widget" and not the
"relation reference widget". Both widget types have a larger overlap in
functionality and I did hope that we could get rid of one of the two
widgets in the future. Because from a user perspective it is confusing that
different widget types exist that do similar things.

I had the impression that the team around Denis/Matthias is pushing the
"relation reference widget" and had the plan to implement in the relation
reference widget everything the "value relation widget" does.

Matthias - please correct me if I am wrong.

Nyall/Matthias/Denis: What are your thoughts on the redundant functionality
in both widgets? Could we merge the two into one widget?

Greetings,
Andreas

On 2018-04-16 05:14, Nyall Dawson wrote:

Hi all,

North Road are proud to launch our latest QGIS crowd-funding campaign:
Drill-down (cascading) forms! This campaign covers extending the
functionality present in QGIS "Value Relation Widgets", allowing the
implementation of complex, dynamic filters within QGIS attribute
forms. The functionality can be used to implement "drill-down" forms
within QGIS, where the values available in one field depend on the
values of other fields.

Full details are available at the campaign page:
https://north-road.com/drill-down-cascading-forms/

We need your help to make this feature a reality! We need backers, but
just as importantly, we need people to spread the word about this
campaign so that all interested users and organisations hear about it.
Here are some ideas:

- spread the campaign page via your social media accounts: Twitter,
Linked in, etc
- forward a link to the campaign to any relevant professional networks
you're part of
- publicise the campaign via your local QGIS user group
- have a chat to your manager... if this feature will make your work
easier, and you've saved money by implementing QGIS within your
organisation, consider contributing and let us make your job easier!

Stay tuned for more updates and posts exploring this feature as the
campaign progresses...

Nyall
_______________________________________________
QGIS-Developer mailing list
QGIS-Developer at lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer


_______________________________________________
QGIS-Developer mailing list
QGIS-Developer at lists.osgeo.org
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20180416/e7487288/attachment.html>


More information about the QGIS-Developer mailing list