3 Replies Latest reply on Nov 5, 2013 8:22 AM by philmodjunk

    Ideas for speed on find function

    ninja

      Title

      Ideas for speed on find function

      Post

           Howdy all,

           I have a working solution that I'm simply looking for additional ideas for startup speed.

           Document Table..........WhoCanSee Table.............Employee Table

           DocumentID----<   DocumentID

                                            People with Access ------- Name/AccountName translator

           The third table is needed simply because the access definitions are by full name, whereas the account names are not full name.  I could simplify this by either making access names on the WhoCanSee table by account name, or have login by full name, but neither of those are options for me due to outside restrictions.

           So on startup, I do a find from the perspective of the Document Table for the account name in the Employee table...two tables away, FMP Server12 on the cloud.  It can take up to 30 seconds.

           I am looking for ideas that I haven't already tried to shorten the startup process.  Once in the found set, things work pretty quickly...it is just the initial find that takes a while.

           I have tried:

           - Start with Employee table, GTRR to WhoCanSee, GTRR to Documents...this is also a find (two of them) and takes longer.

           - Create a separate join between employee and Document with just the DocumentID and accountname (so I'm only looking one table away)...this takes just as long as what is above.

           - Blank layout to start with list of Doc's they can see, then a click takes then to a different layout with the document and the list.  The list of what they can see only populates if they are on a record they are allowed to see...thus I have to do the find anyway which makes this approach sorta useless.

            

           Anyone have the great idea that I missed?

           Thanks for your input.

            

        • 1. Re: Ideas for speed on find function
          philmodjunk

               Why not use Manage security to limit access to records in the Document table by Account name or privilege set?

               Then any find performed on the Document table will automatically filter out the "No access" records.

               Don't know how much difference it would make speedwise but you wouldn't need two GTRR steps to get from Employess to documents. You can use just one.

          • 2. Re: Ideas for speed on find function
            ninja

                 The view privileges on the Documents table is set to limitied...where Employee::accountname = Get(AccountName).  Doing a find for a record you are NOT allowed to see puts you on that record with <<no access>> in all the fields.

                 Is there a setting I'm missing to engage that automatic filter to which you refer?

            • 3. Re: Ideas for speed on find function
              philmodjunk
                   

                        Doing a find for a record you are NOT allowed to see puts you on that record with <<no access>> in all the fields.

                   Sorry but this does not happen. The <<no access>> records are automatically omitted from the found set.