Jump to content
  • 0

Submission Form suddenly slow


LeftEar

Question

Within the past month our datapage of just over 3 years is now taking forever to login and load. No changes have been made to the DP itself in ages, and i've been wracking my brain trying to find an answer. I currently have a case with support open but no luck. 
We have a submission form that we use for attendance with the date, and slots that auto complete for up to 64 people (the most we've ever had at once). While i can't pinpoint the exact time, i want to say it was around the same time as the latest caspio bridge update. 

What is odd, is in preview it loads instantly, but when i use the normal link, we're looking at 30+ seconds from the time we hit login before it loads the Datapage. 
Here is my script that's in the footer. Again, all of this has been working fine since 2016

 

<SCRIPT LANGUAGE="JavaScript">

function concatenate()
{
var position1 = document.getElementsByName("InsertRecordPosition1")[0].value;
var position2 = document.getElementsByName("InsertRecordPosition2")[0].value;
var position3 = document.getElementsByName("InsertRecordPosition3")[0].value;
var position4 = document.getElementsByName("InsertRecordPosition4")[0].value;
var position5 = document.getElementsByName("InsertRecordPosition5")[0].value;
var position6 = document.getElementsByName("InsertRecordPosition6")[0].value;
var position7 = document.getElementsByName("InsertRecordPosition7")[0].value;
var position8 = document.getElementsByName("InsertRecordPosition8")[0].value;
var position9 = document.getElementsByName("InsertRecordPosition9")[0].value;
var position10 = document.getElementsByName("InsertRecordPosition10")[0].value;
var position11 = document.getElementsByName("InsertRecordPosition11")[0].value;
var position12 = document.getElementsByName("InsertRecordPosition12")[0].value;
var position13 = document.getElementsByName("InsertRecordPosition13")[0].value;
var position14 = document.getElementsByName("InsertRecordPosition14")[0].value;
var position15 = document.getElementsByName("InsertRecordPosition15")[0].value;
var position16 = document.getElementsByName("InsertRecordPosition16")[0].value;
var position17 = document.getElementsByName("InsertRecordPosition17")[0].value;
var position18 = document.getElementsByName("InsertRecordPosition18")[0].value;
var position19 = document.getElementsByName("InsertRecordPosition19")[0].value;
var position20 = document.getElementsByName("InsertRecordPosition20")[0].value;
var position21 = document.getElementsByName("InsertRecordPosition21")[0].value;
var position22 = document.getElementsByName("InsertRecordPosition22")[0].value;
var position23 = document.getElementsByName("InsertRecordPosition23")[0].value;
var position24 = document.getElementsByName("InsertRecordPosition24")[0].value;
var position25 = document.getElementsByName("InsertRecordPosition25")[0].value;
var position26 = document.getElementsByName("InsertRecordPosition26")[0].value;
var position27 = document.getElementsByName("InsertRecordPosition27")[0].value;
var position28 = document.getElementsByName("InsertRecordPosition28")[0].value;
var position29 = document.getElementsByName("InsertRecordPosition29")[0].value;
var position30 = document.getElementsByName("InsertRecordPosition30")[0].value;
var position31 = document.getElementsByName("InsertRecordPosition31")[0].value;
var position32 = document.getElementsByName("InsertRecordPosition32")[0].value;

var position33 = document.getElementsByName("InsertRecordPosition33")[0].value;
var position34 = document.getElementsByName("InsertRecordPosition34")[0].value;
var position35 = document.getElementsByName("InsertRecordPosition35")[0].value;
var position36 = document.getElementsByName("InsertRecordPosition36")[0].value;
var position37 = document.getElementsByName("InsertRecordPosition37")[0].value;
var position38 = document.getElementsByName("InsertRecordPosition38")[0].value;
var position39 = document.getElementsByName("InsertRecordPosition39")[0].value;
var position40 = document.getElementsByName("InsertRecordPosition40")[0].value;
var position41 = document.getElementsByName("InsertRecordPosition41")[0].value;
var position42 = document.getElementsByName("InsertRecordPosition42")[0].value;
var position43 = document.getElementsByName("InsertRecordPosition43")[0].value;
var position44 = document.getElementsByName("InsertRecordPosition44")[0].value;
var position45 = document.getElementsByName("InsertRecordPosition45")[0].value;
var position46 = document.getElementsByName("InsertRecordPosition46")[0].value;
var position47 = document.getElementsByName("InsertRecordPosition47")[0].value;
var position48 = document.getElementsByName("InsertRecordPosition48")[0].value;
var position49 = document.getElementsByName("InsertRecordPosition49")[0].value;
var position50 = document.getElementsByName("InsertRecordPosition50")[0].value;
var position51 = document.getElementsByName("InsertRecordPosition51")[0].value;
var position52 = document.getElementsByName("InsertRecordPosition52")[0].value;
var position53 = document.getElementsByName("InsertRecordPosition53")[0].value;
var position54 = document.getElementsByName("InsertRecordPosition44")[0].value;
var position55 = document.getElementsByName("InsertRecordPosition55")[0].value;
var position56 = document.getElementsByName("InsertRecordPosition56")[0].value;
var position57 = document.getElementsByName("InsertRecordPosition57")[0].value;
var position58 = document.getElementsByName("InsertRecordPosition58")[0].value;
var position59 = document.getElementsByName("InsertRecordPosition59")[0].value;
var position60 = document.getElementsByName("InsertRecordPosition60")[0].value;
var position61 = document.getElementsByName("InsertRecordPosition61")[0].value;
var position62 = document.getElementsByName("InsertRecordPosition62")[0].value;
var position63 = document.getElementsByName("InsertRecordPosition63")[0].value;
var position64 = document.getElementsByName("InsertRecordPosition64")[0].value;

var allpositions = position1 + ","+ position2 + ","+ position3 + ","+ position4 + ","+ position5  + ","+ position6 + ","+ position7 + ","+ position8 + ","+ position9 + ","+ position10 + ","+ position11 + ","+ position12 + ","+ position13 + ","+ position14 + ","+ position15 + ","+ position16 + ","+ position17 + ","+ position18 + ","+ position19 + ","+ position20 + ","+ position21 + ","+ position22 + ","+ position23 + ","+ position24 + ","+ position25 + ","+ position26 + ","+ position27 + ","+ position28 + ","+ position29 + ","+ position30 + ","+ position31 + ","+ position32 + ","+ position33 + ","+ position34 + ","+ position35 + ","+ position36 + ","+ position37 + ","+ position38 + ","+ position39 + ","+ position40 + ","+ position41 + ","+ position42 + ","+ position43 + ","+ position44 + ","+ position45 + ","+ position46 + ","+ position47 + ","+ position48 + ","+ position49 + ","+ position50 + ","+ position51 + ","+ position52 + ","+ position53 + ","+ position54 + ","+ position55 + ","+ position56 + ","+ position57 + ","+ position58 + ","+ position59 + ","+ position60 + ","+ position61 + ","+ position62 + ","+ position63 + ","+ position64;

document.getElementsByName("InsertRecordAllPositions")[0].value = allpositions;

}
document.getElementById("caspioform").onsubmit=concatenate;
</SCRIPT>

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Hello @LeftEar

Please make sure that your datapage use AJAX loading. The "Disable AJAX Loading" checkbox should be unchecked.
QJbc5PW.png

Please try to use this code instead:

<script type="text/javascript">

function concatenate() {
  var position1 = document.getElementsByName("InsertRecordPosition1")[0].value;
  var position2 = document.getElementsByName("InsertRecordPosition2")[0].value;
  var position3 = document.getElementsByName("InsertRecordPosition3")[0].value;
  var position4 = document.getElementsByName("InsertRecordPosition4")[0].value;
  var position5 = document.getElementsByName("InsertRecordPosition5")[0].value;
  var position6 = document.getElementsByName("InsertRecordPosition6")[0].value;
  var position7 = document.getElementsByName("InsertRecordPosition7")[0].value;
  var position8 = document.getElementsByName("InsertRecordPosition8")[0].value;
  var position9 = document.getElementsByName("InsertRecordPosition9")[0].value;
  var position10 = document.getElementsByName("InsertRecordPosition10")[0].value;
  var position11 = document.getElementsByName("InsertRecordPosition11")[0].value;
  var position12 = document.getElementsByName("InsertRecordPosition12")[0].value;
  var position13 = document.getElementsByName("InsertRecordPosition13")[0].value;
  var position14 = document.getElementsByName("InsertRecordPosition14")[0].value;
  var position15 = document.getElementsByName("InsertRecordPosition15")[0].value;
  var position16 = document.getElementsByName("InsertRecordPosition16")[0].value;
  var position17 = document.getElementsByName("InsertRecordPosition17")[0].value;
  var position18 = document.getElementsByName("InsertRecordPosition18")[0].value;
  var position19 = document.getElementsByName("InsertRecordPosition19")[0].value;
  var position20 = document.getElementsByName("InsertRecordPosition20")[0].value;
  var position21 = document.getElementsByName("InsertRecordPosition21")[0].value;
  var position22 = document.getElementsByName("InsertRecordPosition22")[0].value;
  var position23 = document.getElementsByName("InsertRecordPosition23")[0].value;
  var position24 = document.getElementsByName("InsertRecordPosition24")[0].value;
  var position25 = document.getElementsByName("InsertRecordPosition25")[0].value;
  var position26 = document.getElementsByName("InsertRecordPosition26")[0].value;
  var position27 = document.getElementsByName("InsertRecordPosition27")[0].value;
  var position28 = document.getElementsByName("InsertRecordPosition28")[0].value;
  var position29 = document.getElementsByName("InsertRecordPosition29")[0].value;
  var position30 = document.getElementsByName("InsertRecordPosition30")[0].value;
  var position31 = document.getElementsByName("InsertRecordPosition31")[0].value;
  var position32 = document.getElementsByName("InsertRecordPosition32")[0].value;

  var position33 = document.getElementsByName("InsertRecordPosition33")[0].value;
  var position34 = document.getElementsByName("InsertRecordPosition34")[0].value;
  var position35 = document.getElementsByName("InsertRecordPosition35")[0].value;
  var position36 = document.getElementsByName("InsertRecordPosition36")[0].value;
  var position37 = document.getElementsByName("InsertRecordPosition37")[0].value;
  var position38 = document.getElementsByName("InsertRecordPosition38")[0].value;
  var position39 = document.getElementsByName("InsertRecordPosition39")[0].value;
  var position40 = document.getElementsByName("InsertRecordPosition40")[0].value;
  var position41 = document.getElementsByName("InsertRecordPosition41")[0].value;
  var position42 = document.getElementsByName("InsertRecordPosition42")[0].value;
  var position43 = document.getElementsByName("InsertRecordPosition43")[0].value;
  var position44 = document.getElementsByName("InsertRecordPosition44")[0].value;
  var position45 = document.getElementsByName("InsertRecordPosition45")[0].value;
  var position46 = document.getElementsByName("InsertRecordPosition46")[0].value;
  var position47 = document.getElementsByName("InsertRecordPosition47")[0].value;
  var position48 = document.getElementsByName("InsertRecordPosition48")[0].value;
  var position49 = document.getElementsByName("InsertRecordPosition49")[0].value;
  var position50 = document.getElementsByName("InsertRecordPosition50")[0].value;
  var position51 = document.getElementsByName("InsertRecordPosition51")[0].value;
  var position52 = document.getElementsByName("InsertRecordPosition52")[0].value;
  var position53 = document.getElementsByName("InsertRecordPosition53")[0].value;
  var position54 = document.getElementsByName("InsertRecordPosition44")[0].value;
  var position55 = document.getElementsByName("InsertRecordPosition55")[0].value;
  var position56 = document.getElementsByName("InsertRecordPosition56")[0].value;
  var position57 = document.getElementsByName("InsertRecordPosition57")[0].value;
  var position58 = document.getElementsByName("InsertRecordPosition58")[0].value;
  var position59 = document.getElementsByName("InsertRecordPosition59")[0].value;
  var position60 = document.getElementsByName("InsertRecordPosition60")[0].value;
  var position61 = document.getElementsByName("InsertRecordPosition61")[0].value;
  var position62 = document.getElementsByName("InsertRecordPosition62")[0].value;
  var position63 = document.getElementsByName("InsertRecordPosition63")[0].value;
  var position64 = document.getElementsByName("InsertRecordPosition64")[0].value;

  var allpositions = position1 + ","+ position2 + ","+ position3 + ","+ position4 + ","+ position5  + ","+ position6 + ","+ position7 + ","+ position8 + ","+ position9 + ","+ position10 + ","+ position11 + ","+ position12 + ","+ position13 + ","+ position14 + ","+ position15 + ","+ position16 + ","+ position17 + ","+ position18 + ","+ position19 + ","+ position20 + ","+ position21 + ","+ position22 + ","+ position23 + ","+ position24 + ","+ position25 + ","+ position26 + ","+ position27 + ","+ position28 + ","+ position29 + ","+ position30 + ","+ position31 + ","+ position32 + ","+ position33 + ","+ position34 + ","+ position35 + ","+ position36 + ","+ position37 + ","+ position38 + ","+ position39 + ","+ position40 + ","+ position41 + ","+ position42 + ","+ position43 + ","+ position44 + ","+ position45 + ","+ position46 + ","+ position47 + ","+ position48 + ","+ position49 + ","+ position50 + ","+ position51 + ","+ position52 + ","+ position53 + ","+ position54 + ","+ position55 + ","+ position56 + ","+ position57 + ","+ position58 + ","+ position59 + ","+ position60 + ","+ position61 + ","+ position62 + ","+ position63 + ","+ position64;

  document.getElementsByName("InsertRecordAllPositions")[0].value = allpositions;
}
  
document.addEventListener('BeforeFormSubmit', concatenate);
</script>

 

 

Link to comment
Share on other sites

  • 0

Also, you may use the Formula Field on the Table level to concatenate values of the fields.
Example of the formula for 3 fields: 

CASE
WHEN Len([@field:bb]) = 0 THEN  ''
ELSE [@field:bb] + ', '
END
+
CASE
WHEN Len([@field:cc]) = 0 THEN  ''
ELSE [@field:cc] + ', '
END
+
CASE
WHEN Len([@field:dd]) = 0 THEN  ''
ELSE [@field:dd]
END

 

Link to comment
Share on other sites

  • 0
On 1/30/2020 at 3:50 AM, Hastur said:

<script type="text/javascript"> function concatenate() { var position1 = document.getElementsByName("InsertRecordPosition1")[0].value; var position2 = document.getElementsByName("InsertRecordPosition2")[0].value; var position3 = document.getElementsByName("InsertRecordPosition3")[0].value; var position4 = document.getElementsByName("InsertRecordPosition4")[0].value; var position5 = document.getElementsByName("InsertRecordPosition5")[0].value; var position6 = document.getElementsByName("InsertRecordPosition6")[0].value; var position7 = document.getElementsByName("InsertRecordPosition7")[0].value; var position8 = document.getElementsByName("InsertRecordPosition8")[0].value; var position9 = document.getElementsByName("InsertRecordPosition9")[0].value; var position10 = document.getElementsByName("InsertRecordPosition10")[0].value; var position11 = document.getElementsByName("InsertRecordPosition11")[0].value; var position12 = document.getElementsByName("InsertRecordPosition12")[0].value; var position13 = document.getElementsByName("InsertRecordPosition13")[0].value; var position14 = document.getElementsByName("InsertRecordPosition14")[0].value; var position15 = document.getElementsByName("InsertRecordPosition15")[0].value; var position16 = document.getElementsByName("InsertRecordPosition16")[0].value; var position17 = document.getElementsByName("InsertRecordPosition17")[0].value; var position18 = document.getElementsByName("InsertRecordPosition18")[0].value; var position19 = document.getElementsByName("InsertRecordPosition19")[0].value; var position20 = document.getElementsByName("InsertRecordPosition20")[0].value; var position21 = document.getElementsByName("InsertRecordPosition21")[0].value; var position22 = document.getElementsByName("InsertRecordPosition22")[0].value; var position23 = document.getElementsByName("InsertRecordPosition23")[0].value; var position24 = document.getElementsByName("InsertRecordPosition24")[0].value; var position25 = document.getElementsByName("InsertRecordPosition25")[0].value; var position26 = document.getElementsByName("InsertRecordPosition26")[0].value; var position27 = document.getElementsByName("InsertRecordPosition27")[0].value; var position28 = document.getElementsByName("InsertRecordPosition28")[0].value; var position29 = document.getElementsByName("InsertRecordPosition29")[0].value; var position30 = document.getElementsByName("InsertRecordPosition30")[0].value; var position31 = document.getElementsByName("InsertRecordPosition31")[0].value; var position32 = document.getElementsByName("InsertRecordPosition32")[0].value; var position33 = document.getElementsByName("InsertRecordPosition33")[0].value; var position34 = document.getElementsByName("InsertRecordPosition34")[0].value; var position35 = document.getElementsByName("InsertRecordPosition35")[0].value; var position36 = document.getElementsByName("InsertRecordPosition36")[0].value; var position37 = document.getElementsByName("InsertRecordPosition37")[0].value; var position38 = document.getElementsByName("InsertRecordPosition38")[0].value; var position39 = document.getElementsByName("InsertRecordPosition39")[0].value; var position40 = document.getElementsByName("InsertRecordPosition40")[0].value; var position41 = document.getElementsByName("InsertRecordPosition41")[0].value; var position42 = document.getElementsByName("InsertRecordPosition42")[0].value; var position43 = document.getElementsByName("InsertRecordPosition43")[0].value; var position44 = document.getElementsByName("InsertRecordPosition44")[0].value; var position45 = document.getElementsByName("InsertRecordPosition45")[0].value; var position46 = document.getElementsByName("InsertRecordPosition46")[0].value; var position47 = document.getElementsByName("InsertRecordPosition47")[0].value; var position48 = document.getElementsByName("InsertRecordPosition48")[0].value; var position49 = document.getElementsByName("InsertRecordPosition49")[0].value; var position50 = document.getElementsByName("InsertRecordPosition50")[0].value; var position51 = document.getElementsByName("InsertRecordPosition51")[0].value; var position52 = document.getElementsByName("InsertRecordPosition52")[0].value; var position53 = document.getElementsByName("InsertRecordPosition53")[0].value; var position54 = document.getElementsByName("InsertRecordPosition44")[0].value; var position55 = document.getElementsByName("InsertRecordPosition55")[0].value; var position56 = document.getElementsByName("InsertRecordPosition56")[0].value; var position57 = document.getElementsByName("InsertRecordPosition57")[0].value; var position58 = document.getElementsByName("InsertRecordPosition58")[0].value; var position59 = document.getElementsByName("InsertRecordPosition59")[0].value; var position60 = document.getElementsByName("InsertRecordPosition60")[0].value; var position61 = document.getElementsByName("InsertRecordPosition61")[0].value; var position62 = document.getElementsByName("InsertRecordPosition62")[0].value; var position63 = document.getElementsByName("InsertRecordPosition63")[0].value; var position64 = document.getElementsByName("InsertRecordPosition64")[0].value; var allpositions = position1 + ","+ position2 + ","+ position3 + ","+ position4 + ","+ position5 + ","+ position6 + ","+ position7 + ","+ position8 + ","+ position9 + ","+ position10 + ","+ position11 + ","+ position12 + ","+ position13 + ","+ position14 + ","+ position15 + ","+ position16 + ","+ position17 + ","+ position18 + ","+ position19 + ","+ position20 + ","+ position21 + ","+ position22 + ","+ position23 + ","+ position24 + ","+ position25 + ","+ position26 + ","+ position27 + ","+ position28 + ","+ position29 + ","+ position30 + ","+ position31 + ","+ position32 + ","+ position33 + ","+ position34 + ","+ position35 + ","+ position36 + ","+ position37 + ","+ position38 + ","+ position39 + ","+ position40 + ","+ position41 + ","+ position42 + ","+ position43 + ","+ position44 + ","+ position45 + ","+ position46 + ","+ position47 + ","+ position48 + ","+ position49 + ","+ position50 + ","+ position51 + ","+ position52 + ","+ position53 + ","+ position54 + ","+ position55 + ","+ position56 + ","+ position57 + ","+ position58 + ","+ position59 + ","+ position60 + ","+ position61 + ","+ position62 + ","+ position63 + ","+ position64; document.getElementsByName("InsertRecordAllPositions")[0].value = allpositions; } document.addEventListener('BeforeFormSubmit', concatenate); </script>

Curious, what am i missing here? This looks the same as what i have.

Made sure Disable AJAX was unchecked, and used the code above, still took about 70seconds to load the form
https://c2abb202.caspio.com/dp/0393800092d401ed7e374054b8d9

Link to comment
Share on other sites

  • 0
On 1/30/2020 at 7:35 AM, Hastur said:

Also, you may use the Formula Field on the Table level to concatenate values of the fields.
Example of the formula for 3 fields: 


CASE
WHEN Len([@field:bb]) = 0 THEN  ''
ELSE [@field:bb] + ', '
END
+
CASE
WHEN Len([@field:cc]) = 0 THEN  ''
ELSE [@field:cc] + ', '
END
+
CASE
WHEN Len([@field:dd]) = 0 THEN  ''
ELSE [@field:dd]
END

 

Apologize but i'm not following. Would i basically have 64 versions of this instead of what i have currently? The fields are currently names and i need to combine however many there are into a new field. Don't suppose you know of a way where i can prompt how many attended, and then populate the fields based on the answer rather than always displaying 64 fields

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...