Problems with setFilter command

Hi,
I’m new to Wix/Velo so I’ve been following a tutorial on adding a request quote button (https://www.velo.totallycodable.com/post/adding-a-request-quote-button-in-wix-stores-with-notifications). I’ve followed the tutorial as best I can and used the code provided, but I keep getting the following Error:

Which is caused by the following code:

import { quoteRequest } from ‘backend/notifications’ ;
import wixCrm from ‘wix-crm’ ;
import { session } from ‘wix-storage’ ;
import wixData from ‘wix-data’ ;

$w . onReady ( function () {
let product = session . getItem ( “product” ); //This line will get the item from storage session

$w ( “#productDataset” ). onReady (() => {
console . log ( “The product dataset is ready to be filtered with the following ID:” + product );

$w ( “#productDataset” ). setFilter ( wixData . filter ()
. eq ( “_id” , product ) //This line will filter the product dataset to find the 1 matching product from storage session
)
. then (() => {
console . log ( “The product is” + product );
$w ( ‘#formStrip’ ). expand (); //This line triggers the form strip to expand only if there are no errors in filtering dataset
$w ( ‘#errorStrip’ ). collapse (); //This line triggers the error strip to collapse only if there are no errors in filtering dataset
})

The #productDataset is a dataset linked to the Wix product collection. What confuses me is this dataset is by default read-only. Any ideas on what I may be doing wrong?

Thank you!

In order to filter, the dataset needs to be set as Read-only or Read&Write.
You dataset is set to Write-only and can’t be filtered. Change the settings.

I just checked again, the dataset is definitely already set to Read-only???