[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[EP-tech] Re: problem with DB query for view



HI, 

Did you try adding "allow_null => 0" to your view ? 

I'm not sure which is the default value : 
http://wiki.eprints.org/w/Views.pl#Menu_options 

Regards, 
GF 

----- Mail original -----

> Hi folks,

> We have two multiple compound fields: ?creators? and ?editors?, with
> subfields:
> ? name (type=name)
> ? id (type=text)
> ? ? etc.

> The ids are sparsely assigned (used to identify contributors
> associated with our institution.)

> We also have a view ?person?, with a single menu:

> allow_null => 0,
> menus => [{
> fields => [ "creators_id", "editors_id" ],
> new_column_at => [1, 1],
> mode => "sections",
> open_first_section => 1,
> group_range_function => "EPrints::Update::Views::cluster_ranges_30",
> grouping_function => "EPrints::Update::Views::group_by_a_to_z",
> }],

> The problem is that, since upgrading from 3.2 to 3.3, the view
> includes a subset of those creators/editors who don?t have an id.

> I tracked through the code and found that it?s generating the correct
> UNION statement (effectively: select from eprint_creators_id where
> creators_id!='' UNION select from eprint_editors_id where
> editors_id!='' ), however for each field it?s then wrapping the
> union in a distinctby ( select creators_id from (UNION); select
> editors_id from (UNION) ). Of course, the union returns everything
> with either a creators_id or an editors_id, so both of those
> distinctby queries includes some null ids. Thus, the first section
> in the view menu is ??? with a link to the user ?NULL.html? who has
> several thousand EPrints.

> This is a bug, but I?m not quite sure how to turn it into a bug
> report on github. In the meantime, has anybody else come across this
> sort of issue? Are there any known fixes or workarounds? I have a
> potential hack ready to get us by, but I?d prefer something a bit
> less klugey.

> Cheers
> --
> Matthew Kerwin | Senior Web Developer | Applications & Development
> Team | Library eServices | Queensland University of Technology |
> Level 3, R Block, Kelvin Grove | matthew.kerwin at qut.edu.au | CRICOS
> No 00213J

> *** Options:
> http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
> *** Archive: http://www.eprints.org/tech.php/
> *** EPrints community wiki: http://wiki.eprints.org/
> *** EPrints developers Forum: http://forum.eprints.org/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ecs.soton.ac.uk/pipermail/eprints-tech/attachments/20141222/067794f0/attachment.html