1、带开始开始行、分隔符、入参的query转json。此方法适合分页查询

ClassMethod GetWard(start, limit, CTLocDesc As %Library.String = "")
{
    s start=$G(start)
    s limit=$G(limit)
    s rs=##class(%ResultSet).%New("web.DHCCRM.GetBaseInfo:SearchWard")
    d rs.Execute(CTLocDesc)
    s count=0
    s mess=""
    s topnum=start+limit
    while (rs.Next())
    {
        s count=count+1
        i (start'="")&(limit'="") continue:(count<=start)!(count>topnum) 
        s RowId=rs.Get("CTLOC_RowId")
        s Code=rs.Get("CTLOC_Code")
        s Desc=rs.Get("CTLOC_Desc")
        i (mess'="") s mess=mess_","
        //RowID^Name
        s mess=mess_"{""RowID"":"_""""_RowId_""""
        s mess=mess_","_"""Name"":"_""""_Desc_""""
        s mess=mess_"}"
    }        
    s mess="["_mess_"]"
    s mess="{""results"":"_""""_count_""""_","_"""rows"""_":"_mess_"}"
    q mess
}

2、返会数据格式中带cols和rows的,上面只有的rows结构

/// // w ##class(NTSC.ExterIntface.AntiAgentStat.NTSCAntiAgentStat).NTSCMJZCFJL("2023-04-02","2024-04-02")
ClassMethod NTSCMJZCFJL(startdate As %String, enddate As %String) As %String
{
	
    Set cols = ##class(%DynamicArray).%New()
    Do cols.%Push(##class(%DynamicObject).%New())
    Do cols.%Get(0).%Set("field", "no")
    Do cols.%Get(0).%Set("title", "序号") 
    Do cols.%Push(##class(%DynamicObject).%New())
    Do cols.%Get(1).%Set("field", "type")
    Do cols.%Get(1).%Set("title", "类型")
    Do cols.%Push(##class(%DynamicObject).%New())
    Do cols.%Get(2).%Set("field", "admno")
    Do cols.%Get(2).%Set("title", "就诊编码")
    Set rows = ##class(%DynamicArray).%New()
    Set rs = ##class(%ResultSet).%New("NTSC.ExterIntface.AntiAgentStat.NTSCAntiAgentStat:NTSCMJZCFJLdata")
    Do rs.Execute(startdate, enddate)
    While rs.Next() {
        Set row = ##class(%DynamicObject).%New()
        Do row.%Set("no", rs.Get("no"))
        Do row.%Set("type", rs.Get("type"))
        Do row.%Set("admno", rs.Get("admno"))
        Do rows.%Push(row)
    }
    Do rs.Close()
    Set result = ##class(%DynamicObject).%New()
    Do result.%Set("cols", cols)
    Do result.%Set("rows", rows)
    Return result.%ToJSON()
}