Survey via Lotus Notes+access vba - ms-access

I'm developing an access vba application that sends Survey emails via Lotus Notes to our staff, based on different parameters. I would like these emails to include option buttons (embedded OLE objects)so our staff selects the desired options and clicks a button to send the answer back.
I can create these emails, embed the objects and send them from the 'Stationery' folder in Lotus Notes.
Since I'm a newbie to LotusScript:
What code should I insert into the button so I could receive back the selected options? Is it as simple as forwarding the original email back? I guess I could get the selected values via richtextitem, am I right?
Many thanks in advance

Based on your answers above, I suspect that your easiest course of action will be to include a "Reply-To" header in your email with the address of the mailbox that your Access code will scan, and include instructions to your user to "Reply with History to this message, make your selections, and then click Send".
However, another way to do it would be to create two prototype documents with rich text fields in a database that your code can access. In the first document, manually create a Notes button (not OLE) with #Command([Compose];"Reply With History") and an appropriate label. In the second document, manually create a button with #MailSend("your application's mailbox address"). Then write code to create your survey document, read the first prototype and it's rich text item and use the AppendRTItem method to put the prototype contents into the rich text field of your new document. Then write your code to insert your OLE survey stuff into the rich text. Finally, read the second prototype and its rich text item and use AppendRTItem again to tack it onto the end of your survey document's rich text item.

Related

generate link with that opens pre-populated message on clicking

We have service where all user interaction is done via texting (iMessage) using Sendblue. We want users to be able to refer their friends to get free credits. The easiest way we can think of would be giving that user a link to send to their friends, which, when opened, would auto-populate a message to our number, the content of that message being the referring user's number. Example:
I (phone number +1234) want to refer my friends. I send them a link, which when they click, opens a text message to +4321 (the service) with the text prepopulated with my phone number, "+1234".
Right now the entire service is run through Zapier, so ideally would be able to work through that. You can also enter Javascript blocks into Zapier to manipulate data if that would help.
The only solution I have been able to come up with so far is create a different webpage for every person's phone number, which would just be a custom html link with the above that would be clicked automatically on page open.
Is there an existing service that does this (and ideally works with Zapier)? Or would I have to do what is described above? If so, what is the easiest way to integrate that data? Is there a way to automate webpage creation?
Any and all help is appreciated!

Generate a code to each respondent after completing a form

I am conducting a survey among students and I want to measure their attitudes on the beginning and end of the semester.
However, I want the survey to be anonymous.
My question is: Is it possible to create a script in Google Forms which will generate a unique code for each respondent, save that code in the Google Sheets alongside the responses and most importantly, provide the respondent with the code so that in the next round of survey, he/she can insert the code so that I can link the responses from the two surveys.
Thank you so much for all the help!
Yes, you can achieve this with Apps Script. The workflow for getting such functionallity would be as follows:
Using Form Service every time a response is submitted generate a random number. If you want to track your codes so that two users don't end up with the same code (highly unlikely but possible) then store your codes with the responses in the Spreadsheet linked to your form using the Spreadsheet Service, specifically take a look at the methods for getting and setting values in a specific range. You can then compare your generated random number with the codes you already have and if it matches any generate a new random number and check again.
Either send this random number by email using Gmail Service or, in case it has to be completely anonymous set the submit message to display your code.
Then for providing a different form if the user already has an access code you can simply ask the user at the beggining of the form whether they have a code or they dont and depending on that redirect them to the section of the form that you wish. To verify this code you could then on the form response compare his code with the list of codes you already have to verify that this user actually did complete the form previously.
This generally takes several services working in tandem. However, an easy solution might be to have the first field on the form/survey simply ask the user to create and enter a codename for themselves, instructing them to save it (in their phone notes?) for use again at the end of the term. In fact, at the end of the term, you could even print out a full list of JUST the code names and post it for students to peruse, in case they forgot. Each person will certainly recognize the name they chose from a list, while no one else will know who's who. You could even ask them to submit the post-assessment right in class after checking the code name list. And actually, I'm sure most students will get a kick out of seeing (and wondering about) the weird code names that will turn up.

How do I create a "Details" button in Microsoft Access?

I'm new to using Microsoft Access, and I'm having trouble restricting a report's output to only the single row I'm interested in.
My organization has a relatively small client list, where a little of their information is used frequently (like their name and account status), and much is used infrequently but still important (like home phone and incident reports).
The way I want to display this information is to have a form that shows a list of our active clients with their most common information, and then has a "Details" button at the end of the client info for when people need to see the rest of that client's information.
So far, I've successfully made a form that links to an "ActiveClients_rpt" report that shows the most common info, and I've made another form that links to a "ClientDetails_rpt" report that shows all the detailed info. My problem is that when I try to restrict the results in the Client Details report by the user input in the Active Clients form, either I have to use a very unaesthetic option (like an ugly combo box that replicates the list of names the user can already see), or (if I try to do something like add a button inside a report) the form sends me the information of every client's detailed info, when I only want the info of the one client.
Is there some way I can use a report (or some other option) to tell Access to only pull information from the row in a list the button is located on? I've tried doing things like making an embedded macro using the OpenForm command to open my ClientDetails_form form with [Forms]![ClientDetails_form]![ID] or [Forms]![ClientDetails_form]![ID]=[Me].[ID] as a Where Condition (where ID is the client's ID #), but everything I've tried has either resulted in an error or not restricted the report like I want it to.
This is pretty complicated without seeing your actual database, but I did a video on something similar that might help here https://youtu.be/nNUjmH72OfI. You basically set a click event in the 'Event' tab of the Properties window while your 'Detail' button is selected (in form design view). You click on the builder button (button with three dots) and either use the Macro Builder or the Code Builder to type out the VBA. The Macro Builder is the simplest way in this case.
That's pretty vague, I admit. But hopefully the video helps.

View Custom Field Passed with GetResponse Form

I'm passing document.referrer to GetResponse when a user submits the subscription form. The custom field has been added to the form at runtime as instructed in this document and the "Forward Data" option is on. Upon form submission, the parameters are posted correctly. Problem is, the value doesn't show up anywhere in the user's details in GetResponse, where it would be most useful. Where can I retrieve it?
I'm answering my own question s I've found the solution by trial and error. Not even the support people at GetResponse were able to help.
Apparently, only the custom fields that are actually added to the form designer get recorded. So if you use a custom form (not created with designer), on top of adding the <input> fields in your code, you'll have to create them first (dashboard > contacts > custom fields) and add they'll appear in the designer as well (on the right side).
After that, the passed values will show up in the contact's detail card. To retrieve the values for more than one contact in bulk, you'll have to export the contacts to csv, xml or xls, as support says there is no way to display additional columns on the contacts page. The alternative, if you are looking for a specific value, is to filter by the custom field on the contacts page (left side, 'add custom field').

PDF to MS Access

I am attempting to implement the following for my school's website:
School registration is currently a hard-copy form.
They'd like applicants to fill out a PDF form online.
They then print, sign and mail it to the school.
The school want to be able to store the data entered by the applicant in the PDF so that when the signed application arrives, they can simply approve the registration for that student without reentering all the students info.
The school system is run on MS Access (if it matters which version I can find this out).
Any ideas how I can implement an import from their form to MS Access?
Thanks.
I've used a website called www.doculicious.com that does pretty much this exact thing. You can upload a PDF and have it converted into a web form. Whoever fills in the web form can download the completed PDF and print it out for signing. All the data is stored in the system and you can get it out as XML or CSV for importing into another database manually, or use the API to do that part automatically.
It depends on how automatically you want it to be. A fully automated case would be
Scan in the printed form using TWAIN
Use a Form Recognition library to align the form back to the original and find the zones with the information you want
Use OCR to get the information out of the form (probably ICR, if handwritten)
Find the original record in Access
Update the record with the new data
This isn't simple -- there are products out there that could help, but they are not cheap, and ICR is not very accurate.
I would suggest that you just do #4 and #5 in Access and give them a screen where they process an incoming form -- someone keys in the new data. That form
Lets you specify the record you want to update (like with a name or ssn)
Shows you the record with edit boxes for you to fill in with the form data
Saves it back when you are done.
This is straight-forward in Access.
The school can use a regular HTML form on their website and ask parents to submit details online. Your server-side can save the submitted details to your database and generate a unique submission token/key/code back to the parent on the web page. When the parents come to the school and mention the key, print their details on paper and ask them to sign it. You file the paper and the data is already in your database.
If the intent is to import from an electronically submitted form, I have used Adobe LifeCycle Designer to accomplish this very thing. Basically you can create an XML output of the PDF form data using an email client of the end users choice and have the data from the XML file read from the inbox into the fields of your MS Access database. Of course this solution has some serious constraints on what applications are to be used, as well as what use cases are handled, for example this solution is in a controlled environment in which all users are required to email there requests, where possibly your requirements may need to handle mailed correspondence as well.
I would add to VSU's answer by suggesting the use of Google Forms for data entry.
You just need a free account, then use Docs to create a new Form.
It's extremely easy to setup, and the submitted results en-up in a Google spreadsheet that you can download as an regular Excel file (that makes it very easy to import into Access).
You have a few ways to share the form:
Email a link to the form
Embed the form into an email
Embed the form in your web site, which is probably the best solution for you.
Once the data is in your database, you can easily create a report and a simple lookup form to find the name of the applicant and print the form.
It shouldn't take more than one hour to get start and have something functional.
You can always improve later once you've experimented with this.
The advantage of using Google forms is that it's free, it works well, and you are fairly secure since you're not linking your database directly to the Internet (and don't risk SQL injection).