Let's say I have a school that uses Salesforce to track its students data. Now I want to add the functionality that the 40+ teachers can enter the grade to the students records.

Of course I cannot advice buying full accounts for all teachers.

What would be good ways to get this input? I would very much appreciate links to tutorials or minimal working examples.

For demonstration (and learning) urposes, let's assume, that every teacher can visit a public website, fill in his name and the course and add the grade.

| improve this question | | | | |

public websites is a very good option as far as i see this requirement .One Admin and teachers can be customer portal users (preferably using portal licence to authenticate the 40+ tecahers can be less costlier ) and rolling site for students so that they can view there marks on searching with there roll no .Using salesforce portal licence you can also be able to identify which teacher entered the data or track who last modified .Enabling field history will be able to track which registered user filled the data

| improve this answer | | | | |

For security, data visibility, audit purposes etc. it is a PERFECTLY valid advice to buy more licenses. Maybe not full ones (Platform license for example? Portal - as Mohit wrote?). Otherwise you risk leaked passwords or teachers (maliciously or by mistake) entering bad data.

Alternatively you could use just one account. It can be something like teacher@myorg.com and people will be told to use this username & password to log in. Or it can be some kind of integration done behind the scenes (if this "public website" is done in Java, PHP etc. there are tons of examples how to integrate these with Salesforce). Check out developer.force.com in general and particularly http://wiki.developerforce.com/page/Data_Integration#Language-Specific_Resources_and_Toolkits

Then there's a shady practice that goes against Terms of Service... You'd authenticate teachers against your other website, in the background activate only this teacher's user account, let him perform the save and eventually deactivate him to recycle the license. To use such "floating licenses" is frowned upon though so be warned.

| improve this answer | | | | |

You can do this using Force.com Sites. Each site grants unauthenticated access via the Guest User Profile. The downside to going this route is that it means anyone with access to the site can enter the name of a teacher, course and student and enter the grade. You can mitigate this to some degree by assigning each teacher a unique (non-predictable) code and getting them to enter that instead of their name.

There's an overview of Force.com sites at: http://wiki.developerforce.com/page/Sites

If you want an example of using a Force.com site in a similar way, check out my test/quiz site at:


This allows a user to sign up with their name and email address, then generates a test for them to take with a unique, non-predictable code. Any attempt to access a test response, question etc without supplying the code associated with it takes the user to an error page.

| improve this answer | | | | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.