Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

Using setRange($skip, $max) to return 0 records


This topic is 3212 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

I'm performing some find operations that I only want to get the total number of records returned for display purposes, and don't need to return any records.

I've tried using the following:

$max = 0;
$skip = 0;

$request->setRange($skip, $max) 

$result = $request->execute(); 

but this looks like it's returning all the found records, not zero records. I had assumed 0 was a valid value for $max but it appears this isn't so. Anyone have any experience with this or know a way to return zero records but still be able to call getFoundSetCount() to get the total number of found records?

Posted

You don't need to display found records, so I'm not sure I see the point... You can just perform the find and get the record count

Posted
26 minutes ago, webko said:

You don't need to display found records, so I'm not sure I see the point... You can just perform the find and get the record count

Hi webko,

Thanks for your reply. My issue is that if I set $max to 0 then it returns all matching records in the result, which at a certain point will return a 500 server error as it's run out of memory.

Posted

Can you create a FM script that does the find, and sets a global field with Get(FoundCount)? Then you could use a newPerformScript() call in php, and then pull just the one field with a newFindAny() call.

Posted

Also... How many records are potentially being returned? On a tuned layout (i.e., with only the fields needed for the -find) I can return 10,000+ without error

Posted (edited)

Or another tack would be to create a layout with only the fields involved with the find, and query that.

Oops, that's what webko just said!

 

Edited by doughemi
Posted
2 hours ago, webko said:

Also... How many records are potentially being returned? On a tuned layout (i.e., with only the fields needed for the -find) I can return 10,000+ without error

It's returning thousands of records potentially - it was working fine with just hundreds. I've changed the max to 1 and created special layouts for these finds and that has fixed the problem for now. I wish the API didn't return the meta data/data for all the found records until you requested them - just the number of records found and any errors etc. 

This topic is 3212 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.