Hey guys, today in this post we are going to learn about how to create a record in Contact Object and Redirect to detail page simply Using with ‘@salesforce/schema/Contact‘ in Salesforce Lightning Web Component (LWC)
Files we used in this post example:-
insertContactRecordLwc.html | Lightning Web Component HTML | Templae HTML file used to write HTML element for build user interface. |
insertContactRecordLwc.js |
Lightning Web Component JavaScript | It is hold click function and business logic to save input field value into database. |
insertContactRecordLwc.js-meta.xml |
XML Meta | It is used for where this lightning web component should be exposed. |
Live Demo
You can download file directly from github by Click Here.
Other related post that would you like to learn in Salesforce
Step 1:- Create Lightning Web Component : insertContactRecordLwc.html
SFDX:Lightning Web Component >> New >> insertContactRecordLwc.html
insertContactRecordLwc.html [Lightning Web Component HTML]
<template>
<lightning-card>
<div slot="title">
<h3>
<lightning-icon icon-name="standard:contact" size="small"></lightning-icon> Insert a Contact Record in LWC
</h3>
</div>
<div class="slds-grid slds-wrap">
<div class="slds-p-horizontal--small slds-col slds-size_6-of-12 slds-m-bottom--medium">
<div class="slds-form-element">
<lightning-input label="First Name" value={firstName} onchange={contactChangeVal}></lightning-input>
</div>
</div>
<div class="slds-p-horizontal--small slds-col slds-size_6-of-12 slds-m-bottom--medium">
<div class="slds-form-element">
<lightning-input label="Last Name" value={lastName} onchange={contactChangeVal}></lightning-input>
</div>
</div>
<div class="slds-p-horizontal--small slds-col slds-size_6-of-12 slds-m-bottom--medium">
<div class="slds-form-element">
<lightning-input label="Phone" value={phoneNo} onchange={contactChangeVal}></lightning-input>
</div>
</div>
<div class="slds-p-horizontal--small slds-col slds-size_6-of-12 slds-m-bottom--medium">
<div class="slds-form-element">
<lightning-input label="Email" value={emailId} onchange={contactChangeVal} ></lightning-input>
</div>
</div>
<div class="slds-p-horizontal--small slds-col slds-size_6-of-12 slds-m-bottom--medium">
<div class="slds-form-element">
<lightning-input label="Department" value={departmentVal} onchange={contactChangeVal} ></lightning-input>
</div>
</div>
<div class="slds-p-horizontal--small slds-col slds-size_6-of-12 slds-m-bottom--medium">
<div class="slds-form-element">
<lightning-input label="Description" value={descriptionVal} onchange={contactChangeVal}></lightning-input>
</div>
</div>
</div>
<div slot="footer">
<lightning-button label="Create Contact Record" variant="brand" onclick={insertContactAction}></lightning-button>
</div>
<br/> <br/>
<!--Start RelatedTopics Section-->
<div style="border:1px #ddd solid; padding:10px; background:#eee; margin:40px 0;">
<p data-aura-rendered-by="435:0"><img src="https://www.w3web.net/wp-content/uploads/2021/05/thumbsUpLike.png" width="25" height="25" style="vertical-align:top; margin-right:10px;" data-aura-rendered-by="436:0"><strong data-aura-rendered-by="437:0"><span style="font-size:16px; font-style:italic; display:inline-block; margin-right:5px;">Don't forget to check out:-</span><a href="https://www.w3web.net/" target="_blank" rel="noopener noreferrer" style="text-decoration:none;" data-aura-rendered-by="440:0">An easy way to learn step-by-step online free Salesforce tutorial, To know more Click <span style="color:#ff8000; font-size:18px;" data-aura-rendered-by="442:0">Here..</span></a></strong></p>
<br/><br/>
<p data-aura-rendered-by="435:0"><img src="https://www.w3web.net/wp-content/uploads/2021/07/tickMarkIcon.png" width="25" height="25" style="vertical-align:top; margin-right:10px;" data-aura-rendered-by="436:0"><strong data-aura-rendered-by="437:0"><span style="font-size:17px; font-style:italic; display:inline-block; margin-right:5px; color:rgb(255 128 0);">You May Also Like β</span> </strong></p>
<div style="display:block; overflow:hidden;">
<div style="width: 50%; float:left; display:inline-block">
<ul style="list-style-type: square; font-size: 16px; margin: 0 0 0 54px; padding: 0;">
<li><a href="https://www.w3web.net/lwc-get-set-lightning-checkbox-value/" target="_blank" rel="noopener noreferrer">How to get selected checkbox value in lwc</a></li>
<li><a href="https://www.w3web.net/display-account-related-contacts-in-lwc/" target="_blank" rel="noopener noreferrer">how to display account related contacts based on AccountId in lwc</a></li>
<li><a href="https://www.w3web.net/create-lightning-datatable-row-actions-in-lwc/" target="_blank" rel="noopener noreferrer">how to create lightning datatable row actions in lwc</a></li>
<li><a href="https://www.w3web.net/if-and-else-condition-in-lwc/" target="_blank" rel="noopener noreferrer">how to use if and else condition in lwc</a></li>
<li><a href="https://www.w3web.net/get-selected-radio-button-value-and-checked-default-in-lwc/" target="_blank" rel="noopener noreferrer">how to display selected radio button value in lwc</a></li>
</ul>
</div>
<div style="width: 50%; float:left; display:inline-block">
<ul style="list-style-type: square; font-size: 16px; margin: 0 0 0 54px; padding: 0;">
<li><a href="https://www.w3web.net/display-account-related-contacts-lwc/" target="_blank" rel="noopener noreferrer">display account related contacts based on account name in lwc</a></li>
<li><a href="https://www.w3web.net/create-lightning-datatable-row-actions-in-lwc/" target="_blank" rel="noopener noreferrer">how to insert a record of account Using apex class in LWC</a></li>
<li><a href="https://www.w3web.net/fetch-picklist-values-dynamic-in-lwc/" target="_blank" rel="noopener noreferrer">how to get picklist values dynamically in lwc</a></li>
<li><a href="https://www.w3web.net/edit-save-and-remove-rows-dynamically-in-lightning-component/" target="_blank" rel="noopener noreferrer">how to edit/save row dynamically in lightning component</a></li>
<li><a href="https://www.w3web.net/update-parent-object-from-child/" target="_blank" rel="noopener noreferrer">update parent field from child using apex trigger</a></li>
</ul>
</div>
<div style="clear:both;"></div>
<br/>
<div class="youtubeIcon">
<a href="https://www.youtube.com/channel/UCW62gTen2zniILj9xE6LmOg" target="_blank" rel="noopener noreferrer"><img src="https://www.w3web.net/wp-content/uploads/2021/11/youtubeIcon.png" width="25" height="25" style="vertical-align:top; margin-right:10px;"/> <strong>TechW3web:-</strong> To know more, Use this <span style="color: #ff8000; font-weight: bold;">Link</span> </a>
</div>
</div>
</div>
<!--End RelatedTopics Section-->
</lightning-card>
</template>
Step 2:- Create Lightning Web Component : insertContactRecordLwc.js
SFDX:Lightning Web Component >> New >> insertContactRecordLwc.js
insertContactRecordLwc.js [JavaScript Controller]
import { LightningElement} from 'lwc';
import { createRecord } from 'lightning/uiRecordApi';
import conMainObject from '@salesforce/schema/Contact';
import conFirstName from '@salesforce/schema/Contact.FirstName';
import conLastName from '@salesforce/schema/Contact.LastName';
import conPhone from '@salesforce/schema/Contact.Phone';
import conEmail from '@salesforce/schema/Contact.Email';
import conDepartment from '@salesforce/schema/Contact.Department';
import conDescription from '@salesforce/schema/Contact.Description';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import { NavigationMixin } from 'lightning/navigation';
export default class InsertContactRecordLwc extends NavigationMixin(LightningElement) {
firstName = '';
lastName = '';
phoneNo= '';
emailId='';
departmentVal='';
descriptionVal='';
contactChangeVal(event) {
console.log(event.target.label);
console.log(event.target.value);
if(event.target.label=='First Name'){
this.firstName = event.target.value;
}
if(event.target.label=='Last Name'){
this.lastName = event.target.value;
}
if(event.target.label=='Phone'){
this.phoneNo = event.target.value;
}
if(event.target.label=='Email'){
this.emailId = event.target.value;
}
if(event.target.label=='Department'){
this.departmentVal = event.target.value;
}
if(event.target.label=='Description'){
this.descriptionVal = event.target.value;
}
}
insertContactAction(){
console.log(this.selectedAccountId);
const fields = {};
fields[conFirstName.fieldApiName] = this.firstName;
fields[conLastName.fieldApiName] = this.lastName;
fields[conPhone.fieldApiName] = this.phoneNo;
fields[conEmail.fieldApiName] = this.emailId;
fields[conDepartment.fieldApiName] = this.departmentVal;
fields[conDescription.fieldApiName] = this.descriptionVal;
const recordInput = { apiName: conMainObject.objectApiName, fields };
createRecord(recordInput)
.then(contactobj=> {
this.contactId = contactobj.id;
this.dispatchEvent(
new ShowToastEvent({
title: 'Success',
message: 'Contact record has been created',
variant: 'success',
}),
);
this[NavigationMixin.Navigate]({
type: 'standard__recordPage',
attributes: {
recordId: contactobj.id,
objectApiName: 'Contact',
actionName: 'view'
},
});
})
.catch(error => {
this.dispatchEvent(
new ShowToastEvent({
title: 'Error creating record',
message: error.body.message,
variant: 'error',
}),
);
});
}
}
Step 3:- Create Lightning Web Component : insertContactRecordLwc.js-meta.xml
SFDX:Lightning Web Component >> New >> insertContactRecordLwc.js-meta.xml
insertContactRecordLwc.js-meta.xml [LWC Meta Data XML]
<?xml version="1.0" encoding="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>45.0</apiVersion>
<isExposed>true</isExposed>
<targets>
<target>lightning__AppPage</target>
<target>lightning__RecordPage</target>
<target>lightning__HomePage</target>
</targets>
</LightningComponentBundle>
Further post that would you like to learn in Salesforce
How do you create a new record in LWC?
To create a record using lightning-record-form , leave out the record-id attribute. This example creates a record using import references for the account object and its fields. The form displays a Save button that updates the record, and a Cancel button that reverts changes.
How do I find LWC record ID?
To get the current record ID in LWC, we just need to import the api decorator from lwc module. Then, we have to declare the property recordId with @api decorator. This recordId property will have the record ID of the current record.
How do you update LWC records?
Whenever you want to update a record you can use LDS methods which is updateRecord if the LDS tags are not of any help! It's a method that we need to import from the package lightning/uiRecordApi and invoke it by passing the appropriate config object.
Related Topics | You May Also Like
Our Free Courses β
π Get Free Course β
π Salesforce Administrators π Salesforce Lightning Flow Builder π Salesforce Record Trigger Flow Builder |
π Get Free Course β
π Aura Lightning Framework π Lightning Web Component (LWC) π Rest APIs Integration |