Jump to content

Filtering an array Mixed Virtual Portal Let ( ) enquiry


This topic is 4439 days old. Please don't post here. Open a new topic instead.

Recommended Posts

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.

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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 ....

Link to comment
Share on other sites

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?

Link to comment
Share on other sites

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....

Link to comment
Share on other sites

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

Link to comment
Share on other sites

This topic is 4439 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

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