# Function filtering DB doesn't work!

**URL:** <https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702>\
**Category:** Ask the community\
**Tags:** code, question\
**Created:** [January 28, 2021, 6:36am UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702 "2021-01-28T06:36:30Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![searchbjd](https://sea1.discourse-cdn.com/wix/user_avatar/forum.wixstudio.com/searchbjd/32/26430_2.png) [@searchbjd](https://forum.wixstudio.com/u/searchbjd)\
**Post date:** [January 28, 2021, 6:36am UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702/1 "2021-01-28T06:36:30Z")

</div>

Hello!  
I have been suffering from this problem few days.  
I really want to find the answer to solve this problem!

 ![](https://us1.discourse-cdn.com/wix/original/3X/c/6/c671a6f30d8ffea80abd9ef7b26b57035889e88c.jpeg)

Quite simple, but I don’t know why..!  
What I want to do is shown above picture.

I want to show pictures of product I clicked in form of slideshow gallery.  
I have 2 DB, one is DB for repeater containing product information(so called DB-A), and the other is for images of every product(DB-B).

When I link the dataset of gallery to DB-B, it shows first row only. So, I want to filter DB-B when I click ‘show product button’ in repeater for filtering DB with only one row containing information of the product I clicked.

But, When I click show product button, Filter doesn’t work at all. actually, nothing remains in DB-B after my code below works (I tested it with console.log)

Here is my code

import wixData from ‘wix-data’ ;

let imgfilter = wixData.filter();

export function PdButton\_click(event) {

let $item = $w.at(event.context);  
let PdNumber = $item( ‘#List’ ).getCurrentItem().partNum

imgfilter = imgfilter.hasSome( ‘PdNum’ , PdNumber);  
$w( ‘#imgtest’ ).setFilter(imgfilter);

}

 ![](https://us1.discourse-cdn.com/wix/original/3X/5/4/54f49dbd65ba26d2b672a9ce2c064edb830e6fc7.jpeg)

 ![](https://us1.discourse-cdn.com/wix/original/3X/3/4/34912903114a96361af3eabc4123623cd22de387.jpeg)

and It is my DB

I don’t have any clue at all. Please help me..!

Thank you in advance so much! and have a good day 🙂

---

<div class="post-metadata">

**Author:** ![Certified\_Code](https://sea1.discourse-cdn.com/wix/user_avatar/forum.wixstudio.com/certified_code/32/80179_2.png) [@Certified\_Code](https://forum.wixstudio.com/u/Certified_Code)\
**Post date:** [January 28, 2021, 6:46am UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702/2 "2021-01-28T06:46:28Z")

</div>

import wixData from ‘wix-data’;

let imgfilter = wixData.filter();

export function PdButton\_click(event) {  
console.log(“Test”) //ADD THIS LINE TO TEST WHETHER THIS FUNCTION IS RUN-ED!  
let $item = $w.at(event.context);  
let PdNumber = $item(‘#List’).getCurrentItem().partNum

imgfilter = imgfilter.hasSome(‘PdNum’, PdNumber);  
$w(‘#imgtest’).setFilter(imgfilter);

}

---

<div class="post-metadata">

**Author:** ![Certified\_Code](https://sea1.discourse-cdn.com/wix/user_avatar/forum.wixstudio.com/certified_code/32/80179_2.png) [@Certified\_Code](https://forum.wixstudio.com/u/Certified_Code)\
**Post date:** [January 28, 2021, 6:47am UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702/3 "2021-01-28T06:47:51Z")

</div>

Why “export function” wont work =\> [https://community.wix.com/partners/forum/technical-talk/members-sign-up-login-corvid-code-not-working](https://community.wix.com/partners/forum/technical-talk/members-sign-up-login-corvid-code-not-working?appSectionParams=%7B%22origin%22%3A%22member_comments_page%22%7D)

---

<div class="post-metadata">

**Author:** ![searchbjd](https://sea1.discourse-cdn.com/wix/user_avatar/forum.wixstudio.com/searchbjd/32/26430_2.png) [@searchbjd](https://forum.wixstudio.com/u/searchbjd)\
**Post date:** [January 28, 2021, 6:54am UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702/4 "2021-01-28T06:54:27Z")

</div>

I don’t recognize any difference from my code.  
export function works. my problem is that setFilter fuction doesn’t work.

---

<div class="post-metadata">

**Author:** ![yisrael-wix](https://sea1.discourse-cdn.com/wix/user_avatar/forum.wixstudio.com/yisrael-wix/32/1107_2.png) [@yisrael-wix](https://forum.wixstudio.com/u/yisrael-wix)\
**Post date:** [January 28, 2021, 9:25am UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702/5 "2021-01-28T09:25:38Z")

</div>

You need to use the Field key (always starts with a small letter) and not the Field name in your query:

 ![](https://us1.discourse-cdn.com/wix/original/3X/7/6/7660f83cc7793dcab9a46574c1fa3b39436b7f5d.png)

You do **not** want this:

```javascript
 imgfilter = imgfilter.hasSome('PdNum', PdNumber);

```

You do want this:

```javascript
 imgfilter = imgfilter.hasSome('pdNum', PdNumber);

```

---

<div class="post-metadata">

**Author:** ![searchbjd](https://sea1.discourse-cdn.com/wix/user_avatar/forum.wixstudio.com/searchbjd/32/26430_2.png) [@searchbjd](https://forum.wixstudio.com/u/searchbjd)\
**Post date:** [January 29, 2021, 6:10am UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702/6 "2021-01-29T06:10:52Z")

</div>

Thank you so much! But I have one more problem ☹

 ![](https://us1.discourse-cdn.com/wix/original/3X/0/e/0eae48dad4b6a2df09cdefd6821163a11759c489.jpeg)

It works perfect at the first time.  
But, after second run, It gets no data from imgtest DB

I reset the filter for imgtest DB when I close slideshow gallery.  
It seems working. but after that, I click other product, It returns null.

This is for slideshow gallery  
export function PdButton\_click\_1(event) {  
**let** $item = $w.at(event.context);  
**let** PdNumber = $item( ‘#List’ ).getCurrentItem().partNum  
console.log(PdNumber)

```
imgfilter = imgfilter.hasSome( 'pdNum' , PdNumber); 
$w( '#imgtest' ).setFilter(imgfilter); 
console.log($w( '#imgtest' ).getCurrentItem()) 
$w( '#closemain' ).show(); 
$w( '#gallery1' ).show(); 
$w( '#PdRepeater' ).hide(); 
$w( '#loadingstrip' ).hide();    

```

}

and this is for reset filter  
export function closemain\_click(event) {  
$w( ‘#closemain’ ).hide();  
$w( ‘#gallery1’ ).hide();  
$w( ‘#PdRepeater’ ).show();  
$w( ‘#loadingstrip’ ).show();  
$w( ‘#imgtest’ ).setFilter(wixData.filter());  
}

Thank you so much in advance!

---

<div class="post-metadata">

**Author:** ![yisrael-wix](https://sea1.discourse-cdn.com/wix/user_avatar/forum.wixstudio.com/yisrael-wix/32/1107_2.png) [@yisrael-wix](https://forum.wixstudio.com/u/yisrael-wix)\
**Post date:** [January 29, 2021, 11:04am UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702/7 "2021-01-29T11:04:25Z")

</div>

@searchbjd I think that you need to create a new Filter each time. Something like this (not tested):

```javascript
let imgfilter = wixData.filter().hasSome('pdNum', PdNumber);
$w('#imgtest').setFilter(imgfilter);

```

---

<div class="post-metadata">

**Author:** ![searchbjd](https://sea1.discourse-cdn.com/wix/user_avatar/forum.wixstudio.com/searchbjd/32/26430_2.png) [@searchbjd](https://forum.wixstudio.com/u/searchbjd)\
**Post date:** [January 29, 2021, 12:30pm UTC](https://forum.wixstudio.com/t/function-filtering-db-doesnt-work/3702/8 "2021-01-29T12:30:39Z")

</div>

@yisrael-wix It is working! Thank you so much! 🙂
