Skip to content

Commit 18c01de

Browse files
committed
2 parents 8c47ffb + 509e513 commit 18c01de

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

Form/JSON/SQL.cls.xml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,14 @@ result: out=" WHERE Text='Admin' AND Text='1'"]]></Description>
9595
}
9696
set value = valTemp _ ")"
9797
} else {
98-
set value = $$$sq(value)
98+
// bake ((value)) values as a (('value')) to help the optimizer
99+
if (($e(value,1,2)="((") && ($e(value,*-1,*)="))")) {
100+
set value = $e(value, 3,*-3)
101+
set value = $$$sq(value)
102+
set value = "((" _ value _ "))"
103+
} else {
104+
set value = $$$sq(value)
105+
}
99106
set:value="'$$$NULL'" value = "NULL"
100107
}
101108
@@ -350,6 +357,15 @@ nocount - do not output count of rows</Description>
350357
<Implementation><![CDATA[
351358
Set:$IsObject($Get(%request)) tMode = %request.Get("mode", 0)
352359
Set tRS = ##class(%ResultSet).%New()
360+
361+
If $$$webContext {
362+
Set nocount = %request.Get("nocount", $$$NO)
363+
}
364+
365+
If ((..currPage=1) && ($g(nocount, $$$NO)) && ($ZCVT($tr(..sql," "), "U") '[ "SELECTTOP")) {
366+
Set ..sql = $replace(..sql , "SELECT", "SELECT TOP " _ ..pageSize _ " ",,1,1)
367+
}
368+
353369
Set tSC = tRS.Prepare(..sql)
354370
Set tRS.RuntimeMode = $Get(tMode, 0)
355371
Set pInfo.queryText = "sql: "_..sql

0 commit comments

Comments
 (0)