Problemas com ordem de visualização nas publicações anteriores

Bom dia pessoal,

Após alguma das atualizações do OJS3 (atualmente estamos com a 3.1.1-2) a indexação da pasta “archives” de todas as revistas que temos publicadas aparecem totalmente desordenadas (imagens anexas), apesar de aparecerem corretamente ordenadas no “Back Issues” (no meu caso quero que apareçam da mais recente para a mais antigas).
Como posso resolver isso?
Att
Augusto

A próxima atualização do OJS 3 deve resolver este defeito.

Por agora, o paliativo é alterar a data de publicação das edições, que é o que está sendo considerado na hora de ordená-las na interface pública.

abraços,
Diego Abadan
Periódicos em Nuvens
Lepidus Tecnologia

Bom dia Diego,
Infelizmente estas correções são trabalhosas para meu caso. Temos poucas revistas, mas com muitas publicações dentro de cada uma (temos um preprint com mais de 90 volumes).
Saberia dizer se existe alguma notícia da disponibilicação para a nova versão ou um patch que corriga isso??
Att
Augusto

Olá @Augusto_Torres,

Sim, já há correção. Aqui são listados os arquivos e alterações necessárias:

As correções estarão presentes na próxima atualização do OJS (versão 3.1.1-4).

abraços,
Diego Abadan
Periódicos em Nuvens
Lepidus Tecnologia

Bom dia Diego,

Infelizmente as alterações não surtiram efeito.
Foram atualizados 4 arquivos, conforme descrito neste post:

Após atualização do arquivo pages/issue/IssueHandler.inc.ph

Tenho o seguinte erro:
DB Error: ERROR: column “o.seq” must appear in the GROUP BY clause or be used in an aggregate function
LINE 1: …published" = $2 group by “i”.“issue_id” order by “o”.“seq” …
^
Seguindo esta dica:

Comentei o pedaço do arquivo:

classes/services/queryBuilders/IssueListQueryBuilder.inc.php

//} elseif ($column === ‘seq’) {
// $this->orderColumn = ‘o.seq’;

O erro sumiu, porém a resolução da ordem de visualização dos arquivos não surtiram efeito.

Obs: O arquivo abaixo não existe na versão 3.1.1-2
“ojs/docs/dev/swagger.yaml”

Att
Augusto

Oi Augusto.

Conseguiu resolver?

Bom dia Diego.

Ainda sem solução! Joguei a toalha por tempo, vou esperar a próxima atualização, mesmo com os editores no meu cangote :frowning:
Pode ser que estas correções que passei anteriormente não surtiram efeito, pois estão relacionadas para servidores com banco MySQL, no meu caso uso o PostgreSQL.

Sei que as pessoas desta lista não podem ajudar muito com isso, se jogam a fazer um pouco para as coisas acontecerem bem, mas aqui vai minha indignação aos desenvolvedores do OJS:

Creio que os desenvolvedores do OJS poderiam testar um pouco mais as versões novas, antes de disponibilizar. Existem erros que não existiam, a passam a ocorrer, outros que nunca solucionam, como o patch para rodar as atualizações no Postgres que vem de atualização em atualização de nada de resolver.

Enfim, considero softwares excelentes OJS, OMP e OCS (este nao uso tanto), mas as coisas devem estar bem estáveis para uso final. Caso contrário, causam dores de cabeça para todos.

Abraços
Augusto

Bom dia a tod@s,

Saiu a nova versão do OJS
(September 11, 2018) Download OJS 3.1.1-4

Mas alguns problemas ainda persistem

ERROR: column “o.seq” must appear in the GROUP BY clause or be used in an aggregate function at character 268
Sep 12 15:00:43 servicos postgres[45801]: [3-2] STATEMENT: select “i”.* from “issues” as “i” left join “issue_settings” as “is” on “i”.“issue_id” = “is”.“issue_id” left join “custom_issue_orders” as “o” on “o”.“issue_id” = “i”.“issue_id” where “i”.“journal_id” = $1 and “i”.“published” = $2 group by “i”.“issue_id” order by “o”.“seq” asc LIMIT 25 OFFSET 0

Solução paleativa é comentar o pedaço do arquivo e permanecer com as edições anteriores desordenadas:

classes/services/queryBuilders/IssueListQueryBuilder.inc.php

//} elseif ($column === ‘seq’) {
// $this->orderColumn = ‘o.seq’;

Att
Augusto

Oi Augusto.

Infelizmente o OJS é bem menos testado com postgres, então é bem mais comum algum problema específico para quem o utiliza, Com MySQL ou MariaDB fica um tanto mais estável!

A PKP pretende no futuro substituir o ADODB por outra ferramenta, e talvez quando isso ocorrer o suporte ao MySQL e postgres fiquem mais próximos (maior estabilidade para quem não usa MySQL).

abraços,
Diego

Finalmente entrou na lista de patchs a serem aplicados para o PostgreSQL:

Necessita sobreescrever este arquivo:

Alterar a linha de IssueListQueryBuilder.inc.php para:
->groupBy(‘i.issue_id’, $this->orderColumn);

Parece que agora está aparecendo na ordem correta!

Posta da correção, para quem se interessar:

Att
Augusto

1 curtida