Skip to main content

Project: Salesforce Conference Management App

Conference Management App: Salesforce Project

Project Description:

We will create a conference Management Application that allows conference administrators to manage all the aspects of a conference:
-Sessions
-Speakers
-Hotels

Technical Elements:

-Creating custom Objects
-Using declarative features of the platform to create an Application, create Tabs and optimize Page Layouts.
-Creating Apex Classes
-Using SOQL and DML to query, create, update and delete data
-Creating Trigger
-Creating Visualforce Pages
-Creating Custom Extensions and Custom Controllers
-Using JavaScript in Visualforce Pages
-Creating Batch Processes


Salesforce project data model
Data Model:

Objects:
-Session
-Speaker

Relationship between the 2 objects:
-Many to many relationship

Junction Object:
-Session Speaker



Fields:

Step 1: Creating the Data Model

Step 1: Create the Conference Session Object
 1.Login into your Developer Edition account
 2.Click the Setup link (upper right corner)
 3.In the left navigation, select Build > Create > Objects 
4.Click New Custom Object, and define the Session object as follows (accept the default values for the
properties that are not mentioned below):
Label: Session
Plural Label: Sessions
Object Name: Session
Record Name: Session Name
Data Type: Text
5.Click Save
6.In the Custom Fields & Relationships section, click New 
7.Create a Session Date field defined as follows:
 Data Type: Date/Time
 Field Label: Session Date
 Field Name: Session_Date 
Click Next, Next, Save & New
8.Create a Description field defined as follows:
Data Type: Text Area (Long)
Field Label: Description
Field Name: Description
Click Next, Next, Save & New
9.Create a Level field defined as follows:
 Data Type: Picklist
 Field Label: Level
 Values: Beginner, Intermediate, Advanced (specify each value on its own row)
 Field Name: Level
Click Next, Next, Save

Step 2: Create the Speaker Object
1.In Setup mode, select Build > Create > Objects
2.Click New Custom Object, and define the Speaker object as follows (accept the default values for the
properties that are not mentioned below): 
Label: Speaker
Plural Label: Speakers
Object Name: Speaker
Record Name: Speaker Number
Data Type: Auto Number
Display Format: SP-{00000}
Starting Number: 1
3.Click Save
4.In the Custom Fields & Relationships section, click New, and create a First Name field defined as
follows:
Data Type: Text
Field Label: First Name
Length: 30
Field Name: First_Name
Click Next, Next, Save & New
5.Create a Last Name field defined as follows:
Data Type: Text
Field Label: Last Name
Length: 30
Field Name: Last_Name
Click Next, Next, Save & New
6.Create an Email field defined as follows:
Data Type: Email
Field Label: Email
Field Name: Email
Click Next, Next, Save & New
7.Create a Bio field defined as follows:
Data Type: Text Area (Long)
Field Label: Bio
Field Name: Bio
Click Next, Next, Save








Comments

Popular posts from this blog

Cross-Site Request Forgery (CSRF)

CSRF occurs when an attacker's webpage contains URL that performs action on website. Suppose the user is logged into a webpage and they visit an attacker's webpage simultaneously, the URL is retrieved by the attacker and actions are performed. (Hence it is advisable to log out first before opening other websites.) In Lightning platform, Salesforce has implemented an anti-CSRF token to prevent this attack. It uses tokens for authentication. Suggestions for best practices:  Add a confirmation page/pop up before action. Shorten the idle session timeout. Logout of active session and not use browser to visit other sites while authenticated. In Salesforce, built-in defence against CSRF is present. If user is logged in on one tab and attempts in another, they will see this error: "The page you submitted was invalid for your session." However, users can log in by refreshing the login page or attempting to log in a second time.

SOQL Injection

SOQL injection attack occurs when a user inputs a value in dynamic SOQL query. If that input is not validated, the command(input) can modify the SOQL statement. Best practices to avoid SOQL injection attack: Avoid using dynamic SOQL queries. Use static queries and binding variables. In case of dynamic SOQL queries, use escapeSingleQuotes method to sanitize the user-supplied input.

Event Monitoring

Event monitoring is used to keep track of logins, logoutw, web clicks, API calls, VF page loads, apex executions and reporte exports. All these events are stored in event log files. Each org's event log files are stored in API object called EventLog File.