-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update default form definitions for Geo #5367
base: production
Are you sure you want to change the base?
Conversation
Restructures common.views.xml for the first time in years based on the linting done by Specify 7 Fixes #5311
Solves part of #1254
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Testing instructions
- Create a new
DataObjFormatters
app resource and verify that all table formats and aggregations appear as expected - Build queries and return the (formatted) and (aggregated) results of as many tables as you can, with a focus on new Geo tables. If a table format or aggregation is missing where it should be included, let me know. Some tables (e.g.
*property
,*attribute
,*groupjoin
) do not have a table format or aggregation defined as it is ambiguous as to which fields we should display. - Create a new
TypeSearches
app resource and verify that it is working as expected. Delete this resource after it is populated as you should be using the default. - Open the
CollectionRelType
form and search for a collection. You should be able to type the name of a collection and select it. You will encounterHierarchyException
when loading Collectionreltype #4989, but that is not in the scope of this issue, and you can safely dismiss it. - Create an
ExportFeed
app resource and verify that you can search for a user in the database by name. You should see the name appear correctly and you should be able to search for a user in the query combo box without the 🔍 QB function. - Create a new
WebLinks
app resource and verify that all web links (~5) appear and work as expected. See this guide for setting up a conditional form onAgentIdentifier
to leverage those new web links. - Verify that the
geology.views.xml
can be used as the basis of a new form (create a new form definition and selectGeology
). Let me know what you think. This is subjective to some extent, and I welcome suggested changes (especially via XML snippets).
- Test that these new view definitions (mostly shown in this issue's body) are displayed properly (compare to defaults on
production
):-
CollectionRelType
- Verify that you can create a Collection Relationship without the query builder (ignoring this error)
-
Agent
should default toPerson
instead ofOrganization
finally!-
Agent
conditional: If the agent is not aGroup
, theMembers
subview should not be shown.
-
-
TectonicUnit
-
TectonicUnitTreeDef
-
TectonicUnitTreeDefItem
-
TaxonTreeDef
-
Taxon
-
Taxon
conditional: Verify that when you checkIsHybrid
the fieldsHybridParent1
andHybridParent2
appear. When it is not checked, they should not appear.
-
-
GeographyTreeDef
-
StroageTreeDef
-
LithoStratTreeDef
-
GeologicTimePeriodTreeDef
-
RelativeAge
-
AbsoluteAge
-
PickList
- Set the size limit to
-1
and verify that you can add any number of pick list items (>500– and you can use the workbench to add the first 500)
- Set the size limit to
-
PickListItem
-
SpAppResource
(click pencil next to the title of an app resource)-
SpAppResource
conditional (should showReports
subview button if the resource is a report/label)-
SpReport
form should show ownership, associated query, title, in a read-only view
-
-
-
SpViewSetObj
(click pencil next to the title of a form definition) -
SpQuery
(click pencil next to a query title)- Verify that you can change the ownership of a query
-
RecordSet
(click pencil next to a record set title)- Verify that you can change the ownership of a record set
-
AgentIdentifier
– navigate directly to the form via the data entry menu or by modifying the URL. It should no longer be auto-generated
-
- Double-check that your testing covers all cases reported
Looking good! A lot of longstanding issues are addressed 👍
Here's some things I found so far (not sure if all of these are issues):
- There's no formatter defined for Tectonic Units
- The pick list form doesn't conditionally hide certain fields like max mentioned in Change default forms to hide portions of agents form depending on agent type using conditional forms #364 (comment). I think it would be nice, but its functional anyway
- I am not getting a report subview button for reports. Labels yes.
- SpReport fields don't appear read-only
- I cannot change ownership of record set
I can investigate these further to see if any of these are a mistake on my part
Hi @alesan99 – thank you for your review! Added TectonicUnit table format in
Oh, good! I was hoping they would be editable. Not sure why they weren't in my database.
I consciously decided against making this a conditional form, but it might be worth revisiting in the future. I didn't want to obscure data that was still captured in the database record.
Fixed in |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! I only have some suggestions for COG-related viewdefs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixes #5311, #5073, #3120, #2153, #1515, #584, #364, specify/specify6#1210, specify/specify6#1213, specify/specify6#1229, specify/specify6#1232, #4591, #5020, #2016 and specify/specify6#1223
This PR is intended to update underlying app resources necessary for the
geology
discipline as well as improve other defaults where possible.Geo-focused Improvements
CollectionObject
form for GeologyCommon Views
RelativeAge
Added
AbsoluteAge
formAdded
TectonicUnit
formAdded
TectonicUnitTreeDef
formAdded
TectonicUnitTreeDefItem
formMajor Improvements
Type Searches
Collection
,Institution
, andSpecifyUser
, improving a number of places around the app!Record Sets
Agent
Screen.Recording.2024-11-07.at.9.56.15.AM.mov
Person
is now the default value (huge improvement)Group
will themembers
subview displayTaxon
hybridFieldsConditional.mov
HybridParent
fields only whenIsHybrid
is checkedCollection Relationships
Old form:
New form:
App Resources
AppResource
Reports
jrxml/label
SpReport
form for the first timeSpViewSetObj
Pick List
Old form:
New form:
-1
Tree Definition
Old Tree Definition form:
New Tree Definition form:
Miscellaneous Improvements
countAmt
can no longer be set to a negative number by defaultDataObjFormatters
have finally been reformatted by the built-in Specify 7 systemTesting instructions
THIS MUST BE TESTED LOCALLY UNTIL THE TEST PANEL SUPPORTS STATIC FILES
Okay, so this PR is big, but it is almost entirely XML changes. This touches a lot of the default forms, so I have a big ask– please test the following XML resources in Specify. You are likely to find issues that aren't related to this PR which I am happy to resolve, so report them. If it grows outside the scope of this, I'll open another and we'll resolve it in the future.
Remember to delete any custom form definitions / app resources before testing this as those will be used first.
DataObjFormatters
app resource and verify that all table formats and aggregations appear as expected*property
,*attribute
,*groupjoin
) do not have a table format or aggregation defined as it is ambiguous as to which fields we should display.TypeSearches
app resource and verify that it is working as expected. Delete this resource after it is populated as you should be using the default.CollectionRelType
form and search for a collection. You should be able to type the name of a collection and select it. You will encounterHierarchyException
when loading Collectionreltype #4989, but that is not in the scope of this issue, and you can safely dismiss it.ExportFeed
app resource and verify that you can search for a user in the database by name. You should see the name appear correctly and you should be able to search for a user in the query combo box without the 🔍 QB function.WebLinks
app resource and verify that all web links (~5) appear and work as expected. See this guide for setting up a conditional form onAgentIdentifier
to leverage those new web links.geology.views.xml
can be used as the basis of a new form (create a new form definition and selectGeology
). Let me know what you think. This is subjective to some extent, and I welcome suggested changes (especially via XML snippets).production
):CollectionRelType
Agent
should default toPerson
instead ofOrganization
finally!Agent
conditional: If the agent is not aGroup
, theMembers
subview should not be shown.TectonicUnit
TectonicUnitTreeDef
TectonicUnitTreeDefItem
TaxonTreeDef
Taxon
Taxon
conditional: Verify that when you checkIsHybrid
the fieldsHybridParent1
andHybridParent2
appear. When it is not checked, they should not appear.GeographyTreeDef
StroageTreeDef
LithoStratTreeDef
GeologicTimePeriodTreeDef
RelativeAge
AbsoluteAge
PickList
-1
and verify that you can add any number of pick list items (>500– and you can use the workbench to add the first 500)PickListItem
SpAppResource
(click pencil next to the title of an app resource)SpAppResource
conditional (should showReports
subview button if the resource is a report/label)SpReport
form should show ownership, associated query, title, in a read-only viewSpViewSetObj
(click pencil next to the title of a form definition)SpQuery
(click pencil next to a query title)RecordSet
(click pencil next to a record set title)AgentIdentifier
– navigate directly to the form via the data entry menu or by modifying the URL. It should no longer be auto-generatedAccession
table does not have adeaccessions
field. specify6#1232, bug(default-forms): Form is named AgentIdentifiers, but table is named AgentIdentifier #4591, Visual Export Feed QCBX displays all users as <Formatter not defined.> #5020, Paleocontext should have an accepted field for lithostrat of chronostrat #2016, and common/common.views.xml: PHSub Form: Cell is missing proper closing element /> specify6#1223