Ao carregar uma base de dados para o projecto, são inumeros os warnings PostGIS que são devolvidos por causa das expressões usadas. Desta forma as regras funcionam, mas deixa de ser possível que a filtragem seja feita do lado o PostgreSQL.
Os erros nas expressóes têm a ver com a falta de pelicas na comparacao de valores
"valor_posicao_vertical" = '1'
e não
"valor_posicao_vertical" = 1
2021-12-26T00:54:22 WARNING 1 cursor states lost.
SQL: BEGIN READ ONLY;DECLARE qgis_190 BINARY CURSOR FOR SELECT st_asbinary("geometria",'NDR'),"identificador"::text,"valor_posicao_vertical"::text,boolout("ficticio")::text FROM "public"."curso_de_agua_eixo" WHERE ("geometria" && st_makeenvelope(43265.05120915804582182,-97257.41993897286010906,44029.41606295606470667,-96857.71386367891682312,3763)) AND ((((("ficticio" = 'true') OR ("valor_posicao_vertical" = 1)) OR ("valor_posicao_vertical" = 0)) OR ("valor_posicao_vertical" = -1)))
Result: 7 (ERROR: operator does not exist: character varying = integer
LINE 1: ..."ficticio" = 'true') OR ("valor_posicao_vertical" = 1)) OR (...
^
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
)
Ao carregar uma base de dados para o projecto, são inumeros os warnings PostGIS que são devolvidos por causa das expressões usadas. Desta forma as regras funcionam, mas deixa de ser possível que a filtragem seja feita do lado o PostgreSQL.
Os erros nas expressóes têm a ver com a falta de pelicas na comparacao de valores
"valor_posicao_vertical" = '1'
e não
"valor_posicao_vertical" = 1