REDCap - reporting data back to user - data-transfer

I'm looking for a simple solution for a cooperative project where specimens will be mailed to me, and I would report several measurements back to the sender.
I need the originating site to fill out a form with some basic information (specimen ID, collection dates, shipment tracking #, etc). Then I need to let the site know I received the shipment - via the same form. Then, after some analytics, I need to report 3 numerical values (biomarker levels) back to the site.
Someone recommended REDCap for this project. I know I can do data collection with REDCap (the initial requisition form), but can I also report the values back with REDCap?

It appears I found the solution, by talking to a REDCap expert. In case someone is interested, here's basic outline:
Create two forms: one for requisiton, another one for reporting data back to user.
Invite REDCap users to my project and give them read-only rights to the second form.
Put other users in Data Access Groups, so they only can see the requisitions (and results) from their own group.
This might work, but I decided to not go this way. In REDCap, an user has all rights by default, and I would have to limit them. In my application there is too much potential for data breach due to mistake in assigning rights and DAGs.

Another solution would be to use REDCap with an email alert module enabled.
Configure a project with two forms:
One for the client to enter the information you need from them, and make that form anonymous - no user account needed, and collect an email address from them (to return results). For the example below let's call this form [request].
The second form will be for you to enter the biomarker levels and whatever else you need to. This form only needs to be viewable and editable by you. Let's call this [results].
Then, if you have the email alerts module enabled (and you'll have to speak with your REDCap administrators about that) you can configure it to automatically email someone with information contained in the record, and to set the logic by which the email is sent.
This solution and the one you were recommended are the same with respect to form design, but they differ in the way the results are shared with the requestor. This solution does not require the user to have an account to access the results. I personally think the other solution (with user roles and DAGs) is the better solution.

Related

Paywall content in DNN

I am using DNN 9.3.2 and Evoq 9.3.7.
I would like to paywall content in a section of the website with teaser content i.e. so that they can read a part of the article but need to pay/ log in to access the content. 'Members' would also need to be able to log in and bypass the paywall. Users would idealy be able to manage their account from here. The paywall would also need to be able to handle a complex pricing model i.e. different prices for different user types, possibly different content available for different user types.
Would anyone be able to advise how best to do this with DNN/ Evoq, and which modules from DNN store (if any) would be useful?
Thanks!
I have never tried this, but in theory any shop solution should give you that functionality. Have a look at OpenStore, which is Open Source and free.
Or a News/Blog module that supports paid content, as EasyDnnNews.
I believe you'll have to brew your own or ask a specialist who knows what they are doing already. The basic principle is as follows:
Protect a page with a role - let's call it Patrons which only paying users will get
Create a page for users to pay on, and if successful, assign them the role
You can also do things like ensure that the role is only given for a certain time, and then the users must pay again.
If you have a subscription model, you would probably run a timer job or something to verify payments have happened again, and if true, extend the role assignment

Database Design for Dynamic/Reusable Form Templates

I apologize for the poor title, I couldn't think of a more clear way to phrase what I need help with.
I'm working on an application that allows users to submit "reports" for when certain incidents happen in a workplace. These reports are basically just a form and they help gather information to help deal with any sort of claims such as insurance, medical bills, etc.
A report can be of different "report_types". For example, different report_types could be "Auto Accident" or "Employee Injury".
Within report_types, there can be different report_templates. For instance, a user could have an "Auto Accident Oregon" template or "Auto Accident California" template because the requirements to file an insurance claim may be different in different states. The same applies to all report_types, there can be different report_templates for each report type based on location or the information needed even though it is technically the same type of incident that occurred.
The report_template is basically just a name and a json object that defines the schema for how to render the form. When a user goes to submit a report, I use a form renderer library to render the report based on the schema in the report_template. Then when a user submits the report, I save the json data from the form in a report row.
Before the user submits a report, he has to check sign a box to say that the report is accurate, and I am storing that data on a report_signatures table.
I attached a picture of my current database design below, I would love some feedback on it to see if this makes sense for what I'm trying to accomplish. The other challenge I'm facing is to be able to have an audit log of the reports so every time a user updates a report and resigns the signature box, the versions will be track. I think an insert-only table on reports would work well here, but I would also love some help with gettin that to work.

Creating a database by gathering data with a customized web form

I'm going to be creating a database using data that I gather from business owners. To do this, I need a service that will allow me to create a customized form that the business owner can fill out and submit. This form will require some logic, e.g., if the owner picks option A, a text box should appear prompting for more info but the textbox would not appear for option B. It would be great if the business owner could go back and edit fields after submission. As a first step, I looked at SurveyMonkey but a) it doesn't have the ability to customize the flow of the questions in the way I desire and b) it obviously doesn't meet my need to allow the page to be editable. Does anyone have any suggestions for me? Thanks.
Sounds like what you need is a simple web page with database.
You could use some free web host which provides you with database, free domain and some disc space. There are plenty of those.
If you dont know how to make a web page yourself, then its easy to find someone who can.

Collective web chat

I need to develop a web chat with one "advanced" feature: grouping chat - like the Skype's chatting system.
The theory is trivial, but in practice it is very hard. Since last friday I was thinking about this, but I have no idea of how I can apply this architecture. Basically I need a database's design with a good structure without store redundancy.
Ok....... so far it seems simple, but now I'll introduce our main feature: history by user.
I can create one chat with 2 users. Ok, two days passed and I want to add a third user to join the conversation. The chat's history for him will be different: he will not be able to view old messages in that chat.
Wonderful, huh? Remember, friends: I can not use XML to store the history locally. I NEED to user a SQL Database. In my case, I'm using SQL-Server, from Microsoft.
Can you all understand my problem? If yes, isn't trivial, huh? Ok. Can someone think how I can solve this problem? I'm going crazy!
Actually the problem is trivial. Storing it in XML would be the real problem.
Users (UserId, Name)
Chat (ChatId, ChatName)
ChatParticipation (ChatParticipationId, UserId, JoinChatMessageId, LeaveMessageId)
ChatMessages (ChatMessageId, ChatId, UserId, Message)
By adding the ChatParticipation table you will know exactly which is the ChatMessageId at which the user joined the chat (JoinChatMessageId) and don't show him messages prior messages. LeaveMessageId can track when he left the chat room. Multiple join/leaves can be modeled as separate participation.
You haven't said what language (PHP etc).. So it's kinda hard, but, if I was creating this from a PHP point of view I would have the chat based upon id's. www.site.com/chat.php?id={id} and then have a way to accept / decline the user accordingly.
I can create one chat with 2 users. Ok, two days passed and I want to add a third user to join the conversation. The chat's history for him will be different: he will not be able to view old messages in that chat.
Why not give each message a date and a time, and then when a user member enters the chat, they can only see the messages from this date/time? This could work in theory.
So if I joined the chat today at 15:20pm then I can only see messages on or after 15:21.
Your main problem is going to displaying the messages in real-time, because it is a web application..
Good luck!
I am not sure, whether I understand your problem correctly.
As far as I understand it, you need 4 tables:
user (userid, username),
conversation (conversationid, conversationtitle),
user_conversation (userid, conversationid)
post (userid, conversationid, text)
user stores all users registered in your system. conversation stores all conversations. user_conversation maps theusers to the conversations they are allowed into. Post stores the posts a user has made in a certain conversation.
Now you can simply retrieve data from post by user, by conversation or both. If you dont want a user to see older posts, add a date field.
Regards
Luigi

DNN module sugestions needed, form/reg, pyment, emailing

i need a module that is kind of a cross between a registration module and a form module.
it need to allow for custom form fields to be saved to the DB and work as part of a flow such that once data is entered by the users they click next and see the data to confirm it is correct. at this point they should have the option to edit the data if they notice an error or continue to a payment page.
the payment page needs to have a module that can integrat with payment gateways liek paypal and accept credit cards. once credit card data is entered and the transaction is complete a custom email with a unique userNumber needs to be sent to the user.
i figure im lookign at three separate modules for this typeof work flow. but i hope since this is a standard type of register, pay, email confirm operation there may be a single module i can confugure to meet my needs.
thoughts? suggestions?
Have you looked at DNM RAD by DotNet Mushroom?
http://www.dotnetmushroom.com/DNMRADGeneral/GeneralInformation/WhatisDNMRAD/tabid/2347/Default.aspx
I have not had a use for this yet, but it is a module that I have on my short list in case the need comes up. They do state that they can work with pament gateways.
Good luck.
You might have to be somewhat flexible with your work flow if you want to used 100% canned modules.
FormMaster is a pretty good form solution. You can write to existing database tables, structure SQL tables or just the default is an XML file. It doesn't go through a preview before saving though.
FormMaster Website
Searching snowcovered.com you can certainly find something that can process a payment. That one shouldn't be too difficult.
I'm thinking you may need to sling some code to get the exact experience you are looking for.

Resources