As of April 12th, you must go to Progress SupportLink to create new support cases or to access existing cases. Please, bookmark the SupportLink URL and use the new portal to contact the support team.
My bad, found the solution, it's rather a Javascript specific problem:
For simple keys stored in variables you could use [key]
For dotted keys like in my case (mylist.key) you have to define the object in an official way, then it works. Based on my example above:
var mylist = {}; mylist[<set searchkey here>] = ''; modules.collectionAccess.collection('mycollection').find({ mylist : { $exists : true } }, function (err, entries){ ... });
It is important, that the object variable ("mylist" in my example) has the same name as the column name of the collection that holds the object! Maybe there is a better solution but this works.
Regards
I was wrong. The query above will return ALL records (whether search key is in record or not). After trying a lot I found out you have to define the whole query this way:
var mylist = {}; mylist['<column of collection>.' + <search key here>] = { $exists : true }; modules.collectionAccess.collection('mycollection').find(mylist, function (err, entries){ ...
That works and will return the expected result.
Sorry for that and Regards
Tayger
Hello
I'm trying to find objects in objects stored in a collection. An object looks like this:
{
"GNJB5B4": {
"title": "some text",
"rating": 2
},
"GNF3CHA": {
"title": "some text",
"rating": 5
}
}
Let's assume I have stored this object in collection mycollection and there in column mylist.
I would like to know which records have an entry with key "GNJB5B4". Reading in MongoDBs documentation I could find a solution:
This works like a charm and outputs the amount of records in mycollection with the given entry in mylist.
I now want to set the search key ("mylist.GNJB5B4") by a variable like:
In this case the output is always:
undefined
Conclusion: As soon as I try to replace a static search value by a variable value the result is "undefined".
Any idea/solution how to fix that?
Regards