Filter on empty field

Hi, I’m using Gramps 5.2.3 on Linux. I’m trying to keep track of things to do in my research using filters to find things I can improve.

How could I create a filter to find events that have an empty date or place?

It all depends on which empty field you’re seeking.

If there is a view that has that field as a column (or as a View -> Configure... column that you can enable), then sorting on that column is the easiest approach. (The 1st column is the default sort column. Click on other column headers to sort on it. Click a 2nd time to reverse the sort order.)

For other fields, create a Custom Filter with a rule (for that field) which finds ANY data in that field using the Regular Expressions option. Then select the “Return values that do not match the filter rules” option in the Define filter dialog.

In the following “Events matching parameters” rule, the “Description” has a dot/decimal point/period with “Use regular expressions” selected. That means find any Event with a description.

Then the Custom Filter definition is where the “Return values that do not match the filter rules” option is selected.

It works well with description, but not with date nor place… I’m trying to compose this with different filters, so I cannot simply sort a column.

There is an addon filter rule to find events with date information that Gramps does not recognize as valid. The dates that display as bold italic. HasInValidDate

There is its sister addon rule HasValidDate

In the Events View, create three custom filters.

Filter 1:
Events filters > HasInValidDate
“Return values that do not match the filter rules” option checked

Filter 2:
Events filters > HasValidDate
“Return values that do not match the filter rules” option checked

Filter 3
General filters > Events matching the <filter> select Filter 1
General filters > Events matching the <filter> select Filter 2
Make sure that the option is that all rules must apply

Running Filter 3 returns events with blank date fields.

1 Like

In the Events View, create the custom filter:

Event filters > Events matching parameters
Using the “Use regular expression” option put the dot (.) in the Place field and then check the “Return values that do not match the filter rules” option.

These filters are created in the Events view. To find the People with these events create the filter in the People view:

Events filters > People with events matching <event filter>

As a shortcut to finding the appropriate rule, consider using the Filter+ addon gramplet from the Isotammi project.

After putting a period/dot into the Filter+ field and selecting “Use regular expressions”, the Find will find any record with data in that field.

Since you want the opposite (any record without data in the field) and the Filter+ gramplet cannot invert easily, convert the parameters to a cutom filter with the Define filter button. Then use the define custom filter’s option to “Return values that do not match filter rules

Difference between a built-in Filter gramplet and the Filter+ gramplet in the Families category views:


Please refresh my memory on how to get the Filter+ installed. I lost it when I moved to 5.2.3 and I don’t see it using the add on manager.

See the instructions at:
https://www.gramps-project.org/wiki/index.php/Addon:Isotammi_addons#Installation

The key points are:

  1. Adding the Isotammi Project to the list in the Addon Manager’s Projects tab.
  2. Selecting that added project.
  3. Changing the Audience Filter from “Everyone” to “Expert”. (All Isotammi plugins are “Expert” level tools.)


I checked and that is what I have.
I see that there is a Generic People Filter and I assume that is the Filter+, however in the Add Grampet menu there is nothing that represents such a filter.

Those generic filters are what SuperTool uses for coded filters rather than Rules.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.