spec/measure_json.cfm
2025-06-02 16:16:51 +03:00

44 lines
1.1 KiB
Plaintext

<cfsilent>
<cfimport prefix="m" taglib="lib"/>
<cfimport prefix="d" taglib="lib/data"/>
<cfimport prefix="layout" taglib="layout"/>
</cfsilent>
<cfquery name="qRead" datasource="#request.DS#">
select
<d:field_set titleMapOut="qReadTitleMap" lengthOut="qReadFieldCount">
<d:field>measure_id</d:field>
<d:field>measure</d:field>
<d:field>measure_short</d:field>
</d:field_set>
from measure
where 1=1
order by measure_id
</cfquery>
<!---<cfdump var=#qRead#/><cfabort/>--->
<cffunction name="isoTimeFormat">
<cfargument name="dt"/>
<cfreturn len(dt)?"#dateFormat(dt, "yyyy-mm-dd")#T#timeFormat(dt, "HH:mm:ss")#Z":""/>
</cffunction>
<cfset temp.out=[]/>
<!--- using [] instead of {} for struct literals to obtain linked (ordered) structures: keys order preserved --->
<cfoutput query="qRead">
<cfset temp.measure=[
"measureId"="#measure_id#"
,"measure"="#measure#"
,"measureShort"="#measure_short#"
]/>
<cfset arrayAppend(temp.out,temp.measure)/>
</cfoutput>
<cfcontent
type="application/json"
/>
<cfoutput>#serializeJSON(temp.out)#</cfoutput>