tertek / redcap-repeat-survey-link Goto Github PK
View Code? Open in Web Editor NEWAccess to the next instance of a repeating instrument's survey from any other instrument/form/survey.
License: MIT License
Access to the next instance of a repeating instrument's survey from any other instrument/form/survey.
License: MIT License
Hello,
Thank you so much for helping me troubleshoot. I've attached a word document that contains the error message, along with the other information you requested and screenshots. I believe I set everything up correctly, but please let me know if I missed or misinterpreted anything. I also want to confirm the functionality of this external module. When I am able to get it working correctly, I should be able to provide users with a repeating survey link that will allow users to complete a public survey multiple times, generating a new instance for that record, correct?
Thank you again for your assistance and please let me know if you need anything else from me to help troubleshoot. Also let me know if there is something that my local IT needs to do from their end to get this external module to work correctly.
Thank you,
Amber
On a production environment with 60k+ records we encountered the following Exception after saving project setting configuration:
Exception: An error occurred while running an External Module query: 'Statement preparation failed'. The error from the database was: 'Prepared statement contains too many placeholders'
Reason:
The MySQL / Maria DB placeholder limit per query has been reached, see here and here.
Solution:
Chunk into separate queries not reaching the limit.
The 'repeat_survey_link' module threw the following exception when calling the hook method 'redcap_module_save_configuration':
Exception: Multiple events found for project 119 in /opt/rh/httpd24/root/var/www/html/redcap/redcap_v10.6.4/ExternalModules/classes/framework/Project.php:64
Stack trace:
#0 /opt/rh/httpd24/root/var/www/html/redcap/redcap_v10.6.4/ExternalModules/classes/framework/Framework.php(347): ExternalModules\Project->getEventId()
#1 /opt/rh/httpd24/root/var/www/html/redcap/redcap_v10.6.4/ExternalModules/classes/framework/Framework.php(322): ExternalModules\Framework->getEventId(NULL)
#2 /opt/rh/httpd24/root/var/www/html/redcap/modules/repeat_survey_link_v1.0.2/repeatSurveyLink.php(119): ExternalModules\Framework->getRepeatingForms(NULL, NULL)
#3 /opt/rh/httpd24/root/var/www/html/redcap/modules/repeat_survey_link_v1.0.2/repeatSurveyLink.php(81): STPH\repeatSurveyLink\repeatSurveyLink->setDefinitions()
#4 /opt/rh/httpd24/root/var/www/html/redcap/modules/repeat_survey_link_v1.0.2/repeatSurveyLink.php(60): STPH\repeatSurveyLink\repeatSurveyLink->init_rsl('119')
#5 [internal function]: STPH\repeatSurveyLink\repeatSurveyLink->redcap_module_save_configuration('119')
#6 /opt/rh/httpd24/root/var/www/html/redcap/redcap_v10.6.4/ExternalModules/classes/ExternalModules.php(2766): call_user_func_array(Array, Array)
#7 /opt/rh/httpd24/root/var/www/html/redcap/redcap_v10.6.4/ExternalModules/classes/ExternalModules.php(2906): ExternalModules\ExternalModules::startHook('repeat_survey_l...', 'v1.0.2', Array)
#8 /opt/rh/httpd24/root/var/www/html/redcap/redcap_v10.6.4/ExternalModules/classes/ExternalModules.php(2920): ExternalModules\ExternalModules::ExternalModules{closure}('repeat_survey_l...', 'v1.0.2')
#9 /opt/rh/httpd24/root/var/www/html/redcap/redcap_v10.6.4/ExternalModules/manager/ajax/save-settings.php(40): ExternalModules\ExternalModules::callHook('module_save_con...', Array, 'repeat_survey_l...')
#10 {main}
When saving the module configuration from system settings an exception is thrown:
Exception: The Project Id cannot be null! in /opt/rh/httpd24/root/var/www/html/redcap/redcap_v10.6.4/ExternalModules/classes/ExternalModules.php:2170
Reason:
Call to hook 'redcap_module_save_configuration' is not filtered for project / system level page.
Solution:
Set $project_id default to null and init_rsl only if not null.
New Smart Variable: [new-instance]
This new Smart Variable can be appended to [survey-link] or [form-link] to create a link to a new, not-yet-created repeating instance for the current record. For example, you can create a recurring alert that contains [survey-url:repeating_survey][new-instance] in the text, in which it will send the recipient a survey link for creating a new instance of a repeating survey.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.