0
votes

tried to get the value based on GPSPointType id ,it's not working

    var filterQuery =
    {
        'query': 'select top 1 c2.PremiseType from c c2 where c2.GPSPointType=@id',
        'parameters': [{ 'name': '@id', 'value': 2 }]

    };

    //var filterQuery = 'SELECT * FROM p where p.GPSPointType=2';
    var accepted = collection.queryDocuments(collectionLink, filterQuery, {}, function (err, itemCreated) {
        if (err) console.log(err.message);
        //if (itemCreated.length > 0) {
        getContext().getResponse().setBody(JSON.stringify(itemCreated)); return true;
        //return itemCreated[0].PremiseType;
        //}
    });
1

1 Answers

0
votes

I tested your code on my side and it works for me.Please refer to my details:

my sample data:

enter image description here

sp code:

function sample(prefix) {
    var collection = getContext().getCollection();
    var filterQuery =
    {
        'query': 'select top 1 c2.PremiseType from c c2 where c2.GPSPointType=@id',
        'parameters': [{ 'name': '@id', 'value': 2 }]

    };
    //var filterQuery = 'SELECT * FROM p where p.GPSPointType=2';
    var accepted = collection.queryDocuments(collection.getSelfLink(), filterQuery, {}, function (err, itemCreated) {
        if (err) console.log(err.message);
        //if (itemCreated.length > 0) {
        getContext().getResponse().setBody(JSON.stringify(itemCreated)); return true;
        //return itemCreated[0].PremiseType;
        //}
    });
}

output:

enter image description here

Besides,you could refer to some clues in this thread: Passing parameter to CosmosDB stored procedure