1

Topic: Recorder 6 Upgrade 6.22.2 Build 273

Recorder 6 upgrade v6.22 is now available from the Recorder 6  web site.   http://jncc.defra.gov.uk/page-4612

Please make sure you read the release notes carefully before installing. These ae included on the R6 website , but also attached to this post.  There is a major change in the way the Index_Taxon_Group table is  populated and this may affect  external systems or user added XML reports which use this table.  This change also affects table Index_Taxon_Designation in that this now uses the Organism table to expand the  taxonomic hierarchy, avoiding the problems caused by poorly constructed lists. This may impact on users who use their own sotware to manipulate R6 output. 

Also please note the details of additional addins which are covered  in the release notes and available on the  http://jncc.defra.gov.uk/page-4597   Most of these addins will work on earlier releases of Recorder 6, but please read the release notes.

There will be no release of Recorder 6  v6.20 or 6.21. Users who have installed the release candidate version 6.20/ 6.21 should run this upgrade to v6.22.

After the upgrade the five index tables must be rebuilt in the order they appear in the menu.


Please report any problems on the forum.

Post's attachments

Rec6_v622_ReleaseNotes.zip 26.6 kb, 18 downloads since 2014-03-14 

You don't have the permssions to download the attachments of this post.
Mike Weideli

2

Re: Recorder 6 Upgrade 6.22.2 Build 273

No issues with upgrade and new Addins.

Les Evans-Hill
Senior Data Officer, National Moth Recording Scheme

3

Re: Recorder 6 Upgrade 6.22.2 Build 273

Thanks Mike, one thing though, the release notes are not included in the download for the upgrade (I have downloaded them from your link above).

Also there is a bugreport.txt file in the upgrade folder, should that be there?

Finally and this is the big one. I think the release notes need to be clearer about the potential impact of the changes to INDEX_TAXON_GROUP. You suggest that we should consider this, but it is not clear precisely what the change is. As a result I find it hard to see how I can anticipate problems in the many xml reports, user functions and views I have created, or in any of our external processes which access this table, or how I should modify code to get around such problems.

The release notes say "Table  Index_Taxon_Group  now only contains recommended entries, based on the Organism table." Should I interpret this as meaning that some XML may fail to return all the expected records, or may report them incorrectly, or even cause errors?

It is a not inconsiderable task for me to just go through and identify all the instances where I have referenced the group index, but even if I did this, I cannot fix it without understanding a bit more. At best I could produce some test output before and after the upgrade & try to identify if they differ and why.

Should I be using Index_taxon_name to convert TLIKs into recommended TLIKs prior to usingt he Index_taxon_group?

Please can you clarify. I am reluctant to install until I have a handle on this.

Rob Large
Wildlife Sites Officer
Wiltshire & Swindon Biological Records Centre

4

Re: Recorder 6 Upgrade 6.22.2 Build 273

I appreciate the concern regarding Index_taxon_Group, hence my warning. I will write something explaining what has happened with it. If you have used Index Taxon Group anywhere then don't install this upgrade until you have looked at the effect.  It would be helpful to know what you have used it for.

Agreed BugReport.txt shouldn't be there will not do any harm.

Mike Weideli

5

Re: Recorder 6 Upgrade 6.22.2 Build 273

Thanks Mike

I know I have used it, but at the moment I cannot remember what for. Might take a good while to find out. I have so many things to look through. Oh well, there are worse ways to spend a friday I guess...

Rob Large
Wildlife Sites Officer
Wiltshire & Swindon Biological Records Centre

6

Re: Recorder 6 Upgrade 6.22.2 Build 273

Oh well, I've reverted back to v6.21.1.270 and restored my pre-upgrade NBNData. I have a custom-written piece of SQL to export the NMRS database in the NBN Exchange format and it fails to write any records under the new version. So upgrading for me was a show-stopper.

Here's the code for info:

SELECT     TAXON_OCCURRENCE.TAXON_OCCURRENCE_KEY AS RecordKey, 
                      TAXON_LIST_ITEM.TAXON_VERSION_KEY AS TaxonVersionKey, 
                      SURVEY_EVENT.SURVEY_KEY AS SurveyKey, 
                      SAMPLE.SAMPLE_KEY AS SampleKey, 
                      dbo.nbn_exchange_date_to_string(SAMPLE.VAGUE_DATE_START) AS StartDate,
                      dbo.nbn_exchange_date_to_string(SAMPLE.VAGUE_DATE_END)AS EndDate, 
                      SAMPLE.VAGUE_DATE_TYPE AS DateType, 
                      SAMPLE.SPATIAL_REF AS GridReference, 
                      SAMPLE.SPATIAL_REF_SYSTEM AS Projection, 
                      CASE SAMPLE.SPATIAL_REF_SYSTEM WHEN 'OSGB' THEN CASE LEN(SAMPLE.SPATIAL_REF) 
                           WHEN 4 THEN 10000 WHEN 5 THEN 2000 WHEN 6 THEN 1000 WHEN 8 THEN 100 WHEN 10 THEN 10 ELSE 1 END WHEN 'OSNI' THEN CASE LEN(SAMPLE.SPATIAL_REF)
                           WHEN 3 THEN 10000 WHEN 4 THEN 2000 WHEN 5 THEN 1000 WHEN 7 THEN 100 WHEN 9 THEN 10 ELSE 1 END END AS [Precision], 
                      CASE CONFIDENTIAL WHEN 1 THEN 'T' ELSE 'F' END AS Sensitive, 
                      CASE ZERO_ABUNDANCE WHEN 1 THEN 'T' ELSE 'F' END AS ZeroAbundance, 
                      ISNULL(SAMPLE.LOCATION_KEY,'') AS SiteKey, 
                      SUBSTRING(ISNULL(SAMPLE.LOCATION_NAME, '') + (CASE SAMPLE.LOCATION_NAME WHEN NULL THEN '' ELSE ', ' END) 
                            + ISNULL(LOCATION_NAME.ITEM_NAME, ''),1,80) AS SiteName, 
                      SAMPLE_TYPE.SHORT_NAME AS SampleMethod, 
                      dbo.FormatEventRecorders(SAMPLE.SAMPLE_KEY) as Recorder, 
                      dbo.ufn_GetFormattedName(TAXON_DETERMINATION.DETERMINER) as Determiner,
                      ISNULL(dbo.LCFormatAbundanceData(TAXON_OCCURRENCE.TAXON_OCCURRENCE_KEY),'') as Abundance, 
                      ISNULL(SUBSTRING(dbo.ufn_RtfToPlaintext(CAST(TAXON_OCCURRENCE.COMMENT AS VARCHAR)),1,255), '') AS Comment
FROM         TAXON_OCCURRENCE INNER JOIN
                      TAXON_DETERMINATION ON TAXON_OCCURRENCE.TAXON_OCCURRENCE_KEY = TAXON_DETERMINATION.TAXON_OCCURRENCE_KEY INNER JOIN
                      TAXON_LIST_ITEM ON TAXON_DETERMINATION.TAXON_LIST_ITEM_KEY = TAXON_LIST_ITEM.TAXON_LIST_ITEM_KEY INNER JOIN
                      SAMPLE ON TAXON_OCCURRENCE.SAMPLE_KEY = SAMPLE.SAMPLE_KEY INNER JOIN
                      SURVEY_EVENT ON SAMPLE.SURVEY_EVENT_KEY = SURVEY_EVENT.SURVEY_EVENT_KEY INNER JOIN
                      SAMPLE_TYPE ON SAMPLE.SAMPLE_TYPE_KEY = SAMPLE_TYPE.SAMPLE_TYPE_KEY LEFT OUTER JOIN
                      LOCATION_NAME ON SAMPLE.LOCATION_KEY = LOCATION_NAME.LOCATION_KEY INNER JOIN
                          (SELECT     TAXON_OCCURRENCE_1.TAXON_OCCURRENCE_KEY
                            FROM          TAXON_OCCURRENCE AS TAXON_OCCURRENCE_1 INNER JOIN
                                                   TAXON_DETERMINATION AS TAXON_DETERMINATION_1 ON 
                                                   TAXON_OCCURRENCE_1.TAXON_OCCURRENCE_KEY = TAXON_DETERMINATION_1.TAXON_OCCURRENCE_KEY INNER JOIN
                                                   INDEX_TAXON_GROUP INNER JOIN
                                                   EXPORT_FILTER_TAXON ON 
                                                   INDEX_TAXON_GROUP.TAXON_LIST_ITEM_KEY = EXPORT_FILTER_TAXON.TAXON_LIST_ITEM_KEY INNER JOIN
                                                   INDEX_TAXON_SYNONYM ON 
                                                   INDEX_TAXON_GROUP.CONTAINED_LIST_ITEM_KEY = INDEX_TAXON_SYNONYM.TAXON_LIST_ITEM_KEY ON 
                                                   TAXON_DETERMINATION_1.TAXON_LIST_ITEM_KEY = INDEX_TAXON_SYNONYM.SYNONYM_LIST_ITEM_KEY
                            WHERE      (EXPORT_FILTER_TAXON.EXPORT_FILTER_KEY = 'JNCCDEV100000001') AND (TAXON_DETERMINATION_1.PREFERRED = 1) AND 
                                                   (TAXON_OCCURRENCE_1.VERIFIED <> 1) AND (TAXON_OCCURRENCE_1.CHECKED = 1)
                            GROUP BY TAXON_OCCURRENCE_1.TAXON_OCCURRENCE_KEY) AS TOK ON 
                      TAXON_OCCURRENCE.TAXON_OCCURRENCE_KEY = TOK.TAXON_OCCURRENCE_KEY
WHERE     (TAXON_DETERMINATION.PREFERRED = 1) AND (TAXON_OCCURRENCE.VERIFIED <> 1) AND (TAXON_OCCURRENCE.CHECKED = 1) AND 
                      (SAMPLE.SPATIAL_REF_SYSTEM = 'OSGB' OR
                      SAMPLE.SPATIAL_REF_SYSTEM = 'OSNI') AND (LOCATION_NAME.PREFERRED IS NULL OR
                      LOCATION_NAME.PREFERRED = 1)
Les Evans-Hill
Senior Data Officer, National Moth Recording Scheme

7

Re: Recorder 6 Upgrade 6.22.2 Build 273

Index Taxon Group in this will cause a problem.  It will get back to you when I have worked through your query.

Mike Weideli

8 (edited by martinsanford 14-03-2014 12:28:10)

Re: Recorder 6 Upgrade 6.22.2 Build 273

It looks like the link on the Dictionary Downloads page for 0000001X,IY,1Z,20,21,22,23.zip is actually pointing to http://jncc.defra.gov.uk/Files/Rec6Dict … nzipMe.zip

9

Re: Recorder 6 Upgrade 6.22.2 Build 273

Many thanks Mike. Originally written by Stuart Ball as an SQL SSIS module in place of the NBN Exchange Addin which isn't capable of handling the NMRS export in one go.

Les Evans-Hill
Senior Data Officer, National Moth Recording Scheme

10

Re: Recorder 6 Upgrade 6.22.2 Build 273

Hi Les

Could you try this please. It is difficult working trhough a query when you don't have the data, but i think you are using Index_taxon_group  in conjunction with Index_taxon_synonym to find all possible related Taxon_list_Item_keys. This query should do the same thing.  It will run on version 6.21 so you can try it out. It might include more/different records and if so if you can give me an indication of what is wrong  I will have another go.
                     
SELECT     TAXON_OCCURRENCE.TAXON_OCCURRENCE_KEY AS RecordKey,
                      TAXON_LIST_ITEM.TAXON_VERSION_KEY AS TaxonVersionKey,
                      SURVEY_EVENT.SURVEY_KEY AS SurveyKey,
                      SAMPLE.SAMPLE_KEY AS SampleKey,
                      dbo.nbn_exchange_date_to_string(SAMPLE.VAGUE_DATE_START) AS StartDate,
                      dbo.nbn_exchange_date_to_string(SAMPLE.VAGUE_DATE_END)AS EndDate,
                      SAMPLE.VAGUE_DATE_TYPE AS DateType,
                      SAMPLE.SPATIAL_REF AS GridReference,
                      SAMPLE.SPATIAL_REF_SYSTEM AS Projection,
                      CASE SAMPLE.SPATIAL_REF_SYSTEM WHEN 'OSGB' THEN CASE LEN(SAMPLE.SPATIAL_REF)
                           WHEN 4 THEN 10000 WHEN 5 THEN 2000 WHEN 6 THEN 1000 WHEN 8 THEN 100 WHEN 10 THEN 10 ELSE 1 END WHEN 'OSNI' THEN CASE LEN(SAMPLE.SPATIAL_REF)
                           WHEN 3 THEN 10000 WHEN 4 THEN 2000 WHEN 5 THEN 1000 WHEN 7 THEN 100 WHEN 9 THEN 10 ELSE 1 END END AS [Precision],
                      CASE CONFIDENTIAL WHEN 1 THEN 'T' ELSE 'F' END AS Sensitive,
                      CASE ZERO_ABUNDANCE WHEN 1 THEN 'T' ELSE 'F' END AS ZeroAbundance,
                      ISNULL(SAMPLE.LOCATION_KEY,'') AS SiteKey,
                      SUBSTRING(ISNULL(SAMPLE.LOCATION_NAME, '') + (CASE SAMPLE.LOCATION_NAME WHEN NULL THEN '' ELSE ', ' END)
                            + ISNULL(LOCATION_NAME.ITEM_NAME, ''),1,80) AS SiteName,
                      SAMPLE_TYPE.SHORT_NAME AS SampleMethod,
                      dbo.FormatEventRecorders(SAMPLE.SAMPLE_KEY) as Recorder,
                      dbo.ufn_GetFormattedName(TAXON_DETERMINATION.DETERMINER) as Determiner,
                      ISNULL(dbo.LCFormatAbundanceData(TAXON_OCCURRENCE.TAXON_OCCURRENCE_KEY),'') as Abundance,
                      ISNULL(SUBSTRING(dbo.ufn_RtfToPlaintext(CAST(TAXON_OCCURRENCE.COMMENT AS VARCHAR)),1,255), '') AS Comment
FROM         TAXON_OCCURRENCE INNER JOIN
                      TAXON_DETERMINATION ON TAXON_OCCURRENCE.TAXON_OCCURRENCE_KEY = TAXON_DETERMINATION.TAXON_OCCURRENCE_KEY INNER JOIN
                      TAXON_LIST_ITEM ON TAXON_DETERMINATION.TAXON_LIST_ITEM_KEY = TAXON_LIST_ITEM.TAXON_LIST_ITEM_KEY INNER JOIN
                      SAMPLE ON TAXON_OCCURRENCE.SAMPLE_KEY = SAMPLE.SAMPLE_KEY INNER JOIN
                      SURVEY_EVENT ON SAMPLE.SURVEY_EVENT_KEY = SURVEY_EVENT.SURVEY_EVENT_KEY INNER JOIN
                      SAMPLE_TYPE ON SAMPLE.SAMPLE_TYPE_KEY = SAMPLE_TYPE.SAMPLE_TYPE_KEY LEFT OUTER JOIN
                      LOCATION_NAME ON SAMPLE.LOCATION_KEY = LOCATION_NAME.LOCATION_KEY INNER JOIN
                          (SELECT     TAXON_OCCURRENCE_1.TAXON_OCCURRENCE_KEY
                            FROM          TAXON_OCCURRENCE AS TAXON_OCCURRENCE_1 INNER JOIN
                                                   TAXON_DETERMINATION AS TAXON_DETERMINATION_1 ON
                                                   TAXON_OCCURRENCE_1.TAXON_OCCURRENCE_KEY = TAXON_DETERMINATION_1.TAXON_OCCURRENCE_KEY INNER JOIN
                                                   INDEX_TAXON_NAME INNER JOIN
                                                   EXPORT_FILTER_TAXON ON
                                                   INDEX_TAXON_NAME.TAXON_LIST_ITEM_KEY = EXPORT_FILTER_TAXON.TAXON_LIST_ITEM_KEY INNER JOIN
                                                   INDEX_TAXON_NAME ITN2
                                                   ON ITN2.RECOMMENDED_TAXON_LIST_ITEM_KEY = INDEX_TAXON_NAME.RECOMMENDED_TAXON_LIST_ITEM_KEY
                                                   ON TAXON_DETERMINATION_1.TAXON_LIST_ITEM_KEY = ITN2.TAXON_LIST_ITEM_KEY
                            WHERE      (EXPORT_FILTER_TAXON.EXPORT_FILTER_KEY = 'JNCCDEV100000001') AND (TAXON_DETERMINATION_1.PREFERRED = 1) AND
                                                   (TAXON_OCCURRENCE_1.VERIFIED <> 1) AND (TAXON_OCCURRENCE_1.CHECKED = 1)
                            GROUP BY TAXON_OCCURRENCE_1.TAXON_OCCURRENCE_KEY) AS TOK ON
                      TAXON_OCCURRENCE.TAXON_OCCURRENCE_KEY = TOK.TAXON_OCCURRENCE_KEY
WHERE     (TAXON_DETERMINATION.PREFERRED = 1) AND (TAXON_OCCURRENCE.VERIFIED <> 1) AND (TAXON_OCCURRENCE.CHECKED = 1) AND
                      (SAMPLE.SPATIAL_REF_SYSTEM = 'OSGB' OR
                      SAMPLE.SPATIAL_REF_SYSTEM = 'OSNI') AND (LOCATION_NAME.PREFERRED IS NULL OR
                      LOCATION_NAME.PREFERRED = 1)

Mike Weideli

11

Re: Recorder 6 Upgrade 6.22.2 Build 273

Hi Mike,

It didn't produce an error; however, it didn't output any data and finished running in about 2 seconds!

Les Evans-Hill
Senior Data Officer, National Moth Recording Scheme

12

Re: Recorder 6 Upgrade 6.22.2 Build 273

As a matter of onterest, and I should probably already know the answer, how did you revert back to the previous version? Just in case I need to..

Rob Large
Wildlife Sites Officer
Wiltshire & Swindon Biological Records Centre

13

Re: Recorder 6 Upgrade 6.22.2 Build 273

Hi Rob,

I run full backups to tape every night. With my backup software (Backup Exec) I restored the complete Recorder 6 Server and Workstation folders overwriting everything and then restored NBNData using the same software which also manages SQL Server backups and restores. I then reconfigured my Addins as needed.

Les Evans-Hill
Senior Data Officer, National Moth Recording Scheme

14

Re: Recorder 6 Upgrade 6.22.2 Build 273

I had a feeling you were going to say that.
We have pretty much automated network backups so it should be less of a performance, but I would still prefer to avoid having to do it.

Rob Large
Wildlife Sites Officer
Wiltshire & Swindon Biological Records Centre

15

Re: Recorder 6 Upgrade 6.22.2 Build 273

Les

A few question which will help me work this out.

1. What are you aiming to restricting the export to.  (ie what is entered in Export Filters  (Tools/Export Manager/Manage Export Filters ?) .
2. The SQL you are running is it an XLl report or are you using it some other way.

Mike Weideli

16

Re: Recorder 6 Upgrade 6.22.2 Build 273

Hi Mike,

Emailed some files to you directly. The documentation should help answer these and other questions you may have in addition.

Les Evans-Hill
Senior Data Officer, National Moth Recording Scheme

17

Re: Recorder 6 Upgrade 6.22.2 Build 273

Hi, As with Martin above the new dictionary download link appears to be pointing to the previous dictionary upgrade?

Natural History & Biodiversity Data Enthusiast

18

Re: Recorder 6 Upgrade 6.22.2 Build 273

Should be corrected by JNCC overnight.

Mike Weideli

19

Re: Recorder 6 Upgrade 6.22.2 Build 273

Hi Mike, Thank's. I have also just seen your post here with the link (http://forums.nbn.org.uk/viewtopic.php?id=5211).
The web page link has also been amended.

Natural History & Biodiversity Data Enthusiast

20 (edited by RobLarge 20-03-2014 13:56:21)

Re: Recorder 6 Upgrade 6.22.2 Build 273

I have just bitten the bullet and done the upgrade. No sign of any problems yet, but we will see.

Rob Large
Wildlife Sites Officer
Wiltshire & Swindon Biological Records Centre

21 (edited by RobLarge 20-03-2014 13:56:10)

Re: Recorder 6 Upgrade 6.22.2 Build 273

Sorry I did now, see this post before upgrading http://forums.nbn.org.uk/viewtopic.php?id=5227

Rob Large
Wildlife Sites Officer
Wiltshire & Swindon Biological Records Centre

22

Re: Recorder 6 Upgrade 6.22.2 Build 273

I urgently need to some feedback on this issue now please. We have staff waiting to import large datasets and I don't yet know whether there is a possibility of a quick fix for the Comments field problem, or if I am going to have to rollback the upgrade.

Rob Large
Wildlife Sites Officer
Wiltshire & Swindon Biological Records Centre

23 (edited by DavidChun 24-03-2014 19:52:33)

Re: Recorder 6 Upgrade 6.22.2 Build 273

I have noticed that the new dictionary upgrade has a new Forestry Commission list which seems to be a bit of a mess. What is the point of having it ?

Dave

24

Re: Recorder 6 Upgrade 6.22.2 Build 273

Thi list han't been included before as it repeats information in preferred lists. It has many thousands of entries which take up a lot of space. In the last upgrade there were  five entries in the Organism table which only appeared on this list, and because an incomplete Organism table can cause problems in many areas, the intention was to just include the Forestry Commission taxa which were needed. This doesn't seem to have worked as intended, leaving, as you put, 'as mess'. I will tidy it up at the next opportunity. I suggest you don't use it unless absolutely necessary, but all the entries there will remain, just with a better structure, so if it is used then this will not cause a problem.

Mike Weideli

25 (edited by BDeed 25-03-2014 18:32:42)

Re: Recorder 6 Upgrade 6.22.2 Build 273

It appears the confidential and zero abundance flags have been changed from true/false to yes/no. This has upset our reporting program. Should be a simple fix but i think it is worth nothing as we could have incorrectly reported these data (including providing confidential records when they shouldn't have been).



Note on my edit: i posted regarding a dictionary suggestion and the memo problem. These have been moved to appropriate places in the forum.

Natural History & Biodiversity Data Enthusiast