Jump to content

Performance: stored calculation field vs auto-enter calculation field

Recommended Posts

Is there any difference in terms of performance between a calculation field (stored and indexed) and field defined as auto-enter calculated value (indexed)?

For example, we have an “INVOICE” table, with a field called “date_invoice_sent”, and we’d like to have a boolean field called “is_sent”.

The calculation would be “not IsEmpty(date_invoice_sent)”

So we have two options here:

- Calculation field (stored, number result).
- Number field defined as “auto-enter / calculated value / do not replace … unchecked”.

Would there be any difference in performance between the two options? thanks in advance!

Share this post

Link to post
Share on other sites
2 hours ago, Wim Decorte said:

No difference AFAIK.

Thank you!

Share this post

Link to post
Share on other sites

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

  • Similar Content

    • By MSPJ
      So I have a hosted solution, with a dashboard with a couple portals. When I go to scroll a portal, scrolling even one portal screen has a delay of a few seconds, ie I click the scroll bar or try to drag it, and it takes about 3 seconds before it moves. Running locally, it's instantaneous. Running on a dev server on my LAN, there's a slight delay, but minimal.
      Having read various threads about this situation, my first thought was it's due to a filtered portal, so I removed filtering, but that made no difference.
      I also read various posts about unstored calcs and other factors that would cause all the data to have to be transferred to the client over the WAN.
      But here's the thing - at the moment, there are about 20 records in the database, related to the particular portal. 
      Clearly, moving that data can't be the primary issue - right? 
      I do have a lot of Execute SQL calculations in related tables, and I've read that can cause poor performance. But wouldn't that only be a factor when there are a lot of records?  
      Are there design /schema choices that would cause significant lag regardless of the amount of data? 
    • By lan
      FMS 15 Windows Server 2012 host on Azure Plug in: 360Works ScriptMaster Purpose for using the Plug in: zip the pdf files. Problems We have:
      There are a large amount temp files created on the client machine which run the fmp to connect the server , the temp files won't removed. What I am looking for:
      Any script step can avoid these temp files stay in temp folder. How these files created? I attached a screenshot.

    • By TJ53
      Let’s say we have two related tables: “Invoice” and “Invoice_Item”. We could create a calculation field in the “Invoice” table called “total_amount” with this formula:
      total_amount = Sum (Invoice_Item::amount)
      This field would have a negative impact in performance when appearing in the layout, since it would have to be defined as unstored, because it’s referencing a field from a related table.
      Now let’s suppose this field is not used for any scripts, tooltips, conditional format, etc … would the performance of the database be negatively affected ONLY when this field appeared in a layout? 
      In other words, would adding an unstored calculation field to a table involve a performance penalty, even in the “unreal” case where this field didn’t appear in any layout, script, conditional format, etc.? thanks in advance!
    • By JerrySalem
      I have a system being hosted using FMS14.  I also have a duplicate database hosted for testing/exporting using FMS15. PSOS is much slower in my hands with FMS15.
      Both servers are physical boxes, with similar (maybe identical) specs (Cores, RAM HD Space, HD Space available)
      I also have a Server Side script that creates a found set, exports data to excel and emails it to a user.  (This is based on https://www.skeletonkey.com/restoring-filemaker-clients-found-set-within-server-side-script/).  The exports have a couple of related fields, but no unstirred calculations.
      Using FMS14 this has been working just fine.  Using FMS15 it has been significantly slower.
      As a test, I exported 13,000 records from both FMS14 and FMS15.
      Using FMS14, it takes about 10 Seconds to recreate the found set, then 70 Seconds to create the export.  
      Using FMS15, it takes about 20 Seconds to recreate the (same) found set, then 175 Seconds to export the data.
      In another series of tests, this time exporting 30,000 records (more realistic in my scenario) I found;
      Using FMS14, it takes about 25 Seconds to recreate the found set, then 168 Seconds to create the export.  (2.5x longer to find/2x longer to export 3x records)
      Using FMS15, it takes about 90 Seconds to recreate the (same) found set, then 825 Seconds to export the data. 9x longer to find/11x longer to export 3x records)
      In the last series of tests, this time exporting 50,000 records I found;
      Using FMS14, it takes about 59 Seconds to recreate the found set, then 262 Seconds to create the export.  (6x longer to find/4x longer to export 5x records)
      Using FMS15, it takes about 160 Seconds to recreate the (same) found set, then 1700 Seconds to export the data.(16x to find/24x to export 5x records)
      Any ideas?  Anyone see similar results with PSOS on FMS15?  
      Again, the machines are identical, the databases are identical and the scripts are identical.  the only difference is FMS14 vs. FMS15.  I am also letting another user pull data using ODBC.  That has also gotten extremely slow using FMS15, but that is a discussion for another thread.  I am not using WebD on this server.  In general the FMS15 database performs find using FMP Clients.  But the FMS15 functions are not very impressive.  I am petrified to move my production database to FMS15, and even considering moving the test server back to FMS14.  Help!
    • By VictorLion
      I am building a customer database. The database will have a primary key. I am looking to make the primary key either a unique integer or a UUID (with 32 chars). The UUID appeals to me due to its ability to sync tables. The primary key will be used for (obviously):
      Searching and sorting records As a tag against documents eg document XX is linked to customer AA, BB and CC; and  A foreign key to link tables My questions are:
      Do UUIDs adversely affect database size Do UUIDs adversely affect speed If UUIDs retain their full 32 chars, then there will obviously be a disadvantage.
      However, is FM clever enough to convert the UUID "under the hood" (such as to an integer referenced index) to improve database speed and/or size.

Important Information

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