# How to use New Data Viewer as an Extended Listviewer

**URL:** <https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050>\
**Category:** Questions about Thunkable X\
**Created:** [May 7, 2020, 4:08pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050 "2020-05-07T16:08:28Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![jonathanvalgarlh4ow](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@jonathanvalgarlh4ow](https://community.thunkable.com/u/jonathanvalgarlh4ow)\
**Post date:** [May 7, 2020, 4:08pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/1 "2020-05-07T16:08:28Z")

</div>

Hello,

With the new feature that was just released, i was wondering the way of using that as an Extended Listviewer. In my proyect, i have a list of objects, and i want to show every object of that list as an extended listviewer. There are some great tutos of doing it using “clone” functionality, but as i have said, now the graphical aspect is created in the Data Viewer, but i cannot chose other sources appart from Google Sheets, Airtable or LocalDB.

Any ideas?

Thanks in advance!

---

<div class="post-metadata">

**Author:** ![jared](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/jared/32/138473_2.png) [@jared](https://community.thunkable.com/u/jared)\
**Post date:** [May 7, 2020, 4:29pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/2 "2020-05-07T16:29:05Z")

</div>

where do you want to import your data from?

---

<div class="post-metadata">

**Author:** ![jonathanvalgarlh4ow](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@jonathanvalgarlh4ow](https://community.thunkable.com/u/jonathanvalgarlh4ow)\
**Post date:** [May 7, 2020, 5:23pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/3 "2020-05-07T17:23:41Z")

</div>

In my case i have the data in airtable, then using Airtable Api, i filter the results. I do some operations with those results and i generate a new list of objects.This is the new list that i want to show in an extended listviewer.

I was thinking in writing those new values in a LocalDB and then showing them in the Data Viewer, but it doesn´t seem the best way…

---

<div class="post-metadata">

**Author:** ![domhnallohanlon](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/domhnallohanlon/32/29554_2.png) [@domhnallohanlon](https://community.thunkable.com/u/domhnallohanlon)\
**Post date:** [May 7, 2020, 5:34pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/4 "2020-05-07T17:34:25Z")

</div>

We have docs for both the List and Grid variants of the Data Viewer:

> **[Data Viewer Grid](https://docs.thunkable.com/data-viewer-grid)**
>
> Create powerful, no-code, data-driven apps connected directly to Google Sheets, Airtable, or stored locally.

Both can use Airtable as the data source, and it’s really easy to set up.

---

<div class="post-metadata">

**Author:** ![jonathanvalgarlh4ow](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@jonathanvalgarlh4ow](https://community.thunkable.com/u/jonathanvalgarlh4ow)\
**Post date:** [May 7, 2020, 5:48pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/5 "2020-05-07T17:48:46Z")

</div>

@domhnallohanlon Thanks for the answer.

But maybe i didn´t explain well the problem. The process would be:

AIRTABLE → Filter the info (using Airtable API) → Do some operations with that filtered info (in Google Cloud) → Getting the new info and saving it in a list (list of objects) → **Showing in a Data Viewer (as it was a Estended ListViewer)**

The last step is my stone on the road…

Thanks.

---

<div class="post-metadata">

**Author:** ![domhnallohanlon](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/domhnallohanlon/32/29554_2.png) [@domhnallohanlon](https://community.thunkable.com/u/domhnallohanlon)\
**Post date:** [May 7, 2020, 9:24pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/6 "2020-05-07T21:24:54Z")

</div>

> [@jonathanvalgarlh4ow](#):
>
> Getting the new info and saving it in a list (list of objects)

Is this part just an API endpoint that returns some JSON though? Or after the “Google Cloud” will you data end up in Google Sheets?

---

<div class="post-metadata">

**Author:** ![jonathanvalgarlh4ow](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@jonathanvalgarlh4ow](https://community.thunkable.com/u/jonathanvalgarlh4ow)\
**Post date:** [May 7, 2020, 9:51pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/7 "2020-05-07T21:51:57Z")

</div>

Exactly, i get the Json and i place the values in a list variable. The idea is not to upload anything else online, just to show that list.

---

<div class="post-metadata">

**Author:** ![jared](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/jared/32/138473_2.png) [@jared](https://community.thunkable.com/u/jared)\
**Post date:** [May 7, 2020, 10:47pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/8 "2020-05-07T22:47:57Z")

</div>

so you call airtable and bring data to the phone. send the result to google to turn it into JSON. then bring it back to the app?

---

<div class="post-metadata">

**Author:** ![jonathanvalgarlh4ow](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@jonathanvalgarlh4ow](https://community.thunkable.com/u/jonathanvalgarlh4ow)\
**Post date:** [May 7, 2020, 11:16pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/9 "2020-05-07T23:16:37Z")

</div>

Today it doesn´t seem to be my best day explaining… jejej.

I take (LIST 1) from airtable but using the api, because i filter with formulas. Then i send some fields of that LIST 1 to gcloud for analysing (i want distances, angles and other things in between several points and thunkable takes too much time to process it). With the results given by gcloud i can select with elements of LIST 1 are aceptable, so with them i create LIST 2. This LIST 2 is the one that i want to show.

This LIST 2 would be the items inside “records”, something like:

{“records”:[{“id”:“rec0D4tgt5V34nN”,“fields”:{“Distance”:“6.66 km”,“Name”:“Example1”,“Angle”:“78.9º”,“Type”:“Absolute”,“Plazas totales”:“2”,“Date\_of\_finding”:“2020-05-07”,“Hour”:“7:35PM”},“createdTime”:“2020-05-05T21:17:40.000Z”},{“id”:“rec0D4tgt5V342Hb”,“fields”:{“Distance”:“7.8 km”,“Name”:“Example2”,“Angle”:“22.5º”,“Type”:“Absolute”,“Date\_of\_finding”:“2020-05-07”,“Hour”:“6:05PM”},“createdTime”:“2020-05-06T22:17:30.000Z”}, …]}

---

<div class="post-metadata">

**Author:** ![jared](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/jared/32/138473_2.png) [@jared](https://community.thunkable.com/u/jared)\
**Post date:** [May 7, 2020, 11:20pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/10 "2020-05-07T23:20:00Z")

</div>

That makes sense. wow! that’s sweet!  
do you retrieve the data via API?

---

<div class="post-metadata">

**Author:** ![jonathanvalgarlh4ow](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@jonathanvalgarlh4ow](https://community.thunkable.com/u/jonathanvalgarlh4ow)\
**Post date:** [May 8, 2020, 4:29am UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/11 "2020-05-08T04:29:07Z")

</div>

Yes, thunkable is great but there are some things that cannot be done with it, so, i survive using APIs 🤣

Anyway, thanks for your effort.

---

<div class="post-metadata">

**Author:** ![athornock](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@athornock](https://community.thunkable.com/u/athornock)\
**Post date:** [May 9, 2020, 1:22am UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/12 "2020-05-09T01:22:22Z")

</div>

I’m doing a very similar type of thing exploring how to put them into a local data source. Not having the ability to delete rows in the local data source is causing some issues and could lead to an ever expanding table, but you can write over rows. So as long as your number of rows needed doesn’t change you should be able to make it work.

Just create a local data source and then convert the json into the rows. You’ll have to pre-define the columns, so the column names can’t change. The columns will be your keys and the row(s) will contain the data.

You can also clear any unused rows by just updating them as empty. It’ll show the rows, but the user won’t be able to click on them and you can make them at the end of the table.

---

<div class="post-metadata">

**Author:** ![athornock](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@athornock](https://community.thunkable.com/u/athornock)\
**Post date:** [May 9, 2020, 8:05pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/13 "2020-05-09T20:05:25Z")

</div>

Jonathan, I think I figured out a way to do what we need. Here’s a post that leads you some of the way. Create all your local rows with the blocks and make sure to save the row IDs in a list or you’ll be hurting later. If you need more help let me know.

> [@\[Solved\] Local Data Source for Data List Viewer Results in Empty Top Three Rows](http://community.thunkable.com/t/local-data-source-for-data-list-viewer-results-in-empty-top-three-rows/565115/3):
>
> I’m putting in data with blocks, pulling from airtable. There’s a very specific reason I’m doing it this way, I have to basically generate a user table on demand and doing it in a local source is by far the best way, but it appears that the local source has three blank rows by default. It looks like I can delete them from the original table and then clear out my cache and storage and then it’s gone. Developers if you’re listening, we really need a way to delete rows and get the row IDs easily f…

---

<div class="post-metadata">

**Author:** ![jonathanvalgarlh4ow](https://avatars.discourse-cdn.com/v4/letter/j/ecc23a/32.png) [@jonathanvalgarlh4ow](https://community.thunkable.com/u/jonathanvalgarlh4ow)\
**Post date:** [May 10, 2020, 12:03am UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/14 "2020-05-10T00:03:28Z")

</div>

Thanks Athornock,

Updating (and overwriting) the table will work just if the table has always the same length, but if it has different number of rows for every iteration there is a problem… I tried to use “null” or “” to try to eliminate the rows but it is not working. Or at least i don´t see how.

---

<div class="post-metadata">

**Author:** ![athornock](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@athornock](https://community.thunkable.com/u/athornock)\
**Post date:** [May 10, 2020, 12:08am UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/15 "2020-05-10T00:08:21Z")

</div>

Yeah, I don’t have a work around for that. If you think of one let me know. They really need a delete row method. It would also be nice to define tables with blocks and use variables in the blocks to call the tables. I’m sure they’ll get them in the next month or two.

---

<div class="post-metadata">

**Author:** ![jared](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/jared/32/138473_2.png) [@jared](https://community.thunkable.com/u/jared)\
**Post date:** [May 10, 2020, 1:07am UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/16 "2020-05-10T01:07:45Z")

</div>

I’m working on a workaround 🙂  
But I also had to mow the grass, clean house, read a chapter and write a page, take care of the kids, go on a mature walk… life + coding today did not mix well

---

<div class="post-metadata">

**Author:** ![athornock](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@athornock](https://community.thunkable.com/u/athornock)\
**Post date:** [May 10, 2020, 3:08am UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/17 "2020-05-10T03:08:17Z")

</div>

Hey by the way Jared,  
Do you have any fantastic solutions to run processes in the background?

---

<div class="post-metadata">

**Author:** ![jared](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/jared/32/138473_2.png) [@jared](https://community.thunkable.com/u/jared)\
**Post date:** [May 10, 2020, 1:35pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/18 "2020-05-10T13:35:46Z")

</div>

this is where I’m at so far.

i think i need to limit what i put in so that there is a fixe number of rows.

 ![Screen Shot 2020-05-10 at 9.34.17 AM](https://us1.discourse-cdn.com/flex015/uploads/thunkable/original/3X/0/8/08d128124d6c5cde6128e64728bef452d1f81786.png)  
 ![Screen Shot 2020-05-10 at 9.35.20 AM](https://us1.discourse-cdn.com/flex015/uploads/thunkable/original/3X/0/6/06f87b8f83ff25ee643d27d68e4db7f2c58c137c.png)

---

<div class="post-metadata">

**Author:** ![athornock](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@athornock](https://community.thunkable.com/u/athornock)\
**Post date:** [May 10, 2020, 4:43pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/19 "2020-05-10T16:43:36Z")

</div>

Looks good so far, that’s about where I’m at. The problem is deleting rows. The best I’ve been able to figure is only load so many at a time and keep the table down to like 10 or 15 rows that I just keep updating. Then I have a button that says load more.

At the very end of the data list I’m emptying any rows with blanks “”. That may leave some blank rows, but at least it’s manageable.

I’m curious to see what your solution is.

---

<div class="post-metadata">

**Author:** ![jared](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/jared/32/138473_2.png) [@jared](https://community.thunkable.com/u/jared)\
**Post date:** [May 10, 2020, 4:55pm UTC](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050/20 "2020-05-10T16:55:50Z")

</div>

That was my exact thought 🙂

[Next page](https://community.thunkable.com/t/how-to-use-new-data-viewer-as-an-extended-listviewer/565050.md?page=2)
