We are facing slowness sometimes timeout error with UI. On Ui we are displaying 10 columns and one with record action icons also.
Data type is record type and layout is read only gridlayout.Using logical expression to filter data and user filters.The record is queried at many places in application.
Please suggest what can be possible issues because we are facing it frequently.
Discussion posts and replies are publicly visible
What exactly do you mean with "slowness"? What error do you see?
Did you check the performance tab in the UI designer?
Thanks Stefan!
It takes 10-40 seconds to load the page.Error is record type is available or timeout memory limit.
I have checked the performance tab the 99% time taken by a!grid field.In that 66% by data query and filters.
Then your data query is slow. You need to fix that.
Are you by any chance doing some kind of secondary query to another record type or API in one of the columns?
It is already existing and is set according to 15 set of users and have multiple if else conditions according to their group membership.
Sol.-If we make different expressioin rules then can it reduce query time?
help- Please suggest points to consider while reducing query time as using only on avg 5-6 query filters for one condition and all are necessary.
Is it possible if a record type is extensively used through out the application at every step can result in it's timeout or unavailability?
To improve query time, you will have to follow the normal database query optimisation tips&tricks. Reduce data volume, add indexing, reduce query complexity etc..
Yes multiple such instances as we have multiple relationships with other record types.
Data need to be filtered on basis of these relationships like checking out different fields from different record types.
Are you filtering that with the related record types on the original query or do you have separate queries for that?
i.e. for the each of the rows in the grid, you make an individual query to another Record or API to get some info
Thanks Mathieu!
No API being used and no individual query for each row.
For filters parameter in data inside a!gridfield we call a rule and have logical expression consisting of 6-7 query filters like
a!queryfilter(
field:parentrecord.record1.field or parentrecord.record1.record2.fieldoperator;
value:constant or boolenan or local!value)
Is this based on a database view?