1 / 59

Salesforce Cloud Database

Salesforce Cloud Database. By Ryan Melvin. Outline. Introduction Advantages of Cloud Computing Major Techniques System Architecture System Design Implementation What I learned Demo. Introduction. What is Salesforce ?

ronli
Download Presentation

Salesforce Cloud Database

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SalesforceCloud Database By Ryan Melvin

  2. Outline • Introduction • Advantages of Cloud Computing • Major Techniques • System Architecture • System Design • Implementation • What I learned • Demo

  3. Introduction • What is Salesforce? - Salesforce is a cloud-computing infrastructure that enables businesses and users to use software and applications over the internet - Rather than running software and applications on local machines, everything is accessed over the internet through the Cloud-based vendor’s website (e.g., salesforce.com) - With cloud computing, computing is delivered as a service rather than as a product.

  4. Advantages of Cloud Computing • Software does not have to be installed and maintained • All upgrades are automatic • Servers are not needed • Manual Backups are not needed • Software and hardware is maintained by the Cloud-based vendor (e.g., Salesforce.com) • You only pay for the resources you use

  5. Major Techniques • Transaction Support: • Transaction support is built into Salesforce, so it does not need to be implemented by the DBA; changes to the database are only committed when the the apex code in the controller and on the visualforce page have finished executing. Either all of the changes are made or no changes are made to the database.

  6. Salesforce also provides constructs for manually creating savepoints, and manually rolling back the state of the database to its state at the time the savepoint is created • Savepoint sp = Database.setSavepoint(); • Database.rollback(sp);

  7. Security • Salesforce provides extensive security measures • Every user on Salesforce belongs to a certain profile (regular user, staff member, etc) • Permissions are controlled by setting access rights for each profile (what tables can be read/modified, etc)

  8. Permissions for Staff members

  9. Rather than creating views to restrict access to fields, access to fields can be directly set for each profile

  10. Field Access

  11. System Architecture • Salesforce uses the MVC(Model-View-Controller) architecture • Database tables are models • Visualforce pages are the user interface and view • Apex classes are the controllers

  12. The controller is the “middle-man” between the model (database) and view (Visualforcepage) • The controller (an Apex class) receives user input submitted from the view (Visualforcepage), which invokes actions on the model (database) (e.g. retrieve records) • After the controller retrieves the data from the model (database), it then communicates the data with the view, where it is displayed

  13. System Design • Three levels of users: users, staff, and management • Users can: • Buy products from the storefront website • Leave feedback • Request an account by filling out the registration form (A staff member must create the account for them)

  14. Staff can: • Process customer orders • Add/edit/remove merchandise (e.g., change quantity, etc) • View all staff information except salary • View all departments • View customer feedback • Process requests for accounts from users • Act as users and purchase products from the storefront

  15. Management can: • Add/edit/remove staff members (e.g. hire/fire) • Add/edit/remove departments • View all staff information (including salary) • Do everything staff and users can do

  16. Tables for Staff management: • Staff(fields: StaffID (PK), first name, last name, department ID (FK), age, sex, DOB, position, salary) • Department(Fields: department ID (PK), department name, department phone number)

  17. Tables for Warehouse: • Merchandise(fields: Merchandise Name(PK), Description, Price, Total Inventory) • Invoice Statement(fields: invoice number(PK), status, invoice value) • Line Item(fields: item number (PK), Invoice Statement (PK, FK), Merchandise (FK), Unit Price, Units Sold, Value)

  18. Tables for User Management: • PaymentInformation (fields: email(PK), first name, last name, telephone number, billing address, shipping address, credit card number, City, State, Zip Code, Country) • Feedback(fields: email(PK), comments(PK), Date) • Registrationrequest(fields: email(PK), First Name, Last Name, Community Nickname)

  19. Implementation • Example: The model, view, and controller for displaying the merchandise on the storefront page

  20. The Model

  21. The Controller

  22. The Model

  23. The View

  24. What I learned • How to create database tables, Apex classes (controllers), and Visualforce pages • More about the MVC model and how it is applied on the Salesforce Cloud • How to create profiles (user groups) • How to set permission rights and field access on Salesforce

  25. What I learned (Cont’d) • How to read/insert/update/delete database records using tabs within applications • Some of the Apex programming language • How to build a storefront on the Salesforce cloud • The benefits of using a cloud database

  26. Demo

  27. Creating a Table and a Field

  28. Adding a new merchandise product

  29. Making A Purchase on the Storefront

More Related