Fulldata Query

As we know, there are permission bottlenecks to query the Privatemembers database, but the “Fulldata” database which also stores information when a user signs up using wix custom sign up can be queried by any user. I have about 60 entries in that database but my dataset filter is only returning 17, is there any other way to get the total entries in that database or the Privatemembers database without any number limits?

The max. limit of each querying-process of a database is = 1000.
If you need more data to load at once, you will have to generate a code, which do that function.

There are different options of doing this…

-query.limit(1000)
-query.skip(1000)
-query.hasNext()
-promiseAll()

EXAMPLE-1: (Not best one maybe, but should work…

async function getAllItems(databaseID, index, dbLimit) {
   returnwixData.query(databaseID)
   .limit(dbLimit)
   .skip(index)        
   .find()        
   .then(async(res)=> {
      itemData.push(res.items);
      if (res.items.length===dbLimit) {
         index += 1000;
         return await getAllItems(databaseID, index, dbLimit)
      } else {return itemData;}
   });
}

//STARTING THE FUNCTION.....
$w.onReady(()=>{
   let allItems = [];   
   let databaseID = "YourDatabaseIdHere";
   let dbLimit = 1000;
   let index = 0;
   let dbFulldata = await getAllItems(databaseID, index, dbLimit);
   console.log("Full-Data: ", dbFullData);
});

EXAMPLE-2:

async function fetchData(){
    const firstPage = await wixData.query('collection')
    .limit(1000)
    .skip(0)
    .find();
    //-----------------------
    const secondPage = await wixData.query('collection')
    .limit(1000)
    .skip(1000)
    .find();
    //-----------------------
    const thirdPage = await  wixData.query('collection')
    .limit(1000)
    .skip(2000)
    .find();
    //-----------------------
    const allItems = firstPage.items
    .concat(secondPage.items)
    .concat(thirdPage.items);
    return allItems;
}

Modifying this one into a loop, maybe would also be an alternative way.
But this is surely not best solution.

EXAMPLE-3:

async function fetchData() {     
	 let result = await wixData.query('collection')    
	 .limit(1000) .find(); 
	 let allItems = result.items;   
	 while (result.hasNext()) { 
		result = await result.next(); 
		allItems = allItems.concat(result.items); 
	 }    
	return allItems; 
}

Example-4: PROMISE-ALL-VERSION —> Here try to find out by yourself, probably the best version and the fastest…

a) https://community.wix.com/velo/forum/coding-with-velo/promiseall-issue
b) https://community.wix.com/velo/forum/velo-pro-discussion/get-unique-values-of-wished-db-fields-promiseall
c) search for more promiseAll examples inside the VELO-FORUM

And i could show you surely even more different versions, of how to solve your issue.
Take your time, do some testings, understand the codings and then create your own SOLUTION.

Good luck !!!

Thanks for the response, I might jus go for the first or last, but the issue is that I can only get 17 items returned out of 60…

How to help you, if you don’t really show your setup, or describe it in detail ?

-did you use a dataset ?

 but my dataset filter is only returning 17

Seems like you did!

Did you setted-up something inside the property-panel ? (options of dataset?)
Surely you did!

Did you use CODE ?
If so —> WHERE IS YOUR USED OCDE ?

You will get the same quality output, as inserted input.

Bad INPUT = bad OUTPUT.

Anybody can see what exactly you have done (setted-up) inside your project!

What I did is a basic dataset filter, nothing in the options of the dataset, the database is a wix members database called “Fulldata” it does not have the fixed permissions as the Privat members database but the return is limited, the problem is not from my code because all other dataset filters on that page are working accordingly

What I did is a basic dataset filter, nothing in the options of the dataset…
Absolute confusing statement!!!

  1. If you did a basic DATASET-CONNECTION-SETUP without any coding → then you did it inside the options of the dataset (property-panel).

  2. You will have set your filter inside the dataset-options. There are just 2-ways of how to set a filter…

the problem is not from my code because all other dataset filters on that page are working accordingly
And again → which code are you talking about? Did you use code, or not ???
If you generated some code, related to your filtering function → then please show it.

Also you maybe should show your database in a screenshot (or at least an example it, if you have sensitive data in your DB).

Open the options (property-panel) of your dataset and do a screenshot aswell.
Show how you setted-up your filter (screenshot) which exactly shows the used OPTIONS.

I already understood that you are using an ordinary (own custom database) for your members, since you were not able to use the PMD (Privat-Members-Data), which has indeed some restrictions.

But in the world of coding there is almost nothing what can be bypassed.

filter code

$w("#datasetFullData").onReady(() => {
let people = $w("#datasetFullData").getTotalCount()
})

I am just trying to get the total users

Does anybody have this same problem? This nonsense happens every 1 hour, this issue is solely from wix and they have literally blocked me from creating a new post with this issue.

Maybe someone else is working on your page. Did you invite somebody to work on your page? If not, maybe Wix do changes. Maybe you started a second Wix-Editor in another Browserwindow, or Browser.

This is solely from wix