diff --git a/MDX2JSON/REST.cls b/MDX2JSON/REST.cls index e0998eb..c0546c9 100644 --- a/MDX2JSON/REST.cls +++ b/MDX2JSON/REST.cls @@ -66,6 +66,7 @@ XData UrlMap + @@ -132,6 +133,44 @@ ClassMethod Test() As %Status return $$$OK } + +/// Get all data sources including "pivot", "kpi", "worksheets","metrics" +ClassMethod GetListDataSources() As %Status +{ + + if $$$R("dataSource") = "pivot" + { + Set tSC = ##class(%DeepSee.Utils).%GetPivotListArray(.tParms,.pMetaData,.pData) + + } + elseif $$$R("dataSource") = "kpi" + { + Set tSC = ##class(%DeepSee.Utils).%GetKPIListArray(.tParms,.pMetaData,.pData) + + } + elseif $$$R("dataSource") = "worksheets" + { + Set tSC = ##class(%DeepSee.Utils).%GetWorksheetListArray(.tParms,.pMetaData,.pData) + + } + elseif $$$R("datasource") = "metrics" + { + Set tSC = ##class(%DeepSee.Utils).%GetMetricListArray(.tParms,.pMetaData,.pData) + + } + + quit:$$$ISERR(tSC) tSC + + Set tSC = ##class(%DeepSee.REST.v1.DataServer).%CreateObjectFromArray(.pData,pMetaData,.tSourceObj) + + quit:$$$ISERR(tSC) tSC + + do tSourceObj.%ToJSON() + + quit tSC +} + + ClassMethod GetDataSource() As %Status { return ##class(MDX2JSON.Utils).GetDataSource($$$R("DataSource"))