Jump to content
View in the app

A better way to browse. Learn more.

FMForums.com

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Filtering an array Mixed Virtual Portal Let ( ) enquiry

Featured Replies

Hello,

for days I am trying to figure out how to do this- maybe it is easier then I think:

on a multiuser enviroment all on fm pro 11, I would like to use a mix of the virtual list technique (bruce robertson?)

with displaying related data for input through a portal.

Anyhow what I would like to do is this:

create a multiline key to display data that is filtered dynamically.

the approach:

parent connected to child via x cartesian

list (fieldfromchildindexed)

the field I am listing displays two fields in one line like so: categorykey||keychild

The list will retrieve no more then 6k records max.

Now what I would like to do is remove all the lines from the list that don't have a "selected" category in them

then I would like to remove all the left (list (Position (list ; "||"; 1;1)-1 from the list, giving me a clean multiline key

to set as the starting point for my portal to display.

I read something like this but I cannot manipulate it properly. Can anybody please help? I am not good at recursive functions...

The reason for doing this instead of a search and omit and getnthrecord values is my worry about speed for the users over wan.

Thank you.

Now what I would like to do is remove all the lines from the list that don't have a "selected" category in them

then I would like to remove all the left (list (Position (list ; "||"; 1;1)-1 from the list, giving me a clean multiline key

to set as the starting point for my portal to display.

so - within your loop script that builds the Virtual List,

make sure that category == "selected" if found

perform your left ( list ( Position ( list ; "||"; 1 ; 1) -1

-i

Now what I would like to do is remove all the lines from the list that don't have a "selected" category in them

Is there a reason to suppose this will be faster than a relationship based on inequality?

  • Author

so - within your loop script that builds the Virtual List,

make sure that category == "selected" if found

perform your left ( list ( Position ( list ; "||"; 1 ; 1) -1

-i

Well, the point is that there is no loop script to build the virtual list.

The starting list that I would like to filter is created via the

list ( childfieldindexed).

I am stuck on making the function recursive to loop through the records that are in the listfield ....

  • Author

Is there a reason to suppose this will be faster than a relationship based on inequality?

I am just supposing. This is a WAN issue. I dont want the full records to be transferred from child.

My idea is - based on the idea of fast aggregates by weetbicks http://www.teamdf.com/weetbicks/the-search-for-fast-aggregates-implementation-results/100/

that I could get a list of ids from a big list via the list (indexedfield) from a field that actually contains two fields as a stored, indexed calculation.

Instead of getting the full records, I would like to get just that field index (no full records are calculated) of all records (say 15K) and then recursively

run through those records in a recursive function in order to filter down the foundset.

When that list is done and complete, I would then just get the found set (and records would be downloaded).

Am I making sense?

My idea is - based on the idea of fast aggregates by weetbicks http://www.teamdf.co...on-results/100/

Perhaps I am not reading it correctly, but it seems that the "big list" is being obtained from a value list, not through the List() function?

  • Author

Perhaps I am not reading it correctly, but it seems that the "big list" is being obtained from a value list, not through the List() function?

That is correct. I was still assuming that if I get the list with list (childrecords) it would do the same thing. It is a concept thought that if a list of records

does not have to be sorted, do not have do any calculations and are indexed it will not download all the records but just the index.

Anyhow: I could do the getvaluelistitems as well, that does not matter IMO (since I will be filtering anyhow). Its the recursion of the function I am stuck with.

I could - in any case- sort the "found set list" if I am done....

It is a concept thought that if a list of records

does not have to be sorted, do not have do any calculations and are indexed it will not download all the records but just the index.

If that is true, why can't you get that list through a relationship based on:

SelectedCategory ≠ Child::Category

Create an account or sign in to comment

Important Information

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

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.