12 November 2017

Module - 3 Creating the ContactController Class

Creating ContactController Class - Salesforce Lightning

  • Salesforce Lightning applications make it easy to work with data.
  • In this module, you create an Apex controller that allows your Lightning application to retrieve contacts, or to Search contacts by name or by id.
What you will learn
  • Create an Apex Controller that exposes data and logic to the client application
Steps:
  1. Open Developer Console, by Clicking your name in the upper right corner screen.
  2. Click on File | New | Apex Class specify ContactController as the class name and click Ok.


Implement the ContactController Class as follows :

public with sharing class ContactController
 {
    @AuraEnabled
    public static List findAll()
    {
        return [ SELECT Id, Name, Phone FROM Contact LIMIT 25];
    }
    @AuraEnabled
    public static List findByName(String searchKey)
    {
        String name ='%'+searchKey+'%';
        return[ SELECT Id, Name, Phone FROM Contact WHERE Name like : name Limit 25];
    }
    @AuraEnabled
    public static Contact findById(String contactId)
    {
        return[SELECT Id, Name, Title, Phone, account.Name FROM Contact where Id=:contactId];
    }
}

ContactController is a regular controller class with methods to retrieve contacts (findAll), or to search contacts by name (findByName) or by id (findById).
The
 @AuraEnabled method annotation makes a method available to Lightning applications

Click File > Save to save the file

How to enables Development Mode in SalesForce.

Development Mode In Salesforce

  • Development mode in salesforce enables developers to embed visualForce page editor in the browser.
  • Enabling Development mode in Salesforce is very essential for developers to build visualforce pages in the view state.
After enabling we can see both code and preview of the visualforce page in the same window.

How to Enable Development mode in Salesforce

Salesforce development mode can be enabled, Navigate to Name | Personal Advanced User.
  • In advance user details, we can edit assignments, can create new group's, Create new Queue, and can access Salesforce Login History details like Login Time, Source IP, Login Type, Login URL, Location.
To Enable salesforce development mode click on Edit button.

Now go to User details section and Enable Development Mode check Box.
Click on Save Button.

How to check Salesforce Development Mode Enabled or Not

To check development mode in salesforce, Navigate to Setup | Build | Visualforce Pages.
  • Now Create a new Visualforce page and Quick save the page.
  • Now click on preview button and the result will be opened in new window.
Click and drag the button. Now visualforce page code and result will be displayed.

What is View State in Salesforce

  • ViewState in salesforce holds the stage of the Visualforce page which includes components, field values and controller state.
  • Salesforce developer environment has a view state inspector, which let user to view the content of the view state.
  • Performance of the page depends efficiently managing the view state.

Salesforce Apex - Introduction To SOQL

SOQL(Salesforce Object Query Language)

What is SOQL(Salesforce Object Query Language) . . . . ?
SOQL means Salesforce Object Query Language.
SOQL Is used to query the records from the database.com based on requirement.
  • Salesforce Apex and SOQL together give the developers powerful tools for managing Salesforce Data and process of their applications.
  • Records are pertaining to single sObject.
  • Using Salesforce Object Query Language developers can fetch and process a large amount of data in an easy, human readable query language.
  • SOQL is very similar to SQL used in other database systems.
  • It doesn't support all advance features of SQL.

SOQL Features

  • Salesforce Object Query Language us a case sensitive and very easy to understand.
  • It is similar to SQL and helps to optimize the code.
  • It reduces workload time.
  • Salesforce Object data can retrieved or extracted to Excel Sheets.
  • It Returns Records
  • Records are stored in a Form of Collections.

SOQL Limitations

  • By default 20000 characters for a Statement.
  • Number of SOQL rows : 50,000
  • Number of SOQL Queries : 20
  • Number of DML Statements : 150
  • Number of DML Rows : 10,000
  • Number of Script  Statements : 200K
  • Number of call out : 10
  • Number of Email Invocation : 10
  • Number of Fields Described : 100
  • Number of Child Relationships : 100
  • Number of Picklist describes : 100
  • Number of Future Calls : 10
  • Maximum Heap Size : 3000K

11 November 2017

Enable Custom Domain For Salesforce Developer Org

Salesforce Custom Domain or Salesforce my Domain must be enabled to use Lightning Components in Salesforce.com.

In This Tutorial, we will learn how to Enable a Custom Domain for a Developer Org, so that we can Use It for Salesforce Lightning.

Custom Domain URL will be like https://MyDomain.my.salesforce.com

In Place of MyDomain, you can Include your own Name or Any Name you wish to include.

To Create Custom Domain Follow Below Steps :

1. Click on Setup
2. In the Quick Find Box, Enter My Domain.
3. Click on My Domain.
[or] 
1. You can Directly Navigate to Administer | Domain Management | My Domain.
Select My Domain
2. Enter the Name of your SubDomain after https:// and Check Availability.
Typically, a subdomain is your name of a company, or you can include your own name as long as it's Unique.
If the Name was already taken, choose another name.
3. Click Register Domain.

Benefits of Custom Domain :

1. We can create our own custom URL .
2. We can set custom Login Policies.
3. Using Custom Domain, Salesforce user can login through Facebook and Google Account.

Module - 2 Setting Up Your Environment

Lightning Environment

In this module, you set up your environment to enable Lightning development.
What you will learn
  • Create a Namespace 
  • Enable Lightning Components in your Salesforce Environment / Org 
  • Upload Static Resources for use in your Lightning application 

Step 1: Create a Namespace

A namespace is globally unique across all Salesforce organizations. Namespaces are case-insensitive and have a maximum length of 15 alphanumerical characters.
1. Login to your Salesforce Developer Edition
2. Click Setup 
3. In the Quick find box Search for Packages, Click Create > Packages 
4. Click Edit and Continue 


5. Enter the namespace prefix you want to register, and click Check Availability. If the namespace you entered is not available, try again until you find a namespace that is available.
6. Click Review My Selections
7. Click Save

Step 2: Enable Lightning Components

1. Click on Setup
2. Click Develop > Lightning Components 
3. Check the Enable Lightning Components checkbox 
4. Click Save

Step 3: Upload Bootstrap as a Static Resource

To help you make the application look good, you will use a version of Twitter Bootstrap customized to match the Salesforce1 guideline.
1. Download and unzip the Salesforce Foundation Bootstrap

https://github.com/SalesforceFoundation/bootstrap-sf1
To download click on Download button, or to view on Github click on Github Button Link.
OR
http://developer.salesforce.org/bootstrap-sf1/
2. In Salesforce, click on Setup
3. Click on Build > Develop > Static Resources


4. Click New
5. Specify BootStrap as the Name, then click the Choose File button, and select the bootstrap.css in the dist/css directory of the unzipped bootstrap folder




6. Click Save

Module - 1 Creating SFDC Dev Org Environment

SFDC provides free developer edition environment, where you can create or develop force.com applications for free.

In Addition, SFDC Provides many editions as per the customer requirements. Each edition has its own features.

Following are the Paid Editions
Contact Manager
Group

Professional
This edition is designed for businesses who need full-featured CRM functionality. Professional Edition includes straightforward and easy-to-use customization, integration, and administration tools to facilitate any small to midsize deployment.

Enterprise
This edition is designed to meet the needs of large and complex businesses. Enterprise Edition orgs get advanced customization and administration tools, in addition to all the functionality available in Professional Edition, that can support large-scale deployments. Enterprise Edition also includes access to the web services API, so you can easily integrate with back-office systems.

Unlimited

This edition is Salesforce’s solution for maximizing your success and extending that success across the entire enterprise through the Force.com platform. Unlimited Edition customers benefit from new levels of platform flexibility for managing and sharing all their information on demand. Unlimited Edition includes all Enterprise Edition functionality plus Premier Support, full mobile access, unlimited custom apps, increased storage limits, and more.

Developer
This edition provides access to the Force.com platform and API. A Developer Edition org allows developers to extend the Salesforce system, integrate with other applications, and develop new tools and applications. Developer Edition provides access to many of the features available in Enterprise Edition orgs.

In developer edition we can have access to Apex, Visualforce, Force.com Integration API’s, Force.com sites, Database and much more. . . .

Licences available in developer edition
  •  2 Salesforce CRM Licences
  •  2 Salesforce mobile Licences
  •  3 Salesforce Platform Licences
  •  5 Salesforce Partner Licences
  •  10 Salesforce customer portal Licences.
Developer Edition Limits

 5 MB – Data Storage
 20 MB – File Storage

To Create Developer Org / Environment, You Need to follow below mentioned Steps

Step 1

Open https://developer.salesforce.com/
Click on Sign Up button, on clicking Sign up , it will navigate to Registration Page.

Step 2

Enter Details required to create developer Org, Make sure that Username should be in the format of e-mail (Example: dev-account-name@salesforce.com or user can choose any domain).

After entering all the details click on Sign me up.

Step 3

You will receive an Email, To Activate your account click on Verify.
On verifying developer account, you will be Navigate to Set Password Page for your Account.
Enter your new password information, and click Save
For more Information, you can visit https://developer.force.com/
You can login in to your Dev Org, you can visit https://login.salesforce.com/
Enter User Name & Password to login into your Dev Org & you can enable 2-step verification using your mobile no.


22 October 2017

Download Java Standard API

Java Standard API Documentation

Java Standard API : Click Here



  • Oracle JDK 9 Documentation Click Here to download Documentation
  • Java Platform, Standard Edition What’s New in Oracle JDK 9 Click Here to know More.
Downloadable Books Click Here


Installation Guide Click Here to find various Installation guide related to Java

  • Overview of JDK 9 and JRE 9 Installation

11 September 2017

Salesforce Certification - Marketing Cloud Dumps - SET - I



1. Which two places can a marketer go to download the Salesforce Marketing Cloud Mobile Application?
A: Google Play Store
B: AppExchange
C: Apple App Store
D: www.salesforce.com

2. What is a capability of using Send Flow? 
A: Refresh a filtered audience
B: Schedule an email send for a future date
C: Select an automation schedule for email sends
D: Create a new sender profile

3. Along with a new intuitive workspace, which three new features can be found in Approvals? Choose 3 answers
A: Create and Edit permissions can create and assign teams to review and approve
B: Permissions for emails built with Content Builder
C: Two workflow processes including the Standard and two-step Approval processes
D: Approval service for Content Builder Emails
E: Approvals of A/B subject lines and preheaders from the email properties page

4. What is an advantage of building and viewing SQL queries within Automation Studio's Activities tab?
A: A customizable interface with autocomplete
B: A historical log of errors for that activity over time
C: A graphical execution plan for complex queries
D: A list of all automations that use a query

5. What new product offers searching, sorting, filtering and tagging assets for improved storing, finding, managing and creating content in the Marketing Cloud?
A: Portfolio Studio
B: Campaign Canvas
C: Content Builder
D: Email Gallery

6. What are two capabilities of Test Send in Email Studio? Choose 2 answers
A: Allows you to enter up to seven email addresses to send the test email
B: Provides Test Send Summary to warn if the test send exceeds the threshold
C: Will render default dynamic content and personalization when the email is sent
D: Can perform a test email send to a sendable test data extension

7. What are two capabilities of Subscriber Preview in Email Studio? 
A: Allows you to check personalization for a given subscriber
B: Renders the email based on email client and specific mobile device
C: Will not render Ampscript or dynamic content
D: Allows you to view an email in Layout and Plain Text views

8. When creating an email with dynamic Content Blocks using Content Builder, what feature is designed to track dynamic content performance over time?
A: Impression Region Tracking
B: Email Click-Overlay
C: Alias Tags
D: Click-through reporting

9. In which two ways does URL Expiration work in Email Studio?
A: Allows the link expiration to be between 30 days and 2 years (730 days)
B: Allows expired links to be redirected to a designated landing page
C: Allows expired links to be set at the job level so the countdown starts when the email is sent

D: Allows the person creating the email to set a link expiration and redirect


10. A marketer wants to create a branded template using Content Builder. Which two ways can the marketer get started? 
A: Place content in a template and lock the content
B: Designate a particular type of content to be placed in a content area
C: Create a template using a Basic, Business Specific, Empty or Saved template
D: Place images only in the banner content area

Salesforce Transition App Builder Certification - Dumps SET - 2


Download Certification Guide

1. What can you build with the Lightning App Builder?
A. Simple, single-page apps with drill-down capability.
B. At-a-glance, dashboard-style apps.
C. Apps optimized for a particular task.
D. All of the above

2. Universal Containers is using assignment rules to distribute cases to regional teams. Which of the following are true?
A. Cases may be assigned to public groups (if configured)
B. It is possible to have multiple active assignment rules.
C. Cases may be assigned to queues (if configured)
D. A workflow field update can be used instead
3. A Lightning Page is?
A. A page you can access via a customer community.
B. The new name for a Salesforce page layout.
C. A custom layout for creating pages in Salesforce1.
D. A compact, configurable, and reusable element.

4. Identirfy the field update limitations. ( choose three)
A. In a batch update, workflow is retriggered on all entities where there is a change.
B. Read-only fields like formula or auto-number fields aren't available for field updates.
C. Field updates that are executed as approval actions don't trigger workflow rules.
D. The results of a field update can't trigger additional rules such as validation, assignment, auto-response, or escalation rules.

5. Describe the capabilities of this core CRM object in the Salesforce schema: Person accounts ( Choose 2 )
A. Have the same icon as business accounts
B. Does use space in both account and contact table
C. Can only be merged with other person accounts
D. Are enabled by default
E. Are enabled via a feature license

6. Which deployment tools will you use to deploy metadata from one organization to another organization ?
A. Change sets
B. Unmanaged Packages
C. Force.com IDE

7. Which permission is required to install and uninstall packages from Salesforce AppExchange?
A. Upload AppExchange Packages
B. Manage Package Licenses
C. Download AppExchange Packages
D. Create AppExchange Packages

8. Universal Containers wants to rollout new product bundles with several pricing options. Pricing options include product-price bundles, account specific pricing and more. Which product satisfies these needs?
A. Lightning Process Builder
B. Custom AppExchange App for product pricing
C. Formula fields on Opportunity/Opportunity product
D. Workflow on Opportunity/Opportunity Product

9. When a user creates a record by using an object-specific create action, what feed item for that record appears?
A. As the first entry in the feed for the new record
B. In the Chatter feed of the user who created the record
C. In the feed for the record on which the new record was created
D. In the user profile feed for all users who can view the record
E. In the Chatter feed of the first user who follows the record on which the record was created

10. You have created a workflow rule to send an email in your configuration sandbox. For some reason its not working, what should you double check? (Choose 2)
A. HTML does not work in sandbox, make sure your email has no HTML
B. You have the correct email address
C. Look at the system audit trail
D. Check the deliverability settings

11. Universal Containers has a custom object that has a N:M relationship with opportunityLineItem carrying price and amount information. In order to compute total amounts and total prices per Opportunity using Rollup summary fields, what field type would you need to choose?
A. Junction
B. Master-Detail
C. Lookup
D. Cross object

12. What tools you need to use to migrate Metadata to Two Different Production Orgs? (Choose 3)
A. Force.Com IDE
B. Force.Com Migration Tool
C. Change Set
D. Data Loader
E. Unmanaged Package

13. Universal Containers has a custom object "Service" which has a lookup relationship to Account. Universal Containers wants to enhance Salesforce1 with an action that allows account managers to enter a new Service to an Account while looking at the Account. How can Universal Containers accomplish this?
A. Enter an object specific action to Account and put it on the Account layout
B. Enter an object specific action to Service and put it in the Account Layout
C. Enter an object specific action to Service and put it in the Service Layout
D. Enter an object specific action to Account and put it in the Service Layout

14. Universal Containers wants to store an area code and wants to be able to search for it in searches. Which are possible fields to store the data? (Choose 2)
A. Text
B. Phone
C. Email
D. Multi Picklist

15. A Lightning Page is?
A. A page you can access via a customer community.
B. The new name for a Salesforce page layout.
C. A custom layout for creating pages in Salesforce1.
D. A compact, configurable, and reusable element.

16. Describe the ramifications of field updates and potential for recursion for the following scenario:
A. If a field update for Rule1 triggers Rule2, and a field update for Rule2 triggers Rule1.
B. The updates create a loop and the org limits for workflow time triggers per hour will likely be violated.
C. When the second trigger is saved a Imminent Loop Error message will be displayed and the workflow rule update will not save.
D. The updates create a loop and the org be blocked until the admin resolves the issue
E. Loop is allowed to run 25 times within one hour. If it does not end on its own the process will be stopped by R&D.

17. What is true when a field update is set to re-evaluate the workflow rule? (choose three)
A. In a batch update, workflow is only retriggered on the entities where there is a change.
B. Only workflow rules on the same object as the initial field update will be re-evaluated and triggered.
C. Only workflow rules that didn't fire before will be retriggered.
D. Cascade of workflow rule re-evaluation and triggering can happen up to ten times after the initial field update that started it.
E. Any workflow rules whose criteria are met as a result of the field update will be ignored.

18. What determines whether a user can create a new record using a specific record type?
A. Profile
B. Field level security
C. Page layout
D. Sharing

19. Which deployment tools will you use to deploy metadata from one organization to another organization?
A. Change sets
B. Force.com IDE
C. Unmanaged Packages

20. Which statements are true regarding Roll-Up Summary fields? (select all that apply)
A. Once created, you cannot change the detail object selected or delete any field referenced in your roll-up summary definition.
B. Because roll-up summary fields are not displayed on edit pages, you can use them in validation rules.
C. Validation errors can display when saving either the detail or master record.
D. Advanced currency management has no affect on roll-up summary fields.
E. Automatically derived fields, such as current date or current user, are allowed in a roll-up summary field.

21. In order to create an App Launcher component in Lightning what must an admin do?
A. Contact Salesforce to have the component activated for the Lightning App Builder.
B. Navigate to Setup-Customize-User Interface to enable the component for the Lightning App Builder.
C. Purchase a license for the Lightning App Builder.
D. Join the pilot Lightning App Builder team

22. Universal Containers wants to store an area code and wants to be able to search for it in applications (apex). Which are possible fields they could use to store the data? (Choose 2)
A. Text
B. Phone
C. Email
D. Multi Picklist
E. Number

23. Which of the following fields are not available for record types ?
A. Opportunity Stages
B. Case Status
C. Solution Status
D. Lead Status
E. All of the Above

24. When should a system administrator consider using the Salesforce AppExchange? (Choose 2)
A. When standard Salesforce functionality needs to be extended
B. To find answers to Salesforce application questions
C. When looking for pre-built custom applications and tools
D. To submit ideas for Salesforce application enhancements

25. Universal Container installs an unmanaged package. Which of the following are true? (choose 2)
A. Components of unmanaged packages can be edited
B. Unmanaged packages can be upgraded
C. Unmanaged packages have a namespace prefix
D. Unmanaged packages don't have a version number
E. Tests are executed during deployment

26. What can you build with the Lightning App Builder?
A. At-a-glance, dashboard-style apps.
B. Apps optimized for a particular task.
C. Simple, single-page apps with drill-down capability.
D. All of the above

27. Universal Containers has included its orders as an external data object into Salesforce. You want to create a relationship between Accounts and the Orders Object (one-to-many relationship) leveraging a key field for account which on both external object and Account. Which relationship do you create?
A. Lookup Relationsip
B. Master Detail Relationship
C. Hierarchical Relationship
D. External Lookup Relationship
E. Indirect Lookup Relationship

28. Identirfy the field update limitations. (choose three)
A. Field updates that are executed as approval actions don't trigger workflow rules.
B. Read-only fields like formula or auto-number fields aren't available for field updates.
C. The results of a field update can't trigger additional rules such as validation, assignment, auto-response, or escalation rules.
D. In a batch update, workflow is retriggered on all entities where there is a change.

29. A salesperson at AW Computing only see's the Social Contact's link for Twitter and not Facebook on his records. Why would this be happening ?
A. The administrator hasn't enabled Social Contacts for Facebook
B. Facebook is no longer supported by Social Contacts
C. The salesperson's login with Facebook has expired
D. None of his Facebook contacts have confirmed the nature of their relationship

30. Actions on a Lightning Page allow you to do which of the following?
A. Send email, create a task, and create or update records.
B. Send email and delete or clone records.
C. Clone records, add users, and assign permissions.
D. Send email, send outbound messages, and launch a flow.

31. What standard Chatter actions (Post, File, Link, Poll, and Thanks) appear on the user profile page, regardless of the actions in the User page layout? (choose three)
A. Post
B. File
C. Poll
D. Create
E. Email

32. Which social networks are available in the Lightning Experience and Salesforce1? (select all that apply)
A. Facebook
B. Twitter
C. LinkedIn
D. Klout

33. Universal Containers wants to rollout new product bundles with several pricing options. Pricing options include product-price bundles, account specific pricing and more. Which product satisfies these needs?
A. Custom AppExchange App for product pricing
B. Workflow on Opportunity/Opportunity Product
C. Formula fields on Opportunity/Opportunity product
D. Lightning Process Builder

34. Which statement about record types is true?
A. Record types can be used to define picklist values available for a given field
B. The ability to create records of a specific record type is determined by the profile
C. Users cannot view records assigned to a record type their profile does not have access to
D. Record types can only be assigned to one profile at a time

35. To enable the Publisher Actions area on Page Layouts, navigate to:
A. Setup | Customize | Chatter | Settings
B. Setup | Customize | Feeds | Settings
C. Setup | Customize | <Objects> | Settings
D. Setup | Customize | Actions | Settings

36. Which components can be added to a lightning app on custom Object? (choose 3)
A. Visualforce
B. Standard Lightning component
C. Custom lightning component
D. Global actions
E. Object specific actions on the custom object

37. Describe the capabilities of this core CRM object in the Salesforce schema: Person accounts (Choose 2)
A. Does use space in both account and contact table
B. Have the same icon as business accounts
C. Can only be merged with other person accounts
D. Are enabled by default
E. Are enabled via a feature license

38. Which functions are available when creating a Roll-Up Summary field? (select all that apply)
A. AVG
B. SUM
C. COUNT
D. MIN
E. MAX

39. A developer has completed work in the sandbox and is ready to send it to a related org, what deployment tool should be used?
A. Change Sets
B. Force.com IDE
C. Unmanaged Packages
D. Force.com Migration Tool

40. Universal Containers is using assignment rules to distribute cases to regional teams. Which of the following are true?
A. It is possible to have multiple active assignment rules.
B. Cases may be assigned to public groups (if configured)
C. Cases may be assigned to queues (if configured)
D. A workflow field update can be used instead

41. Which permission is required to install and uninstall packages from Salesforce AppExchange?
A. Upload AppExchange Packages
B. Manage Package Licenses
C. Download AppExchange Packages
D. Create AppExchange Packages

42. Which developer tool can be used to create a data model? (Choose 2)
A. Schema Builder
B. Force.com Data Loader
C. Application Data Model Wizard
D. Force.com IDE

43. Which API cannot be used to create the data model? (Choose 3)
A. Force.com API
B. Force.com Single Sign-on API
C. Force.com Metadata API
D. AJAX Tookit for Force.com

44. When considering Field Type Conversion, which of the following are true? (Choose 2)
A. Data can be lost when converting from simple picklist to multi picklist
B. Data can be lost when converting from autonumber to text
C. Data can be lost when converting from number to currency (assuming that field lengths are identical)
D. Information ca be lost when converting from text area(rich) to text area(long)

45. You want to use an External Data Object Table from Heroku carrying Product Category information. The data needs to be included in Salesforce and searchable. What do you have to do before you can use the connection? (Choose 2)
A. Press "Validate and Sync"
B. Choose "Include in Salesforce searches" option
C. Choose "Include as Index Field"
D. URL - Choose the URL

46. Which is true about social accounts:
A. You can use social accounts data even when you are not logged into the social account.
B. You need a personal social account in order to see social account data
C. You can use social accounts to import data into salesforce
D. Connection to social account is established thru a company wide "named principal"

47. Identify the standard Lightning components. (choose three)
A. List View
B. Rich Text
C. Visualforce Page
D. Reports
E. Dashboards

48. You can create global actions to let users create which of the following records? (choose three)
A. Event (without invitees)
B. Opportunity
C. Question
D. Users
E. Chatter Posts
F. Products

49. When a user creates a record by using an object-specific create action, what feed item for that record appears?
A. In the Chatter feed of the user who created the record
B. As the first entry in the feed for the new record
C. In the feed for the record on which the new record was created
D. In the user profile feed for all users who can view the record
E. In the Chatter feed of teh first user who follows the record on which the record was created

50. You have created a workflow rule to send an email in your configuration sandbox. For some reason its not working, what should you double check? (Choose 2)
A. You have the correct email address
B. HTML does not work in sandbox, make sure your email has no HTML
C. Check the deliverability settings
D. Look at the system audit trail

51. Oxyteam has a custom object that has a N:M relationship with QuoteLineItem carrying price and discount information. In order to compute the total amounts and product costs per Quote using Rollup Summary fields, what field type do they need to use?
A. Junction
B. Master-Detail
C. Lookup
D. Crossobject