go to post Sudarshan Kumar · Jan 17, 2018 Thanks for responding patiently. Problem is solved.May i know how to compare two strings for equality. like,"inter" = "inter" ( true ) "black"="white " ( false )"inter system"="inter sy" ( false )"inter systems"="inter systems" ( true )As you can see from above that it should be an exact match. Is there any method to do so with String.
go to post Sudarshan Kumar · Jan 16, 2018 Thanks for responding.while i was using your code, i am getting this error in response, which says "read" method is unknown{ "Error": "ERROR #5002: Cache error: <METHOD DOES NOT EXIST>zCheckMissingRoleName+3^Controllers.Roles.2 *Read,%Library.ListOfObjects"}If just take out that "read method", then i am getting this error{ "Error": "ERROR #5002: Cache error: <INVALID OREF>zCheckMissingRoleName+16^Controllers.Roles.3"}
go to post Sudarshan Kumar · Jan 16, 2018 I will give my requirement as it is.I am getting an json array of Roles object, in which only "name" property is sent. I have to see if these names are present in DB or not. In case there is a new name in the json, then i have to pick that value and save it in DB.version - 2015.1.OHS.3703.0i have a json request as follows:[ { "Name":"Billing" }, { "Name":"Lead" }, { "Name":"Coordinator" }, { "Name":"Director" }, { "Name":"Main" }, { "Name":"Marketing" }, { "Name":"Workshop" }, { "Name":"In-House Trainer" }, { "Name":"Committee" }, { "Name":"Facilitator" }, { "Name":"Facilitator" } ]Now my code : ControllerClassMethod CheckMissingRoleName() As %Status{#dim newObj As Model.Role#dim %request As %CSP.Request#Dim MyStrings As %ListOfObjects set inputParms = %request.Contentset MyStrings = inputParms.dataSet resultu=##class(%ResultSet).%New("%DynamicQuery:SQL") Do resultu.Prepare("select Name from Model.Role ") // Do resultu.Execute()set i=1while (resultu.Next()){set namesArray(i) = resultu.Data("Name")set i=i+1 //write namesArray(i)}for k=1:1:MyStrings.Size { for j=1:1:i{if ( MyStrings.GetAt(k).Name '= namesArray(j) ) { }else { break }}// i is size of array and j is size of above loop i.e coldn't find match, and reached the endif (i = j){ set newObj = ##class(Model.Role.%OpenId(MyStrings.GetAt(k).ID) set newObj.Name=MyStrings.GetAt(k).Name // write MyStrings.GetAt(k) Do newObj.%Save() }}return $$$OK}After sending the request using Postman, i am getting this error:{ "Error": "ERROR #5002: Cache error: <PROPERTY DOES NOT EXIST>zCheckMissingRoleName+2^Controllers.Roles.2 *data,%Library.ListOfObjects"} and one more thing, how do i print something on the console? Just for debugging
go to post Sudarshan Kumar · Jan 16, 2018 I will give my requirement as it is.I am getting an json array of Roles object, in which only "name" property is sent. I have to see if these names are present in DB or not. In case there is a new name in the json, then i have to pick that value and save it in DB.version - 2015.1.OHS.3703.0i have a json request as follows:[ { "Name":"Billing" }, { "Name":"Lead" }, { "Name":"Coordinator" }, { "Name":"Director" }, { "Name":"Main" }, { "Name":"Marketing" }, { "Name":"Workshop" }, { "Name":"In-House Trainer" }, { "Name":"Committee" }, { "Name":"Facilitator" }, { "Name":"Facilitator" } ]Now my code : Controller ClassMethod CheckMissingRoleName() As %Status{#dim newObj As Model.Role#dim %request As %CSP.Request#Dim MyStrings As %ListOfObjects set inputParms = %request.Contentset MyStrings = inputParms.dataSet resultu=##class(%ResultSet).%New("%DynamicQuery:SQL") Do resultu.Prepare("select Name from Model.Role ") // Do resultu.Execute()set i=1while (resultu.Next()){set namesArray(i) = resultu.Data("Name")set i=i+1 //write namesArray(i)}for k=1:1:MyStrings.Size { for j=1:1:i{if ( MyStrings.GetAt(k).Name '= namesArray(j) ) { }else { break }}// i is size of array and j is size of above loop i.e coldn't find match, and reached the endif (i = j){ set newObj = ##class(Model.Role.%OpenId(MyStrings.GetAt(k).ID) set newObj.Name=MyStrings.GetAt(k).Name // write MyStrings.GetAt(k) Do newObj.%Save() }}return $$$OK}After sending the request using Postman, i am getting this error:{ "Error": "ERROR #5002: Cache error: <PROPERTY DOES NOT EXIST>zCheckMissingRoleName+2^Controllers.Roles.2 *data,%Library.ListOfObjects"} and one more thing, how do i print something on the console? Just for debugging