FCLT#84567 AiAi CLOB groepering in rapport
svn path=/Website/branches/v2024.2/; revision=65476
This commit is contained in:
@@ -577,6 +577,30 @@ function report_GET(params)
|
||||
if (hasAggregate) break;
|
||||
}
|
||||
|
||||
// CLOB (mld_melding_omschrijving) mag niet in de ORDER BY genoemd worden
|
||||
// TODO: in de toekomst misschien explicieter rapport kolom type 'memo' onderkennen?
|
||||
var sqlc = "SELECT column_name, data_type"
|
||||
+ " FROM user_tab_columns"
|
||||
+ " WHERE table_name = " + safe.quoted_sql_upper(model.table);
|
||||
var oRs = Oracle.Execute(sqlc);
|
||||
var isclob = {};
|
||||
while (!oRs.EOF)
|
||||
{
|
||||
isclob[oRs("column_name").Value] = (oRs("data_type") == 'CLOB');
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.Close()
|
||||
|
||||
// CLOB is problematisch in GROUP BY
|
||||
for (var fld in model.fields)
|
||||
{
|
||||
var field = model.fields[fld];
|
||||
if (isclob[field.dbs.toUpperCase()])
|
||||
{
|
||||
field.sql = "TO_CHAR(SUBSTR({0}, 1, 4000))".format(field.dbs);
|
||||
}
|
||||
}
|
||||
|
||||
// Controleren of de urllink parameter een &##TRANSIT## heeft. Dan geven wel alle filtervelden door
|
||||
if (params.urllink && params.urllink.link && params.urllink.link.match(/&##TRANSIT##/i))
|
||||
{
|
||||
@@ -814,20 +838,6 @@ function report_GET(params)
|
||||
autosorting = autosorting && (field.sorting.id == 3)
|
||||
}
|
||||
|
||||
// CLOB (mld_melding_omschrijving) mag niet in de ORDER BY genoemd worden
|
||||
// TODO: in de toekomst misschien explicieter rapport kolom type 'memo' onderkennen?
|
||||
var sqlc = "SELECT column_name, data_type"
|
||||
+ " FROM user_tab_columns"
|
||||
+ " WHERE table_name = " + safe.quoted_sql_upper(query.tables[0]);
|
||||
var oRs = Oracle.Execute(sqlc);
|
||||
var isclob = {};
|
||||
while (!oRs.EOF)
|
||||
{
|
||||
isclob[oRs("column_name").Value] = (oRs("data_type") == 'CLOB');
|
||||
oRs.MoveNext();
|
||||
}
|
||||
oRs.Close()
|
||||
|
||||
if (autosorting)
|
||||
{
|
||||
for (var i=0; i < query.selects.length; i++)
|
||||
|
||||
Reference in New Issue
Block a user