0% found this document useful (0 votes)
56 views31 pages

Salesforce Lease Management System

Sample project
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
56 views31 pages

Salesforce Lease Management System

Sample project
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

PROJECT TITLE

College Name:
College Code:

TEAM ID:
TEAM MEMBERS:

Team LeaderName:

Email:

Team Member1:

Email:

Team Member:

Email:

Team Member:

[Link]
1.1 Project Overview
The Lease Management System is a Salesforce-based application designed to streamline the
processes associated with leasing real estate properties. It handles tenant management, lease
contracts, payments, and communication with automation features such as flows, approval
processes, and email alerts.

1.2 Purpose
The main objective of the project is to enable organizations to efficiently manage properties,
tenants, and lease-related activities. It reduces manual intervention, improves accuracy, and
ensures better compliance and communication.

DEVELOPMENT PHASE
Creating Developer Account:

By using this URL - [Link]


● Created objects: Property, Tenant, Lease, Payment
● Configured fields and relationships
● Developed Lightning App with relevant tabs
● Implemented Flows for monthly rent and payment success

● To create a validation rule to a Lease Object


● Added Apex trigger to restrict multiple tenants per property
● Scheduled monthly reminder emails using Apex class
● Built and tested email templates for leave request, approval, rejection, payment, and
reminders
● Approval Process creation

For Tenant Leaving:

For Check for Vacant:


● Apex Trigger

Create an Apex Trigger


Create an Apex Handler class
● FLOWS
● Schedule class:
Create an Apex Class
Schedule Apex class
FUNCTIONAL AND PERFORMANCE
TESTING
Performance Testing
● Trigger validation by entering duplicate tenant-property records
● Validation Rule checking
● Test flows on payment update

● Approval process validated through email alerts and status updates


RESULTS
Output Screenshots

● Tabs for Property, Tenant, Lease, Payment

● Email alerts

● Request for approve the leave


● Leave approved

● Leave rejected
● Flow runs

● Trigger error messages


● Approval process notifications

ADVANTAGES & DISADVANTAGES


.
CONCLUSION
The Lease Management System successfully streamlines the operations of leasing through a
structured, automated Salesforce application. It improves efficiency, communication, and data
accuracy for both admins and tenants.

APPENDIX
● Source Code: Provided in Apex Classes and Triggers

[Link]:

trigger test on Tenant__c (before insert) { if

([Link] && [Link]){

[Link]([Link]);

} }

[Link]:

public class

testHandler {

public static void

preventInsert(List<

Tenant__c> newlist)

{ Set<Id>

existingPropertyIds

= new Set<Id>()

for (Tenant__c existingTenant : [SELECT Id, Property__c FROM Tenant__c


WHERE Property__c != null]) {

[Link](existingTenant.Property__c;
} for (Tenant__c newTenant :

newlist) {

if (newTenant.Property__c != null &&


[Link](newTenant.Property__c)) { [Link]('A

tenant can have only one property');

[Link]:

global class MonthlyEmailScheduler implements Schedulable {

global void execute(SchedulableContext sc) { Integer

currentDay = [Link]().day(); if (currentDay == 1) {

sendMonthlyEmails();

} public static void

sendMonthlyEmails() { List<Tenant__c>

tenants = [SELECT Id, Email__c FROM

Tenant__c]; for (Tenant__c tenant :

tenants) {

String recipientEmail = tenant.Email__c;


String emailContent = 'I trust this email finds you well. I am writing to remind you
that the monthly rent is due Your timely payment ensures the smooth functioning of our
rental arrangement and helps maintain a positive living environment for all.';

String emailSubject = 'Reminder: Monthly Rent Payment Due';


[Link] email = new

[Link](); [Link](new

String[]{recipientEmail}); [Link](emailSubject);

[Link](emailContent);

[Link](new [Link][]{email});

Common questions

Powered by AI

The integration of an approval process in the Lease Management System streamlines the management of tenant departures by integrating structured workflows that require administrative consent before a tenant can be removed from the system. This ensures all necessary checks and verifications are completed, reduces errors, and maintains a clear record of transactions and communications involved in tenant management .

The Lease Management System application includes functionalities for managing property rentals efficiently. It automates processes such as tenant management, lease contracts, and payments. Key features include flows for automatic rent processing, approval processes for tenant management, email alerts, and an automation feature for monthly payment reminders .

Advantages of implementing the Lease Management System include improved efficiency due to automation of processes like rent payment, tenant management, and communication through email alerts. It minimizes manual errors, enhances data accuracy, and ensures compliance. Disadvantages may involve the initial setup and training required to transition to a new system and potential technical challenges or costs associated with integrating with existing infrastructure .

The system ensures compliance and reduces errors by implementing Apex triggers that prevent multiple tenants from being associated with a single property. This is achieved by checking and blocking insertions that would violate this constraint. Furthermore, validation rules are employed for the Lease object to maintain data integrity. Performance testing includes generating error messages for duplicate tenant-property records to verify the effectiveness of these controls .

Apex triggers and handlers play a crucial role by preventing the insertion of tenant records that would assign multiple tenants to a single property, thus maintaining data integrity. The trigger is programmed to validate new entries against current databases, and the handler class manages potential violations, ensuring that the system enforces the rule of one tenant per property .

Email communication within the Lease Management System is managed through Salesforce's email templates and Apex classes. Reminders for monthly rent payments are automated via an executed schedulable Apex class, which checks the date and dispatches emails on the first day of each month. The system uses Messaging.SingleEmailMessage class to craft and send notifications, ensuring timely reminders and updates to tenants, which streamlines communication .

The Lease Management System leverages Salesforce automation by implementing flows for rent payment processing, which reduces manual entry and risk of errors. It incorporates scheduled Apex classes to automatically send monthly rent reminder emails on the first day of each month. Approval processes are built into the system for managing tenant departures, facilitating workflow efficiency. Additionally, the use of email alerts and template-based communications ensures timely and consistent information dissemination .

The Lease Management System improves data accuracy and compliance by using validation rules and Apex triggers to ensure only consistent and correct data is entered into the system. The automated processes, such as monthly payment flows and tenant approval processes, reduce the potential for human error. Compliance is enhanced by the structured approach to managing leases and tenant data, ensuring that all operations meet predefined rules and standards .

Setting up the Lease Management System involves creating a developer account via Salesforce's platform, configuring property, tenant, lease, and payment objects, developing a Lightning app with appropriate tabs, implementing flows for rent and payment check, creating validation rules, adding Apex triggers to restrict tenant assignments, and setting up automated email reminders through integrated Apex classes .

Performance testing is critical in the development of the Lease Management System to ensure functionality under expected usage conditions. This process tests triggers by attempting duplicate record entries, validates rule checking, and assesses the flows upon payment updates. It helps identify potential bottlenecks and ensures the system performs efficiently and effectively under various load conditions, which is crucial for the system's reliability .

You might also like