← Back to team overview

pyax team mailing list archive

Re: [Bug 301187] Re: pyax fails to return results when COUNT() is used inSOQL

 

My own bug fix remains where it is - my version of pyax always behaves the 
same across the board regardless of the SOQL.

--------------------------------------------------
From: "Kevin Shuk" <surf@xxxxxxxxxxxxx>
Sent: Friday, January 23, 2009 4:31 PM
To: <raychorn@xxxxxxxxxxx>
Subject: [Bug 301187] Re: pyax fails to return results when COUNT() is used 
inSOQL

> I will have to check the query itself to to see if it's a select count()
> and act accordingly, otherwise a legitimate query that returns no rows
> may provide a surprising result (not an empty batch).
>
> Borrowing behaviour from apex, the count() query should return just the
> integer. It's a different enough kind of query to warrant this, and
> since SOQL isn't SQL, I don't feel quite so bad about the different
> behaviour.
>
> ** Changed in: pyax
>   Importance: Undecided => High
>     Assignee: (unassigned) => Kevin Shuk (surf)
>       Status: New => Confirmed
>
> -- 
> pyax fails to return results when COUNT() is used in SOQL
> https://bugs.launchpad.net/bugs/301187
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in Salesforce.com Apex API library for Python: Fix Committed
>
> Bug description:
> Consider the following SOQL statement:
>
> Select COUNT() from Solution s WHERE (s.Status = 'Published') AND 
> (s.IsDeleted = False) AND (s.LastModifiedDate > 2008-08-24T00:00:00.000Z)
>
> The results pyax reports from connection.py in the __processQueryResult 
> method is an empty {} in the query_result_batch variable.
>
> The problem is the query_result says {u'records': None, u'done': True, 
> u'queryLocator': None, u'size': '106'}.
>
> The fix would be to add the following exception code as follows:
>
>        query_result_batch = self.__resultToObject(sobject_records)
>        if (done is True) and (len(query_result_batch) == 0):
>            query_result_batch = query_result
>        return query_result_batch
>
> This is a hack but it works so long as I get something back from the SOQL 
> rather than nothing which is what pyax wants to give me.
>
> Perhaps the development team can give me a more elegant solution in a 
> later release however since I need this to work now I am using my own hack 
> in the meantime.
>
> I suspect the pyax development team simply did not expect people to use 
> the COUNT() function which can be useful even though it does not return 
> any SalesForce objects it does return the number of items a SOQL would 
> return.
>

-- 
pyax fails to return results when COUNT() is used in SOQL
https://bugs.launchpad.net/bugs/301187
You received this bug notification because you are a member of pyax
Developers, which is the registrant for pyax.



References