You need to sign in to do that
Don't have an account?
how to create a pair of lead forms so that prospects can update their own information
My organization is using the Salesforce Nonprofit Starter Pack, Enterprise Edition, and needs to develop web forms to support the following use case:
1) An individual goes to a page and fills out an inquiry form on which they provide their basic information (name, email, how they heard about us, and a few custom fields).
2) The individual is then redirected back to our site, so they can download more information about the internships we offer.
3) An email is sent out thanking them for their interest, and inviting them to fill out our pre-interview questionnaire.
At first, I considered the Web-to-Lead form, plus a triggered workflow action, but I have determined that the Web-to-Lead is too limited, since we need the form in step #3 to be pre-populated with the information from step #1. Web-to-Lead forms don't allow for pre-population of data as far as I can tell, since the forms are POSTed cross-domain, and there's no kind of session or query string identifier available.
Following that, I considered using the API in conjunction with our CMS (Drupal), but I couldn't get those webforms to successfully generate new objects in the Salesforce database. It seemed like a connection was being made via SOAP, but no object mappings were found.
So I have settled upon using Salesforce's Sites feature, unless you all would recommend something else (such as an AppExchange add-on like Zoomerang or FormExchange).
I have followed the instructions for creating a Web-to-Lead form given in http://wiki.developerforce.com/index.php/Web2Lead_with_Force.com_Sites. However, I have the following problems/questions:
1) The page that I have created goes to a page that is not accessible after form submission (it says "Login Required"). This happens both on the developer and the live Site.
a) I don't know how to get the "thankyou" page that I created for the custom controller to be accessible to the Guest User.
b) I don't know how to deploy the custom controller Apex code from developer to live.
c) Ideally, I would not like a thank-you page at all, but rather a redirection back to a page on my site, as with a regular web-to-lead form.
2) "Company" is a required field. However, our organization is non-profit, and the candidates for our positions don't have a company with which they should be associated. Is there a way to pre-populate (or, ideally, hide) this field, and have it always say "Individual" so that the bucket account from the Nonprofit Starter Pack works?
3) I don't know how to write the code, to be triggered by a successful form submission, that would send an email to a user with a link to the 2nd form, the one with the pre-interview questionnaire fields on it, and their initial lead fields pre-populated.
4) So far if I go to my page, and append ?id=[LeadObjectID] onto the end of it, then I will only be able to see the values for the lead object, not edit them. Furthermore, if one of the non-required fields was not filled out the first time, then it will not show at all.
Is there a way to make it possible for users to update the lead object (so they can fill out the interview information), or would I have to create a custom object in order to do this?
I hope all that is clear. If you have questions, I'll try to clarify what I want.
Hello,
Based on your description, I think you might want to consider our App ( sorry of the commercial pitch ) FormAssembly.com:
http://sites.force.com/appexchange/apex/listingDetail?listingId=a0N300000016ac6EAA
Steps 1-3 can be accomplished relatively easy inside our App, including what I think is a simpler autoresponder setup than what Salesforce offers. In a nut shell, you design a custom form, tell it how to map the fields from the custom form into Salesforce objects ( of any type, including custom objects ) and you're good to go. You can also grab the html generated for your form and place it in most any CMS system that allows form tags. You can configure the form to fire off autoresponder emails to those who complete the form, and place data from the response into the email...for your workflow I'd recommend including a link to the second form like:
http://endpoint?tfa_F2FirstName=%%tfa_F1FirstName%%&tfa_F2LastName=%%tfa_F1LastName%%
which would be populated when the email gets sent, with:
http://endpoint?tfa_F2FirstName=John&tfa_F2LastName=Smith
Our SF specific documentation is here:
http://www3.formassembly.com/blog/support-documentation/connectors-documentation/salesforce-documentation/
We offer a test-drive, and a 30-day no-questions refund. I notice you're a not-for-profit, at this time we exploring discount options for you all, so if price is a sticking point let us know and we'll see what we can do.
Sorry again to give you a sales speech, but I figured since this was a few hours old, it was fair game.
Hope you find something that works for you,
Drew.
FA Support.
I don't mind you recommending your app at all - I actually was considering FormAssembly, but wasn't sure if it would meet my needs. I'll talk to my boss, and probably give it a trial, and we'll see if it is a good fit.
That said, if anyone else wants to reply with information on how this could be accomplished in Salesforce via code, I would appreciate that too - just so I know what all the alternatives are.
this can be achieved thru sites we have done the similar task but not exactly the same.Prepopulating the page can be done using the controllers with some apex.
our scenario is our client dont want much info to be filled by user during registration.So we are kind shorted the form.after he registers.If he is interested he can log back to my site and edit his profile where we provide additional fileds.with already populated fileds which are given by user during initial registration. so that all the info we need can be achieved.
hope this is kind of similar i used sites for logging in and editing the profiles.
@kristnag: Prepopulating with Apex sounds like what I want - do you have any pointers as to how to do it, or links to resources on what I would need to learn to get started? I am completely new to Salesforce development, having only done PHP development up until now.
i can share u a small example of mine but its all controllers .and it is linked with 3 pages.i will paste each seperately here.
page 1 : login page
controller for page1
page 2: opens up with populated data in a mode editable.The data is related to the login details given in page1
controller for page 2 : this will handle the populating the data using get methods.
in this controller getdetails() takes care of populating the data part.
Thanks for sharing - so if I understand correctly, you are creating a custom object that stores the data temporarily, and then it is saved as a contact when the user submits the second form?
There are two more general questions that I have:
1) Is it possible to open up your Salesforce install so that users from your external site can log in with privileges only to update their own record?
If that is not possible, then...
2) Is it possible to change the preferences on the Lead object so that a site Guest User can update an existing Lead (?id=[LeadID]), not just create a new Lead, or view an existing one?
OK, I looked at your code in a little more detail - so is GuestUser a custom object that you created? And that is the object in which the data is stored until the user logs in again to populate with more data, at which time a contact record is saved?
If I were to create code that was similar to this, how would I deploy it onto my production site? This is my first week using Salesforce, so I don't yet know how to get Apex code onto production.
Thanks for all your help.
using sites you cannot update a standard object record. So what i did is i created a guest object to store the records.i wrote a trigger for updating the records of leads or contacts depending on their existence based on email id. Actually the scenario is pretty big to explain.:smileywink:
deploying a code to production can be done in two ways using eclipse and using deployment functionality in salesforce instance,
Thanks, krishnag for your information. We have decided to go with the FormAssembly app since it doesn't require custom code.